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