2005-09-20 10:12:42

by Pavel Machek

[permalink] [raw]
Subject: 2.6 zaurus: pcmcia now works

Hi!

With great help from Richard Purdie, pcmcia now works on
sl-5500. Thanks! I also updated to 2.6.14-rc1, and it still seems to
work :-).

FYI, my hacks now look like (attached). I'll push changes to linux-z
in few hours.

Pavel
--
if you have sharp zaurus hardware you don't need... you know my address


Attachments:
(No filename) (316.00 B)
delme.gz (30.45 kB)
Download all attachments

2005-09-20 11:19:10

by Russell King

[permalink] [raw]
Subject: Re: 2.6 zaurus: pcmcia now works

On Tue, Sep 20, 2005 at 12:08:23PM +0200, Pavel Machek wrote:
> FYI, my hacks now look like (attached). I'll push changes to linux-z
> in few hours.

Some questions:

@@ -57,8 +57,6 @@ void dump_backtrace_entry(unsigned long
#ifdef CONFIG_KALLSYMS
printk("[<%08lx>] ", where);
print_symbol("(%s) ", where);
- printk("from [<%08lx>] ", from);
- print_symbol("(%s)\n", from);

The "from" address provides good hints about the exact path we got to
the called function. You don't really want to get rid of that because
it makes following backtraces harder. I'm not sure why you've made
the other changes in that file either.

+/* those must never be empty
+ unfortunately they cause problems with older binutils
ASSERT((__proc_info_end - __proc_info_begin), "missing CPU support")
ASSERT((__arch_info_end - __arch_info_begin), "no machine record defined")
+*/

Get a better binutils. 8)

diff --git a/drivers/mfd/mcp-core.c b/drivers/mfd/mcp-core.c
--- a/drivers/mfd/mcp-core.c
+++ b/drivers/mfd/mcp-core.c
@@ -19,6 +19,7 @@
#include <asm/dma.h>
#include <asm/system.h>

+#include <asm/arch/mcp.h>
#include "mcp.h"

#define to_mcp(d) container_of(d, struct mcp, attached_device)

This looks bogus - why is this needed?

@@ -186,7 +192,12 @@ static int mcp_sa11x0_probe(struct devic
*/
Ser4MCSR = -1;
Ser4MCCR1 = data->mccr1;
- Ser4MCCR0 = data->mccr0 | 0x7f7f;
+#if 1
+ if (machine_is_collie())
+ Ser4MCCR0 = MCCR0_ADM | MCCR0_ExtClk;
+ else
+#endif
+ Ser4MCCR0 = data->mccr0 | 0x7f7f;

Ditto.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core

2005-09-20 13:08:47

by Pavel Machek

[permalink] [raw]
Subject: Re: 2.6 zaurus: pcmcia now works

Hi!

> > FYI, my hacks now look like (attached). I'll push changes to linux-z
> > in few hours.
>
> Some questions:
>
> @@ -57,8 +57,6 @@ void dump_backtrace_entry(unsigned long
> #ifdef CONFIG_KALLSYMS
> printk("[<%08lx>] ", where);
> print_symbol("(%s) ", where);
> - printk("from [<%08lx>] ", from);
> - print_symbol("(%s)\n", from);
>
> The "from" address provides good hints about the exact path we got to
> the called function. You don't really want to get rid of that because
> it makes following backtraces harder. I'm not sure why you've made
> the other changes in that file either.

Well, zaurus console is something like 40x20 characters. Normal
backtrace does not fit there, and it has most important info at the
top.


> +/* those must never be empty
> + unfortunately they cause problems with older binutils
> ASSERT((__proc_info_end - __proc_info_begin), "missing CPU support")
> ASSERT((__arch_info_end - __arch_info_begin), "no machine record defined")
> +*/
>
> Get a better binutils. 8)

Yep :-). Those can wait.

> diff --git a/drivers/mfd/mcp-core.c b/drivers/mfd/mcp-core.c
> --- a/drivers/mfd/mcp-core.c
> +++ b/drivers/mfd/mcp-core.c
> @@ -19,6 +19,7 @@
> #include <asm/dma.h>
> #include <asm/system.h>
>
> +#include <asm/arch/mcp.h>
> #include "mcp.h"
>
> #define to_mcp(d) container_of(d, struct mcp, attached_device)
>
> This looks bogus - why is this needed?

Can go, fixed. (Remainings of previous patches).

> @@ -186,7 +192,12 @@ static int mcp_sa11x0_probe(struct devic
> */
> Ser4MCSR = -1;
> Ser4MCCR1 = data->mccr1;
> - Ser4MCCR0 = data->mccr0 | 0x7f7f;
> +#if 1
> + if (machine_is_collie())
> + Ser4MCCR0 = MCCR0_ADM | MCCR0_ExtClk;
> + else
> +#endif
> + Ser4MCCR0 = data->mccr0 | 0x7f7f;
>
> Ditto.

I tried to kill that one before, and it broke boot. I have little idea
how to debug that one...
Pavel
--
Boycott Kodak -- for their patent abuse against Java.