xref: /openbmc/linux/drivers/pcmcia/Kconfig (revision addff0fa)
1#
2# PCCARD (PCMCIA/CardBus) bus subsystem configuration
3#
4
5menuconfig 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
18if PCCARD
19
20config 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
38config 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
52config 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
72config 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
87comment "PC-card bridges"
88
89config 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
105config 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
130config 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"
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
168config 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
178config PCMCIA_AU1X00
179	tristate "Au1x00 pcmcia support"
180	depends on SOC_AU1X00 && PCMCIA
181
182config 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
193config 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
203config PCMCIA_BCM63XX
204	tristate "bcm63xx pcmcia support"
205	depends on BCM63XX && PCMCIA
206
207config PCMCIA_SOC_COMMON
208	tristate
209
210config 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
221config 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
232config 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
243config 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
261config PCMCIA_PROBE
262	bool
263	default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
264
265config 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
271config 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
277config 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
284config PCMCIA_VRC4171
285	tristate "NEC VRC4171 Card Controllers support"
286	depends on CPU_VR41XX && ISA && PCMCIA
287
288config PCMCIA_VRC4173
289	tristate "NEC VRC4173 CARDU support"
290	depends on CPU_VR41XX && PCI && PCMCIA
291
292config 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
299config 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
306config 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
313config 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
320config PCCARD_NONSTATIC
321	tristate
322
323config PCCARD_IODYN
324	bool
325
326endif	# PCCARD
327