1.\" $NetBSD: pcmcia.4,v 1.37 2012/03/13 19:25:41 njoly Exp $ 2.\" 3.\" Copyright (c) 1999, 2002 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.\" 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 28.\" POSSIBILITY OF SUCH DAMAGE. 29.\" 30.Dd January 3, 2009 31.Dt PCMCIA 4 32.Os 33.Sh NAME 34.Nm pcmcia 35.Nd 36introduction to 37.Tn PCMCIA 38.Pq Tn "PC Card" 39support 40.Sh SYNOPSIS 41.Cd "pcmcia* at pcic? controller ? socket ?" 42.Cd "pcmcia* at tcic? controller ? socket ?" 43.Cd "pcmcia* at cardslot?" 44.Pp 45.Cd options PCMCIAVERBOSE 46.Ss amiga 47.Cd "pcmcia* at pccard0" 48.Ss hpcmips 49.Cd "pcmcia* at it8368e? controller ? socket ?" 50.Cd "pcmcia* at plumpcmcia? controller ? socket ?" 51.Ss hpcsh 52.Cd "pcmcia* at hd64461pcmcia? controller ? socket ?" 53.Ss sh3 54.Cd "pcmcia* at shpcic? controller ? socket ?" 55.Ss sparc 56.Cd "pcmcia* at nell?" 57.Sh DESCRIPTION 58.Nx 59provides machine-independent bus support and drivers for 60.Tn PCMCIA 61.Pq Personal Computer Memory Card International Association 62a.k.a. 63.Tn "PC Card" , 64.Tn CardBus 65devices. 66.Sh HARDWARE 67.Nx 68includes the following machine-independent 69.Tn PCMCIA 70drivers, sorted by function and driver name: 71.Ss Serial interfaces and modems 72.Bl -tag -width speaker -offset indent 73.It com 748250/16450/16550-compatible PCMCIA serial cards and modems. 75.El 76.Ss Network interfaces 77.Bl -tag -width speaker -offset indent 78.It an 79Aironet 4500/4800 and Cisco 340 series 802.11 controller. 80.It awi 81802.11 controller based on the AMD PCnetMobile chipset. 82.It cnw 83Netwave AirSurfer Wireless LAN interface. 84.It ep 853Com 3c589 EtherLink III Ethernet card. 86.It mbe 87Ethernet card based on the Fujitsu MB86960A/MB86965A chipset. 88.It mhzc 89Megahertz Ethernet/Modem combo cards 90.It ne 91NE2000 compatible cards. 92.It ray 93Raytheon Raylink and WebGear Aviator2.4 802.11 controller. 94.It sm 95Megahertz Ethernet card. 96.It wi 97Lucent WaveLAN/IEEE and PRISM-II based 802.11 controller. 98.It xi 99Xircom CreditCard Ethernet 100.El 101.Ss SCSI controllers 102.Bl -tag -width speaker -offset indent 103.It aic 104Adaptec APA-1460 105.Tn SCSI 106controller card. 107.It esp 108NCR 53C9x, Emulex ESP406, and Qlogic FAS408 109.Tn SCSI 110controllers. 111.It spc 112Fujitsu MB87030/MB89352 113.Tn SCSI 114controllers. 115.El 116.Ss IDE controllers 117.Bl -tag -width speaker -offset indent 118.It wdc 119Digital Hinote Ultra Mobile Media Adapter 120.El 121.Ss Bluetooth devices 122.Bl -tag -width speaker -offset indent 123.It bt3c 1243Com 3CRWB6096 Bluetooth PC Card driver. 125.It btbc 126AnyCom Bluetooth BlueCard driver. 127.El 128.Ss USB Controller 129.Bl -tag -width speaker -offset indent 130.It slhci 131Cypress/ScanLogic SL811HS USB Host Controller driver. 132.El 133.Sh SEE ALSO 134.Xr aic 4 , 135.Xr an 4 , 136.Xr awi 4 , 137.Xr bt3c 4 , 138.Xr btbc 4 , 139.Xr cardbus 4 , 140.Xr cnw 4 , 141.Xr com 4 , 142.Xr ep 4 , 143.Xr esp 4 , 144.Xr intro 4 , 145.Xr isa 4 , 146.Xr mbe 4 , 147.Xr mhzc 4 , 148.Xr ne 4 , 149.Xr options 4 , 150.Xr pcic 4 , 151.Xr pcmcom 4 , 152.Xr ray 4 , 153.Xr slhci 4 , 154.Xr sm 4 , 155.Xr spc 4 , 156.Xr tcic 4 , 157.Xr wi 4 , 158.Xr xi 4 159.Sh HISTORY 160The 161.Nm 162driver appeared in 163.Nx 1.3 . 164.Sh BUGS 165.Ss IO space conflicts 166.Nx 167probes the 168.Tn PCMCIA 169IO bus width and uses that information to decide 170where to map 171.Tn PCMCIA 172IO space. 173For 10-bit wide cards, 0x300-0x3ff is used. 174For 12-bit wide cards, 0x400-0x4ff is used. 175.Pp 176Neither choice is perfect. 177In the 12-bit case, 0x400 appears to work 178in substantially more devices than 0x300. 179In the event that 180.Tn PCMCIA 181devices are mapped in 0x400-0x4ff and appear to be nonfunctional, 182remapping to 0x300-0x3ff may be appropriate; consult 183.Cd options PCIC_ISA_ALLOC_IOBASE 184and 185.Cd options PCIC_ISA_ALLOC_IOSIZE 186in 187.Xr options 4 . 188Example: 189.Bd -literal -offset indent 190# Avoid PCMCIA bus space conflicts with the default IO space 191# allocation on 12-bit wide busses (base 0x300 size 0xff). 192options PCIC_ISA_ALLOC_IOBASE=0x300 193options PCIC_ISA_ALLOC_IOSIZE=0x0ff 194.Ed 195.Ss Interrupt conflicts 196.Nx 197attempts to probe for available interrupts to assign to 198.Tn PCMCIA 199devices. 200In some cases, it is not possible to detect 201all interrupts in use; in such cases, use of 202.Cd options PCIC_ISA_INTR_ALLOC_MASK 203may be necessary. 204See 205.Xr options 4 . 206.Ss Unconfigured devices 207During autoconfiguration, if a message is displayed saying that your card 208is "not configured" it indicates that there isn't support for your card 209compiled into the kernel. 210To fix this problem, it may simply be a matter 211of adding the manufacturer and product IDs to the 212.Tn PCMCIA 213database or adding a front-end attachment to an existing driver. 214In the latter case, it is normally always necessary to get a dump 215of the CIS table from the card. 216You can do this by adding 217.Cd options PCMCIACISDEBUG 218and 219.Cd options PCMCIADEBUG 220into your kernel config file. 221Additionally, you will have to patch the kernel to enable run-time 222debugging. 223This can be done in the source by changing the variables 224.Va pcmcia_debug 225and 226.Va pcmciacis_debug 227to 0xff. 228Alternatively, you can patch the same variables at run-time using 229.Xr ddb 4 . 230For most drivers you should also consider enabling any driver-specific 231debugging options. 232