2 .\" Copyright (c) 2001 M. Warner Losh
3 .\" All rights reserved.
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\" notice, this list of conditions and the following disclaimer.
10 .\" 2. The name of the author may not be used to endorse or promote products
11 .\" derived from this software without specific prior written permission.
13 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16 .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 .Nd PC Card bridge driver
39 driver controls the PC Card subsystem.
44 devices attached to either
51 driver does not support the so-called TCIC controllers made by
53 Nor does it support the MECIA chipset found in some early PC98
55 The mecia driver now supports that bridge.
59 devices, or true clones, are supported in the current code.
61 .Bl -tag -width "Intel i82365SL Step A" -compact
62 .It Intel i82365SL Step A
63 .It Intel i82365SL Step B
64 .It Intel i82365SL Step C
66 original 16-bit PC Card controller.
69 last version of this device.
70 3.3V support was added.
72 An older VLSI part with some issues on some machines.
73 .It Cirrus Logic PD-6710
74 .It Cirrus Logic PD-6720
75 .It Cirrus Logic PD-6722
76 Cirrus Logic's pcic controller.
77 Compatible with the i82365SL Step C with the addition of a different
81 Ricoh's PC Card bridge chips.
82 These are compatible with the i82365SL Step C, but with yet another
83 different 3.3V control.
86 Compatible with i82365SL Step C.
89 Like the earlier Vadem models, but with Vadem's own, incompatible, 3.3V
93 clone of the original i82365SL part, with its own ID register value.
96 A strange clone of i82365SL.
97 This part has many restrictions not found in the i82365SL, plus some
98 strange power control.
99 It has not been tested in ages, but is believed to work.
100 Its use is believed to be confined to model of ISA card, available
104 Many other vendors made parts in this arena, but most of them were
105 compatible with one of the above chipsets.
107 The following PCI cardbus and pcmcia bridges are supported:
109 .Bl -tag -width "Intel i82365SL Step A" -compact
110 .It Cirrus Logic PD6729
111 .It Cirrus Logic PD6730
112 These chips require special configuration when they are on an add-in
114 .It Cirrus Logic PD6832
115 .It Cirrus Logic PD6833
125 O2 Micro chips may be poorly supported because the author does not
126 have good access to machines with one of these bridges in it.
154 .Bl -tag -width ".Pa /dev/card0" -compact
156 Character device for the
160 .Sh MODES OF OPERATION
161 The ISA device supports routing ISA interrupts only.
162 You cannot share ISA interrupts.
163 Every interrupt must be unique.
165 The PCI device supports routing ISA or PCI interrupts.
166 PCI interrupts are sharable.
167 ISA interrupts are not sharable.
168 PCI interrupts should be used unless your machine has a specific problem using
171 PCI interrupt routing is the default for PCI devices.
172 Some older laptops require ISA interrupt routing to work properly.
173 To enable ISA interrupt routing, you must set the tunable
174 .Li hw.pcic.intr_path=1
176 .Pa /boot/loader.conf .
177 For the present, unless you have a one slot machine, you should set
179 to force polling mode.
180 Two slot machines have minor issues with using an ISA interrupt for the
183 .Bl -tag -width indent
184 .It Va hw.pcic.ignore_function_1
185 Needed for some, improperly manufactured PCI cards made by Orinoco.
186 It disables function 1 completely.
187 Set to 0 to enable function 1.
188 Set to 1 to disable function 1.
189 This tunable generally should not be needed on laptops.
191 .It Va hw.pcic.init_routing
192 Some machines can tolerate interrupt routing selection at the cardbus
194 Others fail when you mess with these registers.
195 Set to 1 to force the chipset to route via parallel PCI interrupts (as
196 well as a few other little things).
197 Setting to 0, the default, forces the code to leave these registers as the
199 Most laptops will not need to set this tunable.
200 Many PCI cards with cardbus chips on them are believed to need this
203 .It Va hw.pcic.intr_path
204 Should PCI pcic devices route interrupts via ISA or PCI.
205 A value of 1 means route via ISA.
206 A value of 2 means route via PCI.
207 This is ignored for the ISA device.
208 Many older laptops do not have PCI BIOS implementations that
210 can use to route interrupts properly.
211 These laptops may need to set this to 1 and
217 Overrides the IRQ to use for ISA interrupt routing of the CSC or
218 management interrupt.
219 If you are using the ISA device, you can set this tunable, or use the
221 clause in config file.
222 If you are using a PCI device in ISA interrupt mode (see
223 .Va hw.pcic.intr_path ) ,
224 then you must set the interrupt with this
225 sysctl, or polling mode will be used.
226 Due to limitations in the tunable system, only one interrupt can be selected
228 Systems with multiple PCI bridges that need to use ISA routing are encouraged
229 to use polling mode on each of the cards.
231 .It Va hw.pcic.ignore_pci
233 Set to 1 to completely ignore the cardbus bridge.
234 This may help some old laptops work.
235 Setting to 1 on newer laptops will almost certainly fail.
238 Too long to detail in the man page.
241 Some are the fault of the standard.
242 Some are the fault of bad standard compliance.
243 Some are Warner's fault.
244 These drivers are known as OLDCARD in other parts of the documentation.