xref: /openbmc/linux/drivers/pcmcia/Kconfig (revision 136b758b)
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 CARDBUS
53	bool "32-bit CardBus support"
54	depends on PCI
55	default y
56	---help---
57	  CardBus is a bus mastering architecture for PC-cards, which allows
58	  for 32 bit PC-cards (the original PCMCIA standard specifies only
59	  a 16 bit wide bus). Many newer PC-cards are actually CardBus cards.
60
61	  To use 32 bit PC-cards, you also need a CardBus compatible host
62	  bridge. Virtually all modern PCMCIA bridges do this, and most of
63	  them are "yenta-compatible", so say Y or M there, too.
64
65	  If unsure, say Y.
66
67comment "PC-card bridges"
68
69config YENTA
70	tristate "CardBus yenta-compatible bridge support"
71	depends on PCI
72	select CARDBUS if !EXPERT
73	select PCCARD_NONSTATIC if PCMCIA != n
74	---help---
75	  This option enables support for CardBus host bridges.  Virtually
76	  all modern PCMCIA bridges are CardBus compatible.  A "bridge" is
77	  the hardware inside your computer that PCMCIA cards are plugged
78	  into.
79
80	  To compile this driver as modules, choose M here: the
81	  module will be called yenta_socket.
82
83	  If unsure, say Y.
84
85config YENTA_O2
86	default y
87	bool "Special initialization for O2Micro bridges" if EXPERT
88	depends on YENTA
89
90config YENTA_RICOH
91	default y
92	bool "Special initialization for Ricoh bridges" if EXPERT
93	depends on YENTA
94
95config YENTA_TI
96	default y
97	bool "Special initialization for TI and EnE bridges" if EXPERT
98	depends on YENTA
99
100config YENTA_ENE_TUNE
101	default y
102	bool "Auto-tune EnE bridges for CB cards" if EXPERT
103	depends on YENTA_TI && CARDBUS
104
105config YENTA_TOSHIBA
106	default y
107	bool "Special initialization for Toshiba ToPIC bridges" if EXPERT
108	depends on YENTA
109
110config PD6729
111	tristate "Cirrus PD6729 compatible bridge support"
112	depends on PCMCIA && PCI
113	select PCCARD_NONSTATIC
114	help
115	  This provides support for the Cirrus PD6729 PCI-to-PCMCIA bridge
116	  device, found in some older laptops and PCMCIA card readers.
117
118config I82092
119	tristate "i82092 compatible bridge support"
120	depends on PCMCIA && PCI
121	select PCCARD_NONSTATIC
122	help
123	  This provides support for the Intel I82092AA PCI-to-PCMCIA bridge device,
124	  found in some older laptops and more commonly in evaluation boards for the
125	  chip.
126
127config I82365
128	tristate "i82365 compatible bridge support"
129	depends on PCMCIA && ISA
130	select PCCARD_NONSTATIC
131	help
132	  Say Y here to include support for ISA-bus PCMCIA host bridges that
133	  are register compatible with the Intel i82365.  These are found on
134	  older laptops and ISA-bus card readers for desktop systems.  A
135	  "bridge" is the hardware inside your computer that PCMCIA cards are
136	  plugged into. If unsure, say N.
137
138config TCIC
139	tristate "Databook TCIC host bridge support"
140	depends on PCMCIA && ISA
141	select PCCARD_NONSTATIC
142	help
143	  Say Y here to include support for the Databook TCIC family of PCMCIA
144	  host bridges. These are only found on a handful of old systems.
145	  "Bridge" is the name used for the hardware inside your computer that
146	  PCMCIA cards are plugged into. If unsure, say N.
147
148config PCMCIA_M8XX
149	tristate "MPC8xx PCMCIA support"
150	depends on PCCARD && PPC && 8xx
151	select PCCARD_IODYN if PCMCIA != n
152	help
153	  Say Y here to include support for PowerPC 8xx series PCMCIA
154	  controller.
155
156	  This driver is also available as a module called m8xx_pcmcia.
157
158config PCMCIA_ALCHEMY_DEVBOARD
159	tristate "Alchemy Db/Pb1xxx PCMCIA socket services"
160	depends on MIPS_ALCHEMY && PCMCIA
161	select 64BIT_PHYS_ADDR
162	help
163	  Enable this driver of you want PCMCIA support on your Alchemy
164	  Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200, DB1300
165	  board.  NOT suitable for the PB1000!
166
167	  This driver is also available as a module called db1xxx_ss.ko
168
169config PCMCIA_XXS1500
170	tristate "MyCable XXS1500 PCMCIA socket support"
171	depends on PCMCIA && MIPS_XXS1500
172	select 64BIT_PHYS_ADDR
173	help
174	  Support for the PCMCIA/CF socket interface on MyCable XXS1500
175	  systems.
176
177	  This driver is also available as a module called xxs1500_ss.ko
178
179config PCMCIA_BCM63XX
180	tristate "bcm63xx pcmcia support"
181	depends on BCM63XX && PCMCIA
182
183config PCMCIA_SOC_COMMON
184	tristate
185
186config PCMCIA_SA11XX_BASE
187	tristate
188
189config PCMCIA_SA1100
190	tristate "SA1100 support"
191	depends on ARM && ARCH_SA1100 && PCMCIA
192	select PCMCIA_SOC_COMMON
193	select PCMCIA_SA11XX_BASE
194	help
195	  Say Y here to include support for SA11x0-based PCMCIA or CF
196	  sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
197	  Xscale(R) embedded machines.
198
199	  This driver is also available as a module called sa1100_cs.
200
201config PCMCIA_SA1111
202	tristate "SA1111 support"
203	depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
204	select PCMCIA_SOC_COMMON
205	select PCMCIA_SA11XX_BASE
206	help
207	  Say Y  here to include support for SA1111-based PCMCIA or CF
208	  sockets, found on the Jornada 720, Graphicsmaster and other
209	  StrongARM(R)/Xscale(R) embedded machines.
210
211	  This driver is also available as a module called sa1111_cs.
212
213config PCMCIA_PXA2XX
214	tristate "PXA2xx support"
215	depends on ARM && ARCH_PXA && PCMCIA
216	depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
217		    || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
218		    || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2 \
219		    || MACH_VPAC270 || MACH_BALLOON3 || MACH_COLIBRI \
220		    || MACH_COLIBRI320)
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 && !ARCH_CLPS711X && !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_AT91RM9200
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