xref: /linux/drivers/pcmcia/Kconfig (revision 0273b4efccd3bc2b2ef5ea9778e71d8efbbb7ac7)
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
871da177e4SLinus Torvalds	select PCCARD_NONSTATIC
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"
164e3463150SMarcelo Tosatti	depends on PCMCIA && PPC && 8xx
1653b27e942SDominik Brodowski	select PCCARD_IODYN
16680128ff7SVitaly Bordug	select PCCARD_NONSTATIC
167de957c89SMarcelo Tosatti	help
168de957c89SMarcelo Tosatti	  Say Y here to include support for PowerPC 8xx series PCMCIA
169de957c89SMarcelo Tosatti	  controller.
170de957c89SMarcelo Tosatti
171de957c89SMarcelo Tosatti	  This driver is also available as a module called m8xx_pcmcia.
172de957c89SMarcelo Tosatti
1731da177e4SLinus Torvaldsconfig PCMCIA_AU1X00
1741da177e4SLinus Torvalds	tristate "Au1x00 pcmcia support"
1751da177e4SLinus Torvalds	depends on SOC_AU1X00 && PCMCIA
1761da177e4SLinus Torvalds
17766213b3cSManuel Laussconfig PCMCIA_ALCHEMY_DEVBOARD
17866213b3cSManuel Lauss	tristate "Alchemy Db/Pb1xxx PCMCIA socket services"
17966213b3cSManuel Lauss	depends on SOC_AU1X00 && PCMCIA
18066213b3cSManuel Lauss	select 64BIT_PHYS_ADDR
18166213b3cSManuel Lauss	help
18266213b3cSManuel Lauss	  Enable this driver of you want PCMCIA support on your Alchemy
18366213b3cSManuel Lauss	  Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200 board.
18466213b3cSManuel Lauss	  NOT suitable for the PB1000!
18566213b3cSManuel Lauss
18666213b3cSManuel Lauss	  This driver is also available as a module called db1xxx_ss.ko
18766213b3cSManuel Lauss
188*0273b4efSManuel Laussconfig PCMCIA_XXS1500
189*0273b4efSManuel Lauss	tristate "MyCable XXS1500 PCMCIA socket support"
190*0273b4efSManuel Lauss	depends on PCMCIA && MIPS_XXS1500
191*0273b4efSManuel Lauss	select 64BIT_PHYS_ADDR
192*0273b4efSManuel Lauss	help
193*0273b4efSManuel Lauss	  Support for the PCMCIA/CF socket interface on MyCable XXS1500
194*0273b4efSManuel Lauss	  systems.
195*0273b4efSManuel Lauss
196*0273b4efSManuel Lauss	  This driver is also available as a module called xxs1500_ss.ko
197*0273b4efSManuel Lauss
198553d6d5fSMaxime Bizonconfig PCMCIA_BCM63XX
199553d6d5fSMaxime Bizon	tristate "bcm63xx pcmcia support"
200553d6d5fSMaxime Bizon	depends on BCM63XX && PCMCIA
201553d6d5fSMaxime Bizon
2020f767de6SRussell King - ARM Linuxconfig PCMCIA_SOC_COMMON
2031bf8e621SRussell King	tristate
2040f767de6SRussell King - ARM Linux
2051da177e4SLinus Torvaldsconfig PCMCIA_SA1100
2061da177e4SLinus Torvalds	tristate "SA1100 support"
2071da177e4SLinus Torvalds	depends on ARM && ARCH_SA1100 && PCMCIA
2080f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
2091da177e4SLinus Torvalds	help
2101da177e4SLinus Torvalds	  Say Y here to include support for SA11x0-based PCMCIA or CF
2111da177e4SLinus Torvalds	  sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
2121da177e4SLinus Torvalds	  Xscale(R) embedded machines.
2131da177e4SLinus Torvalds
2141da177e4SLinus Torvalds	  This driver is also available as a module called sa1100_cs.
2151da177e4SLinus Torvalds
2161da177e4SLinus Torvaldsconfig PCMCIA_SA1111
2171da177e4SLinus Torvalds	tristate "SA1111 support"
2181da177e4SLinus Torvalds	depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
2190f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
2201da177e4SLinus Torvalds	help
2211da177e4SLinus Torvalds	  Say Y  here to include support for SA1111-based PCMCIA or CF
2221da177e4SLinus Torvalds	  sockets, found on the Jornada 720, Graphicsmaster and other
2231da177e4SLinus Torvalds	  StrongARM(R)/Xscale(R) embedded machines.
2241da177e4SLinus Torvalds
2251da177e4SLinus Torvalds	  This driver is also available as a module called sa1111_cs.
2261da177e4SLinus Torvalds
2271da177e4SLinus Torvaldsconfig PCMCIA_PXA2XX
2281da177e4SLinus Torvalds	tristate "PXA2xx support"
2291da177e4SLinus Torvalds	depends on ARM && ARCH_PXA && PCMCIA
23035978408SMarek Vašut	depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
231cc513ac0SRussell King		    || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
232c2de1c38SMarc Zyngier		    || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2)
2330f767de6SRussell King - ARM Linux	select PCMCIA_SOC_COMMON
2341da177e4SLinus Torvalds	help
2351da177e4SLinus Torvalds	  Say Y here to include support for the PXA2xx PCMCIA controller
2361da177e4SLinus Torvalds
237c9f50dddSDominik Brodowskiconfig PCMCIA_DEBUG
238c9f50dddSDominik Brodowski	bool "Enable debugging"
239c9f50dddSDominik Brodowski	depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
240c9f50dddSDominik Brodowski	help
241c9f50dddSDominik Brodowski	  Say Y here to enable debugging for the SoC PCMCIA layer.
242c9f50dddSDominik Brodowski	  You will need to choose the debugging level either via the
243c9f50dddSDominik Brodowski	  kernel command line, or module options depending whether
244c9f50dddSDominik Brodowski	  you build the drivers as modules.
245c9f50dddSDominik Brodowski
246c9f50dddSDominik Brodowski	  The kernel command line options are:
247c9f50dddSDominik Brodowski	    sa11xx_core.pc_debug=N
248c9f50dddSDominik Brodowski	    pxa2xx_core.pc_debug=N
249c9f50dddSDominik Brodowski
250c9f50dddSDominik Brodowski	  The module option is called pc_debug=N
251c9f50dddSDominik Brodowski
252c9f50dddSDominik Brodowski	  In all the above examples, N is the debugging verbosity
253c9f50dddSDominik Brodowski	  level.
254c9f50dddSDominik Brodowski
2551da177e4SLinus Torvaldsconfig PCMCIA_PROBE
2561da177e4SLinus Torvalds	bool
2576423efaaSDominik Brodowski	default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
2581da177e4SLinus Torvalds
2591da177e4SLinus Torvaldsconfig M32R_PCC
2601da177e4SLinus Torvalds	bool "M32R PCMCIA I/F"
2611da177e4SLinus Torvalds	depends on M32R && CHIP_M32700 && PCMCIA
262934bb7f8SHirokazu Takata	select PCCARD_NONSTATIC
2631da177e4SLinus Torvalds	help
2641da177e4SLinus Torvalds	  Say Y here to use the M32R PCMCIA controller.
2651da177e4SLinus Torvalds
2661da177e4SLinus Torvaldsconfig M32R_CFC
2671da177e4SLinus Torvalds	bool "M32R CF I/F Controller"
268934bb7f8SHirokazu Takata	depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
269934bb7f8SHirokazu Takata	select PCCARD_NONSTATIC
2701da177e4SLinus Torvalds	help
2711da177e4SLinus Torvalds	  Say Y here to use the M32R CompactFlash controller.
2721da177e4SLinus Torvalds
2731da177e4SLinus Torvaldsconfig M32R_CFC_NUM
2741da177e4SLinus Torvalds	int "M32R CF I/F number"
2751da177e4SLinus Torvalds	depends on M32R_CFC
276934bb7f8SHirokazu Takata	default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT
2771da177e4SLinus Torvalds	help
2781da177e4SLinus Torvalds	  Set the number of M32R CF slots.
2791da177e4SLinus Torvalds
2801da177e4SLinus Torvaldsconfig PCMCIA_VRC4171
2811da177e4SLinus Torvalds	tristate "NEC VRC4171 Card Controllers support"
282daaeb72bSYoichi Yuasa	depends on CPU_VR41XX && ISA && PCMCIA
2831da177e4SLinus Torvalds
2841da177e4SLinus Torvaldsconfig PCMCIA_VRC4173
2851da177e4SLinus Torvalds	tristate "NEC VRC4173 CARDU support"
2861da177e4SLinus Torvalds	depends on CPU_VR41XX && PCI && PCMCIA
2871da177e4SLinus Torvalds
288f74e48a5SDavid Brownellconfig OMAP_CF
289f74e48a5SDavid Brownell	tristate "OMAP CompactFlash Controller"
290f74e48a5SDavid Brownell	depends on PCMCIA && ARCH_OMAP16XX
291f74e48a5SDavid Brownell	help
292f74e48a5SDavid Brownell	  Say Y here to support the CompactFlash controller on OMAP.
293f74e48a5SDavid Brownell	  Note that this doesn't support "True IDE" mode.
294f74e48a5SDavid Brownell
295785e821eSMichael Hennerichconfig BFIN_CFPCMCIA
296785e821eSMichael Hennerich	tristate "Blackfin CompactFlash PCMCIA Driver"
297785e821eSMichael Hennerich	depends on PCMCIA && BLACKFIN
298785e821eSMichael Hennerich	help
299785e821eSMichael Hennerich	  Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
300785e821eSMichael Hennerich
301785e821eSMichael Hennerich
3022c1f3b7aSAndrew Victorconfig AT91_CF
3032c1f3b7aSAndrew Victor	tristate "AT91 CompactFlash Controller"
3042c1f3b7aSAndrew Victor	depends on PCMCIA && ARCH_AT91RM9200
3052c1f3b7aSAndrew Victor	help
3062c1f3b7aSAndrew Victor	  Say Y here to support the CompactFlash controller on AT91 chips.
3072c1f3b7aSAndrew Victor	  Or choose M to compile the driver as a module named "at91_cf".
3082c1f3b7aSAndrew Victor
3092b571a06SOlof Johanssonconfig ELECTRA_CF
3102b571a06SOlof Johansson	tristate "Electra CompactFlash Controller"
3112b571a06SOlof Johansson	depends on PCMCIA && PPC_PASEMI
3122b571a06SOlof Johansson	help
3132b571a06SOlof Johansson	  Say Y here to support the CompactFlash controller on the
3142b571a06SOlof Johansson	  PA Semi Electra eval board.
3152b571a06SOlof Johansson
3161da177e4SLinus Torvaldsconfig PCCARD_NONSTATIC
3171da177e4SLinus Torvalds	tristate
3181da177e4SLinus Torvalds
3193b27e942SDominik Brodowskiconfig PCCARD_IODYN
3203b27e942SDominik Brodowski	bool
3213b27e942SDominik Brodowski
3221da177e4SLinus Torvaldsendif	# PCCARD
323