kernel 2.6 pcmcia yenta_socket on Soekris net4511: cards not recognized
linux at dominikbrodowski.net
Sun Nov 19 22:59:14 EST 2006
On Sun, Nov 19, 2006 at 08:18:02PM +0000, Pablo Di Noto wrote:
> ># modprobe pcmcia_core
> ># modprobe pcmcia
> ># modprobe yenta_socket
> >Yenta: CardBus bridge found at 0000:00:09.0 [0000:0000]
> >Yenta: ISA IRQ mask 0x0000, PCI irq 10
> >Socket status: 30000010
> >pccard: PCMCIA card inserted into slot 0
> ># cat /etc/pcmcia/config.opts
> ># default port ranges for x86
> >include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
> >include memory 0xc0000-0xfffff
> >include memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff
> ># modprobe orinoco_cs
> ># pcmcia-socket-startup
You can issue "pcmcia-socket-startup" already before, e.g. after
modprobe'ing yenta_socket. If udev is properly set up and pcmciautils is
built and installed with "STARTUP = true" this should actually happen
> >cs: IO port probe 0xc00-0xcff: clean.
> >cs: IO port probe 0x800-0x8ff: clean.
> >cs: IO port probe 0x100-0x4ff: clean.
> >cs: memory probe 0xa0000000-0xa0ffffff: excluding 0xa0000000-0xa00fffff
> >pcmcia: registering new device pcmcia0.0
> >pcmcia: request for exclusive IRQ could not be fulfilled.
> >pcmcia: the driver needs updating to supported shared IRQ lines.
> ># iwconfig eth2
> >eth2 IEEE 802.11b ESSID:"" Nickname:"Prism I"
> > Mode:Managed Access Point: Not-Associated Bit Rate:11 Mb/s
> > Sensitivity:1/3
> > Retry min limit:8 RTS thr:off Fragment thr:off
> > Encryption key:off
> > Power Management:off
> > Link Quality=0/92 Signal level=-68 dBm Noise level=-122 dBm
> > Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
> > Tx excessive retries:0 Invalid misc:0 Missed beacon:0
> ># pccardctl ls
> >Socket 0 Device 0: [orinoco_cs] (bus ID: 0.0)
> I have been wondering which piece of the new pcmcia stack was in charge
> of doing what "cardmgr -o" did in 2.4, and there it is! I did not know
> it required a default config file tough.
However, once the startup script is executed once, the kernel should handle
the binding of devices to drivers automatically unless the socket module
(yenta_socket in this case) is removed.
> Is this something related to BIOS information missing? Or a particular
> setup in this socket?
It can only work out of the box on
a) certain non x86-architectures
b) systems where the cardbus bridge is not on the root PCI bridge, but
behind a PCI-PCI bridge (e.g. the bus ID noted above
> >Socket 0 Bridge: [yenta_cardbus] (bus ID: 0000:00:09.0)
is not zero in third-last field, e.g.
Socket 0 Bridge: [yenta_cardbus] (bus ID: 0000:02:03.0)
> Thank you very, very much.
> A happy ending for my sunday.
:) I'm glad it works now.
More information about the linux-pcmcia