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