blob: d189e4743e699711a5fa63fb98a5d7542f2053b4 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
Dominik Brodowskibf45d9b02005-07-07 17:58:58 -07002# PCCARD (PCMCIA/CardBus) bus subsystem configuration
Linus Torvalds1da177e2005-04-16 15:20:36 -07003#
4
Jan Engelhardt42c53232007-10-16 01:23:48 -07005menuconfig PCCARD
Linus Torvalds1da177e2005-04-16 15:20:36 -07006 tristate "PCCard (PCMCIA/CardBus) support"
Andrew Morton135c2942006-07-10 04:43:48 -07007 depends on HOTPLUG
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 ---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
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070012 actually two varieties of these cards: 16 bit PCMCIA and 32 bit
13 CardBus cards.
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
15 To compile this driver as modules, choose M here: the
16 module will be called pcmcia_core.
17
18if PCCARD
19
Linus Torvalds1da177e2005-04-16 15:20:36 -070020config PCMCIA
21 tristate "16-bit PCMCIA support"
Dominik Brodowskif861bd22005-06-27 16:28:57 -070022 select CRC32
Linus Torvalds1da177e2005-04-16 15:20:36 -070023 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
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070029 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).
Linus Torvalds1da177e2005-04-16 15:20:36 -070032
33 To compile this driver as modules, choose M here: the
34 module will be called pcmcia.
35
36 If unsure, say Y.
37
Dominik Brodowskidaa95172005-06-27 16:28:14 -070038config 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
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070052config PCMCIA_IOCTL
Dominik Brodowskibf45d9b02005-07-07 17:58:58 -070053 bool "PCMCIA control ioctl (obsolete)"
Dominik Brodowskia3f916f2010-01-15 23:55:21 +010054 depends on PCMCIA && ARM && !SMP && !PREEMPT
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070055 default y
56 help
57 If you say Y here, the deprecated ioctl interface to the PCMCIA
Dominik Brodowskia3f916f2010-01-15 23:55:21 +010058 subsystem will be built. It is needed by the deprecated pcmcia-cs
59 tools (cardmgr, cardctl) to function properly.
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070060
Dominik Brodowskibf45d9b02005-07-07 17:58:58 -070061 You should use the new pcmciautils package instead (see
62 <file:Documentation/Changes> for location and details).
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070063
Dominik Brodowskia3f916f2010-01-15 23:55:21 +010064 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.
Dominik Brodowski9a5555b2005-06-27 16:28:47 -070071
Linus Torvalds1da177e2005-04-16 15:20:36 -070072config CARDBUS
Dominik Brodowski9fea84f2009-12-07 22:11:45 +010073 bool "32-bit CardBus support"
Linus Torvalds1da177e2005-04-16 15:20:36 -070074 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
87comment "PC-card bridges"
88
89config YENTA
90 tristate "CardBus yenta-compatible bridge support"
Dominik Brodowski89b39f52005-07-07 17:59:09 -070091 depends on PCI
92 select CARDBUS if !EMBEDDED
Michal Marek9d9c98e2010-01-07 21:03:11 +010093 select PCCARD_NONSTATIC if PCMCIA != n
Linus Torvalds1da177e2005-04-16 15:20:36 -070094 ---help---
95 This option enables support for CardBus host bridges. Virtually
Dominik Brodowski9fea84f2009-12-07 22:11:45 +010096 all modern PCMCIA bridges are CardBus compatible. A "bridge" is
97 the hardware inside your computer that PCMCIA cards are plugged
Linus Torvalds1da177e2005-04-16 15:20:36 -070098 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
Daniel Ritz63e7ebd2005-11-03 21:12:14 +0100105config YENTA_O2
106 default y
107 bool "Special initialization for O2Micro bridges" if EMBEDDED
108 depends on YENTA
109
110config YENTA_RICOH
111 default y
112 bool "Special initialization for Ricoh bridges" if EMBEDDED
113 depends on YENTA
114
115config YENTA_TI
116 default y
117 bool "Special initialization for TI and EnE bridges" if EMBEDDED
118 depends on YENTA
119
120config YENTA_ENE_TUNE
121 default y
122 bool "Auto-tune EnE bridges for CB cards" if EMBEDDED
123 depends on YENTA_TI && CARDBUS
124
125config YENTA_TOSHIBA
126 default y
127 bool "Special initialization for Toshiba ToPIC bridges" if EMBEDDED
128 depends on YENTA
129
Linus Torvalds1da177e2005-04-16 15:20:36 -0700130config 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
138config 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
147config 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
158config TCIC
159 tristate "Databook TCIC host bridge support"
Komuro81000802005-09-24 23:12:40 -0700160 depends on PCMCIA && ISA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700161 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
Marcelo Tosattide957c82005-10-28 17:46:13 -0700168config PCMCIA_M8XX
Vitaly Bordug80128ff2007-07-09 11:37:35 -0700169 tristate "MPC8xx PCMCIA support"
Michal Marek9d9c98e2010-01-07 21:03:11 +0100170 depends on PCCARD && PPC && 8xx
171 select PCCARD_IODYN if PCMCIA != n
Vitaly Bordug80128ff2007-07-09 11:37:35 -0700172 help
173 Say Y here to include support for PowerPC 8xx series PCMCIA
174 controller.
Marcelo Tosattide957c82005-10-28 17:46:13 -0700175
Vitaly Bordug80128ff2007-07-09 11:37:35 -0700176 This driver is also available as a module called m8xx_pcmcia.
Marcelo Tosattide957c82005-10-28 17:46:13 -0700177
Linus Torvalds1da177e2005-04-16 15:20:36 -0700178config PCMCIA_AU1X00
179 tristate "Au1x00 pcmcia support"
180 depends on SOC_AU1X00 && PCMCIA
181
Manuel Lauss66213b32009-10-04 14:55:27 +0200182config 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
Manuel Lauss0273b4e2009-10-04 14:55:29 +0200193config 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
Maxime Bizon553d6d52009-09-28 14:49:43 +0200203config PCMCIA_BCM63XX
204 tristate "bcm63xx pcmcia support"
205 depends on BCM63XX && PCMCIA
206
Russell King - ARM Linux0f767de2009-03-26 21:14:19 +0000207config PCMCIA_SOC_COMMON
Russell King1bf8e622009-12-06 16:58:50 +0000208 tristate
Russell King - ARM Linux0f767de2009-03-26 21:14:19 +0000209
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210config PCMCIA_SA1100
211 tristate "SA1100 support"
212 depends on ARM && ARCH_SA1100 && PCMCIA
Russell King - ARM Linux0f767de2009-03-26 21:14:19 +0000213 select PCMCIA_SOC_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700214 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
221config PCMCIA_SA1111
222 tristate "SA1111 support"
223 depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
Russell King - ARM Linux0f767de2009-03-26 21:14:19 +0000224 select PCMCIA_SOC_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700225 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
232config PCMCIA_PXA2XX
233 tristate "PXA2xx support"
234 depends on ARM && ARCH_PXA && PCMCIA
Marek VaĊĦut35978402008-07-07 17:28:59 +0100235 depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
Russell Kingcc513ac2008-10-07 19:08:32 +0100236 || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
Marc Zyngierc2de1c382009-11-14 13:39:13 +0100237 || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2)
Russell King - ARM Linux0f767de2009-03-26 21:14:19 +0000238 select PCMCIA_SOC_COMMON
Linus Torvalds1da177e2005-04-16 15:20:36 -0700239 help
240 Say Y here to include support for the PXA2xx PCMCIA controller
241
Dominik Brodowskic9f50dd2009-10-23 12:56:46 +0200242config PCMCIA_DEBUG
243 bool "Enable debugging"
244 depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
245 help
246 Say Y here to enable debugging for the SoC PCMCIA layer.
247 You will need to choose the debugging level either via the
248 kernel command line, or module options depending whether
249 you build the drivers as modules.
250
251 The kernel command line options are:
252 sa11xx_core.pc_debug=N
253 pxa2xx_core.pc_debug=N
254
255 The module option is called pc_debug=N
256
257 In all the above examples, N is the debugging verbosity
258 level.
259
Linus Torvalds1da177e2005-04-16 15:20:36 -0700260config PCMCIA_PROBE
261 bool
Dominik Brodowski6423efa2005-12-11 20:47:44 +0100262 default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700263
264config M32R_PCC
265 bool "M32R PCMCIA I/F"
266 depends on M32R && CHIP_M32700 && PCMCIA
267 help
268 Say Y here to use the M32R PCMCIA controller.
269
270config M32R_CFC
271 bool "M32R CF I/F Controller"
Hirokazu Takata934bb7f2005-06-21 17:16:14 -0700272 depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700273 help
274 Say Y here to use the M32R CompactFlash controller.
275
276config M32R_CFC_NUM
277 int "M32R CF I/F number"
278 depends on M32R_CFC
Hirokazu Takata934bb7f2005-06-21 17:16:14 -0700279 default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700280 help
281 Set the number of M32R CF slots.
282
283config PCMCIA_VRC4171
284 tristate "NEC VRC4171 Card Controllers support"
Yoichi Yuasadaaeb722006-04-06 15:08:29 +0900285 depends on CPU_VR41XX && ISA && PCMCIA
Linus Torvalds1da177e2005-04-16 15:20:36 -0700286
287config PCMCIA_VRC4173
288 tristate "NEC VRC4173 CARDU support"
289 depends on CPU_VR41XX && PCI && PCMCIA
290
David Brownellf74e48a2005-09-09 13:03:28 -0700291config OMAP_CF
292 tristate "OMAP CompactFlash Controller"
293 depends on PCMCIA && ARCH_OMAP16XX
294 help
295 Say Y here to support the CompactFlash controller on OMAP.
296 Note that this doesn't support "True IDE" mode.
297
Michael Hennerich785e8212008-06-11 09:06:16 +0200298config BFIN_CFPCMCIA
299 tristate "Blackfin CompactFlash PCMCIA Driver"
300 depends on PCMCIA && BLACKFIN
301 help
302 Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
303
304
Andrew Victor2c1f3b72006-02-21 12:56:52 +0200305config AT91_CF
306 tristate "AT91 CompactFlash Controller"
307 depends on PCMCIA && ARCH_AT91RM9200
308 help
309 Say Y here to support the CompactFlash controller on AT91 chips.
310 Or choose M to compile the driver as a module named "at91_cf".
311
Olof Johansson2b571a02007-10-16 23:26:20 -0700312config ELECTRA_CF
313 tristate "Electra CompactFlash Controller"
314 depends on PCMCIA && PPC_PASEMI
315 help
316 Say Y here to support the CompactFlash controller on the
317 PA Semi Electra eval board.
318
Linus Torvalds1da177e2005-04-16 15:20:36 -0700319config PCCARD_NONSTATIC
320 tristate
321
Dominik Brodowski3b27e942005-12-07 12:32:20 +0100322config PCCARD_IODYN
323 bool
324
Linus Torvalds1da177e2005-04-16 15:20:36 -0700325endif # PCCARD