linux-mips
[Top] [All Lists]

Re: Problems with PCMCIA on AMD dbau1100

To: Pete Popov <ppopov@embeddedalley.com>
Subject: Re: Problems with PCMCIA on AMD dbau1100
From: Josh Green <jgreen@users.sourceforge.net>
Date: Tue, 21 Dec 2004 15:22:50 -0800
Cc: linux-mips@linux-mips.org
In-reply-to: <41C8536E.5060507@embeddedalley.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <1103628665.22113.16.camel@SillyPuddy.localdomain> <41C8536E.5060507@embeddedalley.com>
Sender: linux-mips-bounce@linux-mips.org
Some additional info..

On Tue, 2004-12-21 at 08:46 -0800, Pete Popov wrote:
> If all the config files are setup properly, you should start pcmcia 
> with /etc/rc.d/init.d/pcmcia start. That will also run the cardmgr. 
> Without the cardmgr, nothing will happen. If you're loading the 
> modules manuall, modprobe au1x00_ss, then ds.o, the execute cardmgr 
> and at that point the card should be detected.
> 

Looks like pcmcia.ko is probably what should be used instead of ds.o,
although I'm not sure why this policy is different than from before.
Here is the output after loading these 3 modules and running the pcmcia
init script:

# insmod pcmcia_core.ko
# insmod au1x00_ss.ko
# insmod pcmcia.ko

# /etc/init.d/pcmcia start
Starting PCMCIA services: cardmgr[836]: watching 2 sockets
done.

# lsmod
Module                  Size  Used by    Not tainted
pcmcia 24208 4 - Live 0xc0025000
au1x00_ss 12192 0 - Live 0xc0005000
pcmcia_core 60912 2 pcmcia,au1x00_ss, Live 0xc0015000

# cardctl status
Socket 0:
  no card
Socket 1:
  no card


There is a card in the second slot (Netgear 32 bit CardBus WG511
wireless card which uses prism54 driver).  I don't have the driver
compiled for it but I was expecting it to at least be identified.

> 
> > One thing to note is that I get a few warnings during the PCMCIA build:
> > 
> >   CC [M]  drivers/pcmcia/au1000_generic.o
> > drivers/pcmcia/au1000_generic.c: In function
> > `au1x00_pcmcia_socket_probe':
> > drivers/pcmcia/au1000_generic.c:425: warning: integer constant is too
> > large for "long" type
> > drivers/pcmcia/au1000_generic.c:433: warning: integer constant is too
> > large for "long" type
> > 
> > The first warning is related to the following code (second is similar
> > but for socket 1):
> > 
> >     skt->virt_io = (void *)
> >             ((u32)ioremap((ioaddr_t)AU1X_SOCK0_IO, 0x1000) -
> >             (u32)mips_io_port_base);
> > 
> > 
> > AU1X_SOCK0_IO is defined as 0xF00000000 which is a 36 bit number, not
> > sure if that will cause a problem or not (since ioremap is using phys_t
> > which is 32 bit). 
> 
> phys_t is 64 bit if 64BIT is enabled. Make sure you have the 36bit 
> I/O support enabled. CONFIG_64BIT_PHYS_ADDR has to be defined.
> 

I discovered that those warnings are generated due to the constants
themselves being truncated (they should be followed by LL, like
0xF00000000LL).  Still no luck though with detecting my card.  Cheers.
        Josh Green

Attachment: signature.asc
Description: This is a digitally signed message part

<Prev in Thread] Current Thread [Next in Thread>