NAME
pcmcia
-
introduction to
PCMCIA
(PC Card)
support
SYNOPSIS
pcmcia* at pcic? controller ? socket ?
pcmcia* at tcic? controller ? socket ?
pcmcia* at cardslot?
options PCMCIAVERBOSE
amiga
pcmcia* at pccard0
hpcmips
pcmcia* at it8368e? controller ? socket ?
pcmcia* at plumpcmcia? controller ? socket ?
hpcsh
pcmcia* at hd64461pcmcia? controller ? socket ?
sh3
pcmcia* at shpcic? controller ? socket ?
sparc
pcmcia* at nell?
DESCRIPTION
NetBSD
provides machine-independent bus support and drivers for
PCMCIA
(Personal Computer Memory Card International Association)
a.k.a.
PC Card,
CardBus
devices.
HARDWARE
NetBSD
includes the following machine-independent
PCMCIA
drivers, sorted by function and driver name:
Serial interfaces and modems
- com
-
8250/16450/16550-compatible PCMCIA serial cards and modems.
Network interfaces
- an
-
Aironet 4500/4800 and Cisco 340 series 802.11 controller.
- awi
-
802.11 controller based on the AMD PCnetMobile chipset.
- cnw
-
Netwave AirSurfer Wireless LAN interface.
- ep
-
3Com 3c589 EtherLink III Ethernet card.
- mbe
-
Ethernet card based on the Fujitsu MB86960A/MB86965A chipset.
- mhzc
-
Megahertz Ethernet/Modem combo cards
- ne
-
NE2000 compatible cards.
- ray
-
Raytheon Raylink and WebGear Aviator2.4 802.11 controller.
- sm
-
Megahertz Ethernet card.
- wi
-
Lucent WaveLAN/IEEE and PRISM-II based 802.11 controller.
- xi
-
Xircom CreditCard Ethernet
SCSI controllers
- aic
-
Adaptec APA-1460
SCSI
controller card.
- esp
-
NCR 53C9x, Emulex ESP406, and Qlogic FAS408
SCSI
controllers.
- spc
-
Fujitsu MB87030/MB89352
SCSI
controllers.
IDE controllers
- wdc
-
Digital Hinote Ultra Mobile Media Adapter
Audio devices
- esl
-
Eiger Labs ESS1688 AudioDrive.
Bluetooth devices
- bt3c
-
3Com 3CRWB6096 Bluetooth PC Card driver.
- btbc
-
AnyCom Bluetooth BlueCard driver.
USB Controller
- slhci
-
Cypress/ScanLogic SL811HS USB Host Controller driver.
SEE ALSO
aic(4),
an(4),
awi(4),
bt3c(4),
btbc(4),
cardbus(4),
cnw(4),
com(4),
ep(4),
esl(4),
esp(4),
intro(4),
isa(4),
mbe(4),
mhzc(4),
ne(4),
options(4),
pcic(4),
pcmcom(4),
ray(4),
slhci(4),
sm(4),
spc(4),
tcic(4),
wi(4),
xi(4)
http://www.pcmcia.org/
HISTORY
The
pcmcia
driver appeared in
NetBSD1.3.
BUGS
IO space conflicts
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
on 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
Interrupt conflicts
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.