Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
[linux-2.6-block.git] / drivers / pcmcia / Kconfig
1 #
2 # PCCARD (PCMCIA/CardBus) bus subsystem configuration
3 #
4
5 menuconfig PCCARD
6         tristate "PCCard (PCMCIA/CardBus) support"
7         depends on HOTPLUG
8         ---help---
9           Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
10           computer.  These are credit-card size devices such as network cards,
11           modems or hard drives often used with laptops computers.  There are
12           actually two varieties of these cards: 16 bit PCMCIA and 32 bit
13           CardBus cards.
14
15           To compile this driver as modules, choose M here: the
16           module will be called pcmcia_core.
17
18 if PCCARD
19
20 config PCMCIA
21         tristate "16-bit PCMCIA support"
22         select CRC32
23         default y
24         ---help---
25            This option enables support for 16-bit PCMCIA cards. Most older
26            PC-cards are such 16-bit PCMCIA cards, so unless you know you're
27            only using 32-bit CardBus cards, say Y or M here.
28
29            To use 16-bit PCMCIA cards, you will need supporting software in
30            most cases. (see the file <file:Documentation/Changes> for
31            location and details).
32
33            To compile this driver as modules, choose M here: the
34            module will be called pcmcia.
35
36            If unsure, say Y.
37
38 config PCMCIA_LOAD_CIS
39         bool "Load CIS updates from userspace (EXPERIMENTAL)"
40         depends on PCMCIA && EXPERIMENTAL
41         select FW_LOADER
42         default y
43         help
44           Some PCMCIA cards require an updated Card Information Structure (CIS)
45           to be loaded from userspace to work correctly. If you say Y here,
46           and your userspace is arranged correctly, this will be loaded
47           automatically using the in-kernel firmware loader and the hotplug
48           subsystem, instead of relying on cardmgr from pcmcia-cs to do so.
49
50           If unsure, say Y.
51
52 config PCMCIA_IOCTL
53         bool "PCMCIA control ioctl (obsolete)"
54         depends on PCMCIA && ARM && !SMP && !PREEMPT
55         default y
56         help
57           If you say Y here, the deprecated ioctl interface to the PCMCIA
58           subsystem will be built. It is needed by the deprecated pcmcia-cs
59           tools (cardmgr, cardctl) to function properly.
60
61           You should use the new pcmciautils package instead (see
62           <file:Documentation/Changes> for location and details).
63
64           This config option will most likely be removed from kernel 2.6.35,
65           the associated code from kernel 2.6.36.
66
67           As the PCMCIA ioctl is not locking safe, it depends on !SMP and
68           !PREEMPT.
69
70           If unsure, say N.
71
72 config CARDBUS
73         bool "32-bit CardBus support"
74         depends on PCI
75         default y
76         ---help---
77           CardBus is a bus mastering architecture for PC-cards, which allows
78           for 32 bit PC-cards (the original PCMCIA standard specifies only
79           a 16 bit wide bus). Many newer PC-cards are actually CardBus cards.
80
81           To use 32 bit PC-cards, you also need a CardBus compatible host
82           bridge. Virtually all modern PCMCIA bridges do this, and most of
83           them are "yenta-compatible", so say Y or M there, too.
84
85           If unsure, say Y.
86
87 comment "PC-card bridges"
88
89 config YENTA
90         tristate "CardBus yenta-compatible bridge support"
91         depends on PCI
92         select CARDBUS if !EMBEDDED
93         select PCCARD_NONSTATIC if PCMCIA != n
94         ---help---
95           This option enables support for CardBus host bridges.  Virtually
96           all modern PCMCIA bridges are CardBus compatible.  A "bridge" is
97           the hardware inside your computer that PCMCIA cards are plugged
98           into.
99
100           To compile this driver as modules, choose M here: the
101           module will be called yenta_socket.
102
103           If unsure, say Y.
104
105 config YENTA_O2
106         default y
107         bool "Special initialization for O2Micro bridges" if EMBEDDED
108         depends on YENTA
109
110 config YENTA_RICOH
111         default y
112         bool "Special initialization for Ricoh bridges" if EMBEDDED
113         depends on YENTA
114
115 config YENTA_TI
116         default y
117         bool "Special initialization for TI and EnE bridges" if EMBEDDED
118         depends on YENTA
119
120 config YENTA_ENE_TUNE
121         default y
122         bool "Auto-tune EnE bridges for CB cards" if EMBEDDED
123         depends on YENTA_TI && CARDBUS
124
125 config YENTA_TOSHIBA
126         default y
127         bool "Special initialization for Toshiba ToPIC bridges" if EMBEDDED
128         depends on YENTA
129
130 config PD6729
131         tristate "Cirrus PD6729 compatible bridge support"
132         depends on PCMCIA && PCI
133         select PCCARD_NONSTATIC
134         help
135           This provides support for the Cirrus PD6729 PCI-to-PCMCIA bridge
136           device, found in some older laptops and PCMCIA card readers.
137
138 config I82092
139         tristate "i82092 compatible bridge support"
140         depends on PCMCIA && PCI
141         select PCCARD_NONSTATIC
142         help
143           This provides support for the Intel I82092AA PCI-to-PCMCIA bridge device,
144           found in some older laptops and more commonly in evaluation boards for the
145           chip.
146
147 config I82365
148         tristate "i82365 compatible bridge support"
149         depends on PCMCIA && ISA
150         select PCCARD_NONSTATIC
151         help
152           Say Y here to include support for ISA-bus PCMCIA host bridges that
153           are register compatible with the Intel i82365.  These are found on
154           older laptops and ISA-bus card readers for desktop systems.  A
155           "bridge" is the hardware inside your computer that PCMCIA cards are
156           plugged into. If unsure, say N.
157
158 config TCIC
159         tristate "Databook TCIC host bridge support"
160         depends on PCMCIA && ISA
161         select PCCARD_NONSTATIC
162         help
163           Say Y here to include support for the Databook TCIC family of PCMCIA
164           host bridges. These are only found on a handful of old systems.
165           "Bridge" is the name used for the hardware inside your computer that
166           PCMCIA cards are plugged into. If unsure, say N.
167
168 config PCMCIA_M8XX
169         tristate "MPC8xx PCMCIA support"
170         depends on PCCARD && PPC && 8xx
171         select PCCARD_IODYN if PCMCIA != n
172         help
173           Say Y here to include support for PowerPC 8xx series PCMCIA
174           controller.
175
176           This driver is also available as a module called m8xx_pcmcia.
177
178 config PCMCIA_AU1X00
179         tristate "Au1x00 pcmcia support"
180         depends on SOC_AU1X00 && PCMCIA
181
182 config PCMCIA_ALCHEMY_DEVBOARD
183         tristate "Alchemy Db/Pb1xxx PCMCIA socket services"
184         depends on SOC_AU1X00 && PCMCIA
185         select 64BIT_PHYS_ADDR
186         help
187           Enable this driver of you want PCMCIA support on your Alchemy
188           Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200 board.
189           NOT suitable for the PB1000!
190
191           This driver is also available as a module called db1xxx_ss.ko
192
193 config PCMCIA_XXS1500
194         tristate "MyCable XXS1500 PCMCIA socket support"
195         depends on PCMCIA && MIPS_XXS1500
196         select 64BIT_PHYS_ADDR
197         help
198           Support for the PCMCIA/CF socket interface on MyCable XXS1500
199           systems.
200
201           This driver is also available as a module called xxs1500_ss.ko
202
203 config PCMCIA_BCM63XX
204         tristate "bcm63xx pcmcia support"
205         depends on BCM63XX && PCMCIA
206
207 config PCMCIA_SOC_COMMON
208         tristate
209
210 config PCMCIA_SA1100
211         tristate "SA1100 support"
212         depends on ARM && ARCH_SA1100 && PCMCIA
213         select PCMCIA_SOC_COMMON
214         help
215           Say Y here to include support for SA11x0-based PCMCIA or CF
216           sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
217           Xscale(R) embedded machines.
218
219           This driver is also available as a module called sa1100_cs.
220
221 config PCMCIA_SA1111
222         tristate "SA1111 support"
223         depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
224         select PCMCIA_SOC_COMMON
225         help
226           Say Y  here to include support for SA1111-based PCMCIA or CF
227           sockets, found on the Jornada 720, Graphicsmaster and other
228           StrongARM(R)/Xscale(R) embedded machines.
229
230           This driver is also available as a module called sa1111_cs.
231
232 config PCMCIA_PXA2XX
233         tristate "PXA2xx support"
234         depends on ARM && ARCH_PXA && PCMCIA
235         depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
236                     || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
237                     || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2 \
238                     || MACH_VPAC270)
239         select PCMCIA_SOC_COMMON
240         help
241           Say Y here to include support for the PXA2xx PCMCIA controller
242
243 config PCMCIA_DEBUG
244         bool "Enable debugging"
245         depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
246         help
247           Say Y here to enable debugging for the SoC PCMCIA layer.
248           You will need to choose the debugging level either via the
249           kernel command line, or module options depending whether
250           you build the drivers as modules.
251
252           The kernel command line options are:
253             sa11xx_core.pc_debug=N
254             pxa2xx_core.pc_debug=N
255
256           The module option is called pc_debug=N
257
258           In all the above examples, N is the debugging verbosity
259           level.
260
261 config PCMCIA_PROBE
262         bool
263         default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
264
265 config M32R_PCC
266         bool "M32R PCMCIA I/F"
267         depends on M32R && CHIP_M32700 && PCMCIA
268         help
269           Say Y here to use the M32R PCMCIA controller.
270
271 config M32R_CFC
272         bool "M32R CF I/F Controller"
273         depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
274         help
275           Say Y here to use the M32R CompactFlash controller.
276
277 config M32R_CFC_NUM
278         int "M32R CF I/F number"
279         depends on M32R_CFC
280         default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT
281         help
282           Set the number of M32R CF slots.
283
284 config PCMCIA_VRC4171
285         tristate "NEC VRC4171 Card Controllers support"
286         depends on CPU_VR41XX && ISA && PCMCIA
287
288 config PCMCIA_VRC4173
289         tristate "NEC VRC4173 CARDU support"
290         depends on CPU_VR41XX && PCI && PCMCIA
291
292 config OMAP_CF
293         tristate "OMAP CompactFlash Controller"
294         depends on PCMCIA && ARCH_OMAP16XX
295         help
296           Say Y here to support the CompactFlash controller on OMAP.
297           Note that this doesn't support "True IDE" mode.
298
299 config BFIN_CFPCMCIA
300         tristate "Blackfin CompactFlash PCMCIA Driver"
301         depends on PCMCIA && BLACKFIN
302         help
303           Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
304
305
306 config AT91_CF
307         tristate "AT91 CompactFlash Controller"
308         depends on PCMCIA && ARCH_AT91RM9200
309         help
310           Say Y here to support the CompactFlash controller on AT91 chips.
311           Or choose M to compile the driver as a module named "at91_cf".
312
313 config ELECTRA_CF
314         tristate "Electra CompactFlash Controller"
315         depends on PCMCIA && PPC_PASEMI
316         help
317           Say Y here to support the CompactFlash controller on the
318           PA Semi Electra eval board.
319
320 config PCCARD_NONSTATIC
321         tristate
322
323 config PCCARD_IODYN
324         bool
325
326 endif   # PCCARD