xref: /openbmc/linux/drivers/pcmcia/Kconfig (revision 6774def6)
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_ALCHEMY_DEVBOARD
148	tristate "Alchemy Db/Pb1xxx PCMCIA socket services"
149	depends on MIPS_ALCHEMY && PCMCIA
150	select 64BIT_PHYS_ADDR
151	help
152	  Enable this driver of you want PCMCIA support on your Alchemy
153	  Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200, DB1300
154	  board.  NOT suitable for the PB1000!
155
156	  This driver is also available as a module called db1xxx_ss.ko
157
158config PCMCIA_XXS1500
159	tristate "MyCable XXS1500 PCMCIA socket support"
160	depends on PCMCIA && MIPS_XXS1500
161	select 64BIT_PHYS_ADDR
162	help
163	  Support for the PCMCIA/CF socket interface on MyCable XXS1500
164	  systems.
165
166	  This driver is also available as a module called xxs1500_ss.ko
167
168config PCMCIA_BCM63XX
169	tristate "bcm63xx pcmcia support"
170	depends on BCM63XX && PCMCIA
171
172config PCMCIA_SOC_COMMON
173	tristate
174
175config PCMCIA_SA11XX_BASE
176	tristate
177
178config PCMCIA_SA1100
179	tristate "SA1100 support"
180	depends on ARM && ARCH_SA1100 && PCMCIA
181	select PCMCIA_SOC_COMMON
182	select PCMCIA_SA11XX_BASE
183	help
184	  Say Y here to include support for SA11x0-based PCMCIA or CF
185	  sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
186	  Xscale(R) embedded machines.
187
188	  This driver is also available as a module called sa1100_cs.
189
190config PCMCIA_SA1111
191	tristate "SA1111 support"
192	depends on ARM && SA1111 && PCMCIA
193	select PCMCIA_SOC_COMMON
194	select PCMCIA_SA11XX_BASE if ARCH_SA1100
195	select PCMCIA_PXA2XX if ARCH_LUBBOCK && SA1111
196	help
197	  Say Y  here to include support for SA1111-based PCMCIA or CF
198	  sockets, found on the Jornada 720, Graphicsmaster and other
199	  StrongARM(R)/Xscale(R) embedded machines.
200
201	  This driver is also available as a module called sa1111_cs.
202
203config PCMCIA_PXA2XX
204	tristate "PXA2xx support"
205	depends on ARM && ARCH_PXA && PCMCIA
206	depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
207		    || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
208		    || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2 \
209		    || MACH_VPAC270 || MACH_BALLOON3 || MACH_COLIBRI \
210		    || MACH_COLIBRI320 || MACH_H4700)
211	select PCMCIA_SOC_COMMON
212	help
213	  Say Y here to include support for the PXA2xx PCMCIA controller
214
215config PCMCIA_DEBUG
216	bool "Enable debugging"
217	depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
218	help
219	  Say Y here to enable debugging for the SoC PCMCIA layer.
220	  You will need to choose the debugging level either via the
221	  kernel command line, or module options depending whether
222	  you build the drivers as modules.
223
224	  The kernel command line options are:
225	    sa11xx_core.pc_debug=N
226	    pxa2xx_core.pc_debug=N
227
228	  The module option is called pc_debug=N
229
230	  In all the above examples, N is the debugging verbosity
231	  level.
232
233config PCMCIA_PROBE
234	bool
235	default y if ISA && !ARCH_SA1100 && !PARISC
236
237config M32R_PCC
238	bool "M32R PCMCIA I/F"
239	depends on M32R && CHIP_M32700 && PCMCIA
240	help
241	  Say Y here to use the M32R PCMCIA controller.
242
243config M32R_CFC
244	bool "M32R CF I/F Controller"
245	depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
246	help
247	  Say Y here to use the M32R CompactFlash controller.
248
249config M32R_CFC_NUM
250	int "M32R CF I/F number"
251	depends on M32R_CFC
252	default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT
253	help
254	  Set the number of M32R CF slots.
255
256config PCMCIA_VRC4171
257	tristate "NEC VRC4171 Card Controllers support"
258	depends on CPU_VR41XX && ISA && PCMCIA
259
260config PCMCIA_VRC4173
261	tristate "NEC VRC4173 CARDU support"
262	depends on CPU_VR41XX && PCI && PCMCIA
263
264config OMAP_CF
265	tristate "OMAP CompactFlash Controller"
266	depends on PCMCIA && ARCH_OMAP16XX
267	help
268	  Say Y here to support the CompactFlash controller on OMAP.
269	  Note that this doesn't support "True IDE" mode.
270
271config BFIN_CFPCMCIA
272	tristate "Blackfin CompactFlash PCMCIA Driver"
273	depends on PCMCIA && BLACKFIN
274	help
275	  Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
276
277
278config AT91_CF
279	tristate "AT91 CompactFlash Controller"
280	depends on PCMCIA && ARCH_AT91
281	help
282	  Say Y here to support the CompactFlash controller on AT91 chips.
283	  Or choose M to compile the driver as a module named "at91_cf".
284
285config ELECTRA_CF
286	tristate "Electra CompactFlash Controller"
287	depends on PCMCIA && PPC_PASEMI
288	help
289	  Say Y here to support the CompactFlash controller on the
290	  PA Semi Electra eval board.
291
292config PCCARD_NONSTATIC
293	bool
294
295config PCCARD_IODYN
296	bool
297
298endif	# PCCARD
299