Subject: kern/17502: carbus needs offset to pcmcia iomem base address
To: None <firstname.lastname@example.org>
From: Brett Lymn (Master of the Siren) <email@example.com>
Date: 07/07/2002 21:31:23
>Synopsis: carbus needs offset to pcmcia iomem base address
>Arrival-Date: Sun Jul 07 05:02:00 PDT 2002
>Originator: Brett Lymn (Master of the Siren)
>Release: NetBSD 1.6A
System: NetBSD siren 1.6A NetBSD 1.6A (SIREN) #21: Mon Jul 1 22:33:09 CST 2002 toor@siren:/usr/src/sys/arch/i386/compile/SIREN i386
I recently bought a Ricoh 5C476 based PCI-Cardbus bridge and found
that when I tried to run my wavelan (wi) in the bridge it would not work.
The error was "could not connect to controller" and it failed to read the
ethernet address from the card. This is a classic symptom of the wavelan
card clashing with some other hardware in the machine. I could get my
wavelan to work by editing syssrc/dev/pci/pccbb.c and hard coding the
start variable in pccbb_pcmcia_io_alloc to be 0x500. This is not very
elegant and we really should have a way of modifying the io memory based
address that is something akin to the PCIC_ISA_ALLOC_IOBASE and
PCIC_ISA_ALLOC_IOSIZE that are available for ISA to PCMCIA bridges.
This may or may not be difficult depending on your hardware setup
but for me simply trying to use a wavelan wireless network card in the
PCI-PCMCIA bridge on my desktop machine fails to work.
As described above, hardcoding the start variable in
pccbb_pcmcia_io_alloc will work around the problem. I don't know enough
about the pcmcia probe/attach to suggest a better solution.