1.\" $NetBSD: cardbus.4,v 1.30 2007/01/30 13:01:34 tron Exp $ 2.\" 3.\" Copyright (c) 1999-2006 The NetBSD Foundation, Inc. 4.\" All rights reserved. 5.\" 6.\" This code is derived from software contributed to The NetBSD Foundation 7.\" by Lennart Augustsson. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 3. All advertising materials mentioning features or use of this software 18.\" must display the following acknowledgement: 19.\" This product includes software developed by the NetBSD 20.\" Foundation, Inc. and its contributors. 21.\" 4. Neither the name of The NetBSD Foundation nor the names of its 22.\" contributors may be used to endorse or promote products derived 23.\" from this software without specific prior written permission. 24.\" 25.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 26.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 27.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 28.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 29.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35.\" POSSIBILITY OF SUCH DAMAGE. 36.\" 37.Dd January 6, 2007 38.Dt CARDBUS 4 39.Os 40.Sh NAME 41.Nm cardbus , 42.Nm cardslot , 43.Nm cbb 44.Nd CardBus driver 45.Sh SYNOPSIS 46.Cd "cbb* at pci? dev? function ?" 47.Cd "cardslot* at cbb?" 48.Cd "cardbus* at cardslot?" 49.Cd "pcmcia* at cardslot?" 50.Cd "XX* at cardbus? function ?" 51.Sh DESCRIPTION 52.Nx 53provides machine-independent bus support and 54drivers for CardBus devices. 55.Pp 56The 57.Cm cbb 58device represents the CardBus controller. 59Each controller has a number 60of slots, represented by the 61.Cm cardslot 62devices. A slot can have either a CardBus card or a 63.Tn PCMCIA 64card, which are attached with the 65.Cm cardbus 66or 67.Cm pcmcia 68devices, respectively. 69.Sh SUPPORTED DEVICES 70.Nx 71includes the following machine-independent CardBus 72drivers, sorted by function and driver name: 73.Ss Network interfaces 74.Bl -tag -width speaker -offset indent -compact 75.It ath 76Atheros 5210/5211/5212 802.11 77.It atw 78ADMtek ADM8211 (802.11) 79.It ex 803Com 3c575TX and 3c575BTX 81.It fxp 82Intel i8255x 83.It ral 84Ralink Technology RT25x0 (802.11) 85.It rtk 86Realtek 8129/8139 87.It rtw 88Realtek 8180L (802.11) 89.It tlp 90DECchip 21143 91.El 92.Ss Serial interfaces 93.Bl -tag -width speaker -offset indent -compact 94.It com 95Modems and serial cards 96.El 97.Ss SCSI controllers 98.Bl -tag -width speaker -offset indent -compact 99.It adv 100AdvanSys 1200[A,B], 9xx[U,UA] 101.It ahc 102Adaptec ADP-1480 103.It njs 104Workbit NinjaSCSI-32 105.El 106.Ss USB controllers 107.Bl -tag -width speaker -offset indent -compact 108.It ehci 109Enhanced Host Controller (2.0) 110.It ohci 111Open Host Controller 112.It uhci 113Universal Host Controller 114.El 115.Ss IEEE1394 controllers 116.Bl -tag -width speaker -offset indent -compact 117.It fwohci 118OHCI controller 119.El 120.Sh DIAGNOSTICS 121.Nm cbb 122devices may not be properly handled by the system BIOS on i386-family 123systems. 124If, on an i386-family system, the 125.Nm cbb 126driver reports 127.Dl cbb0: NOT USED because of unconfigured interrupt 128then enabling 129.Bl -item -offset indent -compact 130.It 131.Cd options PCI_ADDR_FIXUP 132.It 133.Cd options PCI_BUS_FIXUP 134.It 135.Cd options PCI_INTR_FIXUP 136.El 137or (if ACPI is in use) 138.Bl -item -offset indent -compact 139.It 140.Cd options PCI_INTR_FIXUP_DISABLED 141.El 142in the kernel configuration might be of use. 143.Sh SEE ALSO 144.Xr adv 4 , 145.Xr ahc 4 , 146.Xr ath 4 , 147.Xr atw 4 , 148.Xr com 4 , 149.Xr ehci 4 , 150.Xr ex 4 , 151.Xr fxp 4 , 152.Xr njs 4 , 153.Xr ohci 4 , 154.Xr options 4 , 155.Xr pci 4 , 156.Xr pcmcia 4 , 157.Xr ral 4 , 158.Xr rtk 4 , 159.Xr rtw 4 , 160.Xr tlp 4 , 161.Xr uhci 4 162.Sh HISTORY 163The 164.Nm 165driver appeared in 166.Nx 1.5 . 167.Sh BUGS 168.Ss Memory space conflicts 169.Nx 170maps memory on Cardbus and PCMCIA cards in order to access the cards 171(including reading CIS tuples on PCMCIA cards) 172and access the devices using the 173.Tn RBUS 174abstraction. 175When the mapping does not work, PCMCIA cards are typically ignored on 176insert, and Cardbus cards are recognized but nonfunctional. 177On i386, the kernel has a heuristic to choose a memory address for 178mapping, defaulting to 1 GB, but choosing 0.5 GB on machines with less 179than 192 MB RAM and 2 GB on machines with more than 1 GB of RAM. 180The intent is to use an address that is larger than available RAM, but 181low enough to work; some systems seem to have trouble with 182addresses requiring more than 20 address lines. 183On i386, the following kernel configuration line disables the 184heuristics and forces Cardbus 185memory space to be mapped at 512M; this value makes Cardbus support 186(including PCMCIA attachment under a cbb) work on some notebook 187models, including the IBM Thinkpad 600E (2645-4AU) and the Compaq 188ARMADA M700: 189.Pp 190.Cd options RBUS_MIN_START="0x20000000" 191