PCMCIA(4) | Device Drivers Manual | PCMCIA(4) |
pcmcia
—
introduction to PCMCIA (PC Card) support
pcmcia* at pcic? controller ? socket ?
pcmcia* at tcic? controller ? socket ?
pcmcia* at cardslot?
options PCMCIAVERBOSE
pcmcia* at pccard0
pcmcia* at it8368e? controller ? socket ?
pcmcia* at plumpcmcia? controller ? socket ?
pcmcia* at hd64461pcmcia? controller ? socket
?
pcmcia* at shpcic? controller ? socket
?
pcmcia* at nell?
NetBSD provides machine-independent bus support and drivers for PCMCIA (Personal Computer Memory Card International Association) a.k.a. PC Card, CardBus devices.
NetBSD includes the following machine-independent PCMCIA drivers, sorted by function and driver name:
cardbus(4), intro(4), isa(4), options(4), pcic(4), tcic(4), pcmcia(9)
The pcmcia
driver appeared in
NetBSD 1.3.
NetBSD probes the PCMCIA IO bus width and uses that information to decide where to map PCMCIA IO space. For 10-bit wide cards, 0x300-0x3ff is used. For 12-bit wide cards, 0x400-0x4ff is used.
Neither choice is perfect. In the 12-bit case, 0x400 appears to
work in substantially more devices than 0x300. In the event that PCMCIA
devices are mapped in 0x400-0x4ff and appear to be nonfunctional, remapping
to 0x300-0x3ff may be appropriate; consult options
PCIC_ISA_ALLOC_IOBASE
and options
PCIC_ISA_ALLOC_IOSIZE
in
options(4). Example:
# Avoid PCMCIA bus space conflicts with the default IO space # allocation on 12-bit wide busses (base 0x300 size 0xff). options PCIC_ISA_ALLOC_IOBASE=0x300 options PCIC_ISA_ALLOC_IOSIZE=0x0ff
NetBSD attempts to probe for available
interrupts to assign to PCMCIA devices. In some cases, it is not possible to
detect all interrupts in use; in such cases, use of options
PCIC_ISA_INTR_ALLOC_MASK
may be necessary. See
options(4).
During autoconfiguration, if a message is displayed saying that
your card is "not configured" it indicates that there isn't
support for your card compiled into the kernel. To fix this problem, it may
simply be a matter of adding the manufacturer and product IDs to the PCMCIA
database or adding a front-end attachment to an existing driver. In the
latter case, it is normally always necessary to get a dump of the CIS table
from the card. You can do this by adding options
PCMCIACISDEBUG
and options PCMCIADEBUG
into
your kernel config file. Additionally, you will have to patch the kernel to
enable run-time debugging. This can be done in the source by changing the
variables pcmcia_debug and
pcmciacis_debug to 0xff. Alternatively, you can patch
the same variables at run-time using
ddb(4). For most drivers you
should also consider enabling any driver-specific debugging options.
January 3, 2009 | NetBSD 10.99 |