xref: /linux/drivers/pcmcia/Kconfig (revision 9d9c98e89ee24b7d42f72c4f663c4d644d1c3f81)
11da177e4SLinus Torvalds#
2bf45d9b0SDominik Brodowski# PCCARD (PCMCIA/CardBus) bus subsystem configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
542c5323cSJan Engelhardtmenuconfig PCCARD
61da177e4SLinus Torvalds	tristate "PCCard (PCMCIA/CardBus) support"
7135c294fSAndrew Morton	depends on HOTPLUG
81da177e4SLinus Torvalds	---help---
91da177e4SLinus Torvalds	  Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
101da177e4SLinus Torvalds	  computer.  These are credit-card size devices such as network cards,
111da177e4SLinus Torvalds	  modems or hard drives often used with laptops computers.  There are
129a5555b8SDominik Brodowski	  actually two varieties of these cards: 16 bit PCMCIA and 32 bit
139a5555b8SDominik Brodowski	  CardBus cards.
141da177e4SLinus Torvalds
151da177e4SLinus Torvalds	  To compile this driver as modules, choose M here: the
161da177e4SLinus Torvalds	  module will be called pcmcia_core.
171da177e4SLinus Torvalds
181da177e4SLinus Torvaldsif PCCARD
191da177e4SLinus Torvalds
201da177e4SLinus Torvaldsconfig PCMCIA
211da177e4SLinus Torvalds	tristate "16-bit PCMCIA support"
22f861bd23SDominik Brodowski	select CRC32
231da177e4SLinus Torvalds	default y
241da177e4SLinus Torvalds	---help---
251da177e4SLinus Torvalds	   This option enables support for 16-bit PCMCIA cards. Most older
261da177e4SLinus Torvalds	   PC-cards are such 16-bit PCMCIA cards, so unless you know you're
271da177e4SLinus Torvalds	   only using 32-bit CardBus cards, say Y or M here.
281da177e4SLinus Torvalds
299a5555b8SDominik Brodowski	   To use 16-bit PCMCIA cards, you will need supporting software in
309a5555b8SDominik Brodowski	   most cases. (see the file <file:Documentation/Changes> for
319a5555b8SDominik Brodowski	   location and details).
321da177e4SLinus Torvalds
331da177e4SLinus Torvalds	   To compile this driver as modules, choose M here: the
341da177e4SLinus Torvalds	   module will be called pcmcia.
351da177e4SLinus Torvalds
361da177e4SLinus Torvalds	   If unsure, say Y.
371da177e4SLinus Torvalds
38daa9517dSDominik Brodowskiconfig PCMCIA_LOAD_CIS
39daa9517dSDominik Brodowski	bool "Load CIS updates from userspace (EXPERIMENTAL)"
40daa9517dSDominik Brodowski	depends on PCMCIA && EXPERIMENTAL
41daa9517dSDominik Brodowski	select FW_LOADER
42daa9517dSDominik Brodowski	default y
43daa9517dSDominik Brodowski	help
44daa9517dSDominik Brodowski	  Some PCMCIA cards require an updated Card Information Structure (CIS)
45daa9517dSDominik Brodowski	  to be loaded from userspace to work correctly. If you say Y here,
46daa9517dSDominik Brodowski	  and your userspace is arranged correctly, this will be loaded
47daa9517dSDominik Brodowski	  automatically using the in-kernel firmware loader and the hotplug
48daa9517dSDominik Brodowski	  subsystem, instead of relying on cardmgr from pcmcia-cs to do so.
49daa9517dSDominik Brodowski
50daa9517dSDominik Brodowski	  If unsure, say Y.
51daa9517dSDominik Brodowski
529a5555b8SDominik Brodowskiconfig PCMCIA_IOCTL
53bf45d9b0SDominik Brodowski	bool "PCMCIA control ioctl (obsolete)"
549a5555b8SDominik Brodowski	depends on PCMCIA
559a5555b8SDominik Brodowski	default y
569a5555b8SDominik Brodowski	help
579a5555b8SDominik Brodowski	  If you say Y here, the deprecated ioctl interface to the PCMCIA
589a5555b8SDominik Brodowski	  subsystem will be built. It is needed by cardmgr and cardctl
599a5555b8SDominik Brodowski	  (pcmcia-cs) to function properly.
609a5555b8SDominik Brodowski
61bf45d9b0SDominik Brodowski	  You should use the new pcmciautils package instead (see
62bf45d9b0SDominik Brodowski	  <file:Documentation/Changes> for location and details).
639a5555b8SDominik Brodowski
649a5555b8SDominik Brodowski	  If unsure, say Y.
659a5555b8SDominik Brodowski
661da177e4SLinus Torvaldsconfig CARDBUS
671da177e4SLinus Torvalds	bool "32-bit CardBus support"
681da177e4SLinus Torvalds	depends on PCI
691da177e4SLinus Torvalds	default y
701da177e4SLinus Torvalds	---help---
711da177e4SLinus Torvalds	  CardBus is a bus mastering architecture for PC-cards, which allows
721da177e4SLinus Torvalds	  for 32 bit PC-cards (the original PCMCIA standard specifies only
731da177e4SLinus Torvalds	  a 16 bit wide bus). Many newer PC-cards are actually CardBus cards.
741da177e4SLinus Torvalds
751da177e4SLinus Torvalds	  To use 32 bit PC-cards, you also need a CardBus compatible host
761da177e4SLinus Torvalds	  bridge. Virtually all modern PCMCIA bridges do this, and most of
771da177e4SLinus Torvalds	  them are "yenta-compatible", so say Y or M there, too.
781da177e4SLinus Torvalds
791da177e4SLinus Torvalds	  If unsure, say Y.
801da177e4SLinus Torvalds
811da177e4SLinus Torvaldscomment "PC-card bridges"
821da177e4SLinus Torvalds
831da177e4SLinus Torvaldsconfig YENTA
841da177e4SLinus Torvalds	tristate "CardBus yenta-compatible bridge support"
8589b39f5dSDominik Brodowski	depends on PCI
8689b39f5dSDominik Brodowski	select CARDBUS if !EMBEDDED
87*9d9c98e8SMichal Marek	select PCCARD_NONSTATIC if PCMCIA != n
881da177e4SLinus Torvalds	---help---
891da177e4SLinus Torvalds	  This option enables support for CardBus host bridges.  Virtually
901da177e4SLinus Torvalds	  all modern PCMCIA bridges are CardBus compatible.  A "bridge" is
911da177e4SLinus Torvalds	  the hardware inside your computer that PCMCIA cards are plugged
921da177e4SLinus Torvalds	  into.
931da177e4SLinus Torvalds
941da177e4SLinus Torvalds	  To compile this driver as modules, choose M here: the
951da177e4SLinus Torvalds	  module will be called yenta_socket.
961da177e4SLinus Torvalds
971da177e4SLinus Torvalds	  If unsure, say Y.
981da177e4SLinus Torvalds
9963e7ebd0SDaniel Ritzconfig YENTA_O2
10063e7ebd0SDaniel Ritz	default y
10163e7ebd0SDaniel Ritz	bool "Special initialization for O2Micro bridges" if EMBEDDED
10263e7ebd0SDaniel Ritz	depends on YENTA
10363e7ebd0SDaniel Ritz
10463e7ebd0SDaniel Ritzconfig YENTA_RICOH
10563e7ebd0SDaniel Ritz	default y
10663e7ebd0SDaniel Ritz	bool "Special initialization for Ricoh bridges" if EMBEDDED
10763e7ebd0SDaniel Ritz	depends on YENTA
10863e7ebd0SDaniel Ritz
10963e7ebd0SDaniel Ritzconfig YENTA_TI
11063e7ebd0SDaniel Ritz	default y
11163e7ebd0SDaniel Ritz	bool "Special initialization for TI and EnE bridges" if EMBEDDED
11263e7ebd0SDaniel Ritz	depends on YENTA
11363e7ebd0SDaniel Ritz
11463e7ebd0SDaniel Ritzconfig YENTA_ENE_TUNE
11563e7ebd0SDaniel Ritz	default y
11663e7ebd0SDaniel Ritz	bool "Auto-tune EnE bridges for CB cards" if EMBEDDED
11763e7ebd0SDaniel Ritz	depends on YENTA_TI && CARDBUS
11863e7ebd0SDaniel Ritz
11963e7ebd0SDaniel Ritzconfig YENTA_TOSHIBA
12063e7ebd0SDaniel Ritz	default y
12163e7ebd0SDaniel Ritz	bool "Special initialization for Toshiba ToPIC bridges" if EMBEDDED
12263e7ebd0SDaniel Ritz	depends on YENTA
12363e7ebd0SDaniel Ritz
1241da177e4SLinus Torvaldsconfig PD6729
1251da177e4SLinus Torvalds	tristate "Cirrus PD6729 compatible bridge support"
1261da177e4SLinus Torvalds	depends on PCMCIA && PCI
1271da177e4SLinus Torvalds	select PCCARD_NONSTATIC
1281da177e4SLinus Torvalds	help
1291da177e4SLinus Torvalds	  This provides support for the Cirrus PD6729 PCI-to-PCMCIA bridge
1301da177e4SLinus Torvalds	  device, found in some older laptops and PCMCIA card readers.
1311da177e4SLinus Torvalds
1321da177e4SLinus Torvaldsconfig I82092
1331da177e4SLinus Torvalds	tristate "i82092 compatible bridge support"
1341da177e4SLinus Torvalds	depends on PCMCIA && PCI
1351da177e4SLinus Torvalds	select PCCARD_NONSTATIC
1361da177e4SLinus Torvalds	help
1371da177e4SLinus Torvalds	  This provides support for the Intel I82092AA PCI-to-PCMCIA bridge device,
1381da177e4SLinus Torvalds	  found in some older laptops and more commonly in evaluation boards for the
1391da177e4SLinus Torvalds	  chip.
1401da177e4SLinus Torvalds
1411da177e4SLinus Torvaldsconfig I82365
1421da177e4SLinus Torvalds	tristate "i82365 compatible bridge support"
1431da177e4SLinus Torvalds	depends on PCMCIA && ISA
1441da177e4SLinus Torvalds	select PCCARD_NONSTATIC
1451da177e4SLinus Torvalds	help
1461da177e4SLinus Torvalds	  Say Y here to include support for ISA-bus PCMCIA host bridges that
1471da177e4SLinus Torvalds	  are register compatible with the Intel i82365.  These are found on
1481da177e4SLinus Torvalds	  older laptops and ISA-bus card readers for desktop systems.  A
1491da177e4SLinus Torvalds	  "bridge" is the hardware inside your computer that PCMCIA cards are
1501da177e4SLinus Torvalds	  plugged into. If unsure, say N.
1511da177e4SLinus Torvalds
1521da177e4SLinus Torvaldsconfig TCIC
1531da177e4SLinus Torvalds	tristate "Databook TCIC host bridge support"
15481000808SKomuro	depends on PCMCIA && ISA
1551da177e4SLinus Torvalds	select PCCARD_NONSTATIC
1561da177e4SLinus Torvalds	help
1571da177e4SLinus Torvalds	  Say Y here to include support for the Databook TCIC family of PCMCIA
1581da177e4SLinus Torvalds	  host bridges. These are only found on a handful of old systems.
1591da177e4SLinus Torvalds	  "Bridge" is the name used for the hardware inside your computer that
1601da177e4SLinus Torvalds	  PCMCIA cards are plugged into. If unsure, say N.
1611da177e4SLinus Torvalds
162de957c89SMarcelo Tosatticonfig PCMCIA_M8XX
163de957c89SMarcelo Tosatti	tristate "MPC8xx PCMCIA support"
164*9d9c98e8SMichal Marek	depends on PCCARD && PPC && 8xx
165*9d9c98e8SMichal Marek	select PCCARD_IODYN if PCMCIA != n
166de957c89SMarcelo Tosatti	help
167de957c89SMarcelo Tosatti	  Say Y here to include support for PowerPC 8xx series PCMCIA
168de957c89SMarcelo Tosatti	  controller.
169de957c89SMarcelo Tosatti
170de957c89SMarcelo Tosatti	  This driver is also available as a module called m8xx_pcmcia.
171de957c89SMarcelo Tosatti
1721da177e4SLinus Torvaldsconfig PCMCIA_AU1X00
1731da177e4SLinus Torvalds	tristate "Au1x00 pcmcia support"
1741da177e4SLinus Torvalds	depends on SOC_AU1X00 && PCMCIA
1751da177e4SLinus Torvalds
176553d6d5fSMaxime Bizonconfig PCMCIA_BCM63XX
177553d6d5fSMaxime Bizon	tristate "bcm63xx pcmcia support"
178553d6d5fSMaxime Bizon	depends on BCM63XX && PCMCIA
179553d6d5fSMaxime Bizon
1800f767de6SRussell King - ARM Linuxconfig PCMCIA_SOC_COMMON
1811bf8e621SRussell King	tristate
1820f767de6SRussell King - ARM Linux
1831da177e4SLinus Torvaldsconfig PCMCIA_SA1100
1841da177e4SLinus Torvalds	tristate "SA1100 support"
1851da177e4SLinus Torvalds	depends on ARM && ARCH_SA1100 && PCMCIA
1860f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
1871da177e4SLinus Torvalds	help
1881da177e4SLinus Torvalds	  Say Y here to include support for SA11x0-based PCMCIA or CF
1891da177e4SLinus Torvalds	  sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
1901da177e4SLinus Torvalds	  Xscale(R) embedded machines.
1911da177e4SLinus Torvalds
1921da177e4SLinus Torvalds	  This driver is also available as a module called sa1100_cs.
1931da177e4SLinus Torvalds
1941da177e4SLinus Torvaldsconfig PCMCIA_SA1111
1951da177e4SLinus Torvalds	tristate "SA1111 support"
1961da177e4SLinus Torvalds	depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
1970f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
1981da177e4SLinus Torvalds	help
1991da177e4SLinus Torvalds	  Say Y  here to include support for SA1111-based PCMCIA or CF
2001da177e4SLinus Torvalds	  sockets, found on the Jornada 720, Graphicsmaster and other
2011da177e4SLinus Torvalds	  StrongARM(R)/Xscale(R) embedded machines.
2021da177e4SLinus Torvalds
2031da177e4SLinus Torvalds	  This driver is also available as a module called sa1111_cs.
2041da177e4SLinus Torvalds
2051da177e4SLinus Torvaldsconfig PCMCIA_PXA2XX
2061da177e4SLinus Torvalds	tristate "PXA2xx support"
2071da177e4SLinus Torvalds	depends on ARM && ARCH_PXA && PCMCIA
20835978408SMarek Vašut	depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
209cc513ac0SRussell King		    || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
210c2de1c38SMarc Zyngier		    || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2)
2110f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
2121da177e4SLinus Torvalds	help
2131da177e4SLinus Torvalds	  Say Y here to include support for the PXA2xx PCMCIA controller
2141da177e4SLinus Torvalds
215c9f50dddSDominik Brodowskiconfig PCMCIA_DEBUG
216c9f50dddSDominik Brodowski	bool "Enable debugging"
217c9f50dddSDominik Brodowski	depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
218c9f50dddSDominik Brodowski	help
219c9f50dddSDominik Brodowski	  Say Y here to enable debugging for the SoC PCMCIA layer.
220c9f50dddSDominik Brodowski	  You will need to choose the debugging level either via the
221c9f50dddSDominik Brodowski	  kernel command line, or module options depending whether
222c9f50dddSDominik Brodowski	  you build the drivers as modules.
223c9f50dddSDominik Brodowski
224c9f50dddSDominik Brodowski	  The kernel command line options are:
225c9f50dddSDominik Brodowski	    sa11xx_core.pc_debug=N
226c9f50dddSDominik Brodowski	    pxa2xx_core.pc_debug=N
227c9f50dddSDominik Brodowski
228c9f50dddSDominik Brodowski	  The module option is called pc_debug=N
229c9f50dddSDominik Brodowski
230c9f50dddSDominik Brodowski	  In all the above examples, N is the debugging verbosity
231c9f50dddSDominik Brodowski	  level.
232c9f50dddSDominik Brodowski
2331da177e4SLinus Torvaldsconfig PCMCIA_PROBE
2341da177e4SLinus Torvalds	bool
2356423efaaSDominik Brodowski	default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
2361da177e4SLinus Torvalds
2371da177e4SLinus Torvaldsconfig M32R_PCC
2381da177e4SLinus Torvalds	bool "M32R PCMCIA I/F"
2391da177e4SLinus Torvalds	depends on M32R && CHIP_M32700 && PCMCIA
2401da177e4SLinus Torvalds	help
2411da177e4SLinus Torvalds	  Say Y here to use the M32R PCMCIA controller.
2421da177e4SLinus Torvalds
2431da177e4SLinus Torvaldsconfig M32R_CFC
2441da177e4SLinus Torvalds	bool "M32R CF I/F Controller"
245934bb7f8SHirokazu Takata	depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
2461da177e4SLinus Torvalds	help
2471da177e4SLinus Torvalds	  Say Y here to use the M32R CompactFlash controller.
2481da177e4SLinus Torvalds
2491da177e4SLinus Torvaldsconfig M32R_CFC_NUM
2501da177e4SLinus Torvalds	int "M32R CF I/F number"
2511da177e4SLinus Torvalds	depends on M32R_CFC
252934bb7f8SHirokazu Takata	default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT
2531da177e4SLinus Torvalds	help
2541da177e4SLinus Torvalds	  Set the number of M32R CF slots.
2551da177e4SLinus Torvalds
2561da177e4SLinus Torvaldsconfig PCMCIA_VRC4171
2571da177e4SLinus Torvalds	tristate "NEC VRC4171 Card Controllers support"
258daaeb72bSYoichi Yuasa	depends on CPU_VR41XX && ISA && PCMCIA
2591da177e4SLinus Torvalds
2601da177e4SLinus Torvaldsconfig PCMCIA_VRC4173
2611da177e4SLinus Torvalds	tristate "NEC VRC4173 CARDU support"
2621da177e4SLinus Torvalds	depends on CPU_VR41XX && PCI && PCMCIA
2631da177e4SLinus Torvalds
264f74e48a5SDavid Brownellconfig OMAP_CF
265f74e48a5SDavid Brownell	tristate "OMAP CompactFlash Controller"
266f74e48a5SDavid Brownell	depends on PCMCIA && ARCH_OMAP16XX
267f74e48a5SDavid Brownell	help
268f74e48a5SDavid Brownell	  Say Y here to support the CompactFlash controller on OMAP.
269f74e48a5SDavid Brownell	  Note that this doesn't support "True IDE" mode.
270f74e48a5SDavid Brownell
271785e821eSMichael Hennerichconfig BFIN_CFPCMCIA
272785e821eSMichael Hennerich	tristate "Blackfin CompactFlash PCMCIA Driver"
273785e821eSMichael Hennerich	depends on PCMCIA && BLACKFIN
274785e821eSMichael Hennerich	help
275785e821eSMichael Hennerich	  Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
276785e821eSMichael Hennerich
277785e821eSMichael Hennerich
2782c1f3b7aSAndrew Victorconfig AT91_CF
2792c1f3b7aSAndrew Victor	tristate "AT91 CompactFlash Controller"
2802c1f3b7aSAndrew Victor	depends on PCMCIA && ARCH_AT91RM9200
2812c1f3b7aSAndrew Victor	help
2822c1f3b7aSAndrew Victor	  Say Y here to support the CompactFlash controller on AT91 chips.
2832c1f3b7aSAndrew Victor	  Or choose M to compile the driver as a module named "at91_cf".
2842c1f3b7aSAndrew Victor
2852b571a06SOlof Johanssonconfig ELECTRA_CF
2862b571a06SOlof Johansson	tristate "Electra CompactFlash Controller"
2872b571a06SOlof Johansson	depends on PCMCIA && PPC_PASEMI
2882b571a06SOlof Johansson	help
2892b571a06SOlof Johansson	  Say Y here to support the CompactFlash controller on the
2902b571a06SOlof Johansson	  PA Semi Electra eval board.
2912b571a06SOlof Johansson
2921da177e4SLinus Torvaldsconfig PCCARD_NONSTATIC
2931da177e4SLinus Torvalds	tristate
2941da177e4SLinus Torvalds
2953b27e942SDominik Brodowskiconfig PCCARD_IODYN
2963b27e942SDominik Brodowski	bool
2973b27e942SDominik Brodowski
2981da177e4SLinus Torvaldsendif	# PCCARD
299