Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


CARDBUS(4)                   Device Drivers Manual                  CARDBUS(4)

NAME
     cardbus, cardslot, cbb - CardBus driver

SYNOPSIS
     cbb*      at pci? dev? function ?
     cardslot* at cbb?
     cardbus*  at cardslot?
     pcmcia*   at cardslot?
     XX*       at cardbus? function ?

DESCRIPTION
     NetBSD provides machine-independent bus support and drivers for CardBus
     devices.

     The cbb device represents the CardBus controller.  Each controller has a
     number of slots, represented by the cardslot devices.  A slot can have
     either a CardBus card or a PCMCIA card, which are attached with the
     cardbus or pcmcia devices, respectively.

SUPPORTED DEVICES
     NetBSD includes the following machine-independent CardBus drivers, sorted
     by function and driver name:

   Network interfaces
           ath(4)      Atheros 5210/5211/5212 802.11
           atw(4)      ADMtek ADM8211 (802.11)
           bwi(4)      Broadcom BCM430x/4318 (802.11)
           ex(4)       3Com 3c575TX and 3c575BTX
           fxp(4)      Intel i8255x
           ral(4)      Ralink Technology RT25x0 (802.11)
           re(4)       RealTek 8139C+/8169/8169S/8110S
           rtk(4)      Realtek 8129/8139
           rtw(4)      Realtek 8180L (802.11)
           tlp(4)      DECchip 21143

   Serial interfaces
           com(4)      Modems and serial cards

   SCSI controllers
           adv(4)      AdvanSys 1200[A,B], 9xx[U,UA]
           ahc(4)      Adaptec ADP-1480
           njs(4)      Workbit NinjaSCSI-32

   USB controllers
           ehci(4)     Enhanced Host Controller (2.0)
           ohci(4)     Open Host Controller
           uhci(4)     Universal Host Controller

   IEEE1394 controllers
           fwohci(4)   OHCI controller

   SD/MMC/SDIO controllers
           sdhc(4)     SD Host Controller

   Disk and tape controllers
           njata(4)    Workbit NinjaATA-32
           siisata(4)  Silicon Image SATA-II controllers

DIAGNOSTICS
     cbb devices may not be properly handled by the system BIOS on i386-family
     systems.  If, on an i386-family system, the cbb driver reports
           cbb0: NOT USED because of unconfigured interrupt
     then enabling
           options PCI_ADDR_FIXUP
           options PCI_BUS_FIXUP
           options PCI_INTR_FIXUP
     or (if ACPI is in use)
           options PCI_INTR_FIXUP_DISABLED
     in the kernel configuration might be of use.

SEE ALSO
     options(4), pci(4), pcmcia(4), cardbus(9)

HISTORY
     The cardbus driver appeared in NetBSD 1.5.

BUGS
   Memory space conflicts
     NetBSD maps memory on Cardbus (and therefore PCMCIA cards behind Cardbus)
     in order to access the cards (including reading CIS tuples on PCMCIA
     cards) and access the devices using the RBUS abstraction.  When the
     mapping does not work, PCMCIA cards are typically ignored on insert, and
     Cardbus cards are recognized but nonfunctional.  On i386, the kernel has
     a heuristic to choose a memory address for mapping, defaulting to 1 GB,
     but choosing 0.5 GB on machines with less than 192 MB RAM and 2 GB on
     machines with more than 1 GB of RAM.  The intent is to use an address
     that is larger than available RAM, but low enough to work; some systems
     seem to have trouble with addresses requiring more than 20 address lines.
     On i386, the following kernel configuration line disables the heuristics
     and forces Cardbus memory space to be mapped at 512M; this value makes
     Cardbus support (including PCMCIA attachment under a cbb) work on some
     notebook models, including the IBM Thinkpad 600E (2645-4AU) and the
     Compaq ARMADA M700:

     options RBUS_MIN_START="0x20000000"

   PCMCIA addressing choice
     By default, on i386 and amd64, the kernel uses RBUS_IO_BASE as 0x4000 and
     RBUS_IO_SIZE as 0x2000.  On some machines, this fails, due to a
     requirement that these addresses fit within 12 bits.  The following
     kernel options have been reported as helpful:

     options RBUS_IO_BASE="0xa00"

     options RBUS_IO_SIZE="0x00ff"

NetBSD 10.99                   December 31, 2014                  NetBSD 10.99