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