pcmcia: avoid pccard_validate_cis failure in resume callpath
[safe/jmp/linux-2.6] / drivers / pcmcia / Kconfig
index 61cb4b2..d189e47 100644 (file)
@@ -2,11 +2,9 @@
 # PCCARD (PCMCIA/CardBus) bus subsystem configuration
 #
 
-menu "PCCARD (PCMCIA/CardBus) support"
-
-config PCCARD
+menuconfig PCCARD
        tristate "PCCard (PCMCIA/CardBus) support"
-       select HOTPLUG
+       depends on HOTPLUG
        ---help---
          Say Y here if you want to attach PCMCIA- or PC-cards to your Linux
          computer.  These are credit-card size devices such as network cards,
@@ -19,24 +17,6 @@ config PCCARD
 
 if PCCARD
 
-config PCMCIA_DEBUG
-       bool "Enable PCCARD debugging"
-       help
-         Say Y here to enable PCMCIA subsystem debugging.  You
-         will need to choose the debugging level either via the
-         kernel command line, or module options depending whether
-         you build the PCMCIA as modules.
-
-         The kernel command line options are:
-           pcmcia_core.pc_debug=N
-           pcmcia.pc_debug=N
-           sa11xx_core.pc_debug=N
-
-         The module option is called pc_debug=N
-
-         In all the above examples, N is the debugging verbosity
-         level.
-
 config PCMCIA
        tristate "16-bit PCMCIA support"
        select CRC32
@@ -71,20 +51,26 @@ config PCMCIA_LOAD_CIS
 
 config PCMCIA_IOCTL
        bool "PCMCIA control ioctl (obsolete)"
-       depends on PCMCIA
+       depends on PCMCIA && ARM && !SMP && !PREEMPT
        default y
        help
          If you say Y here, the deprecated ioctl interface to the PCMCIA
-         subsystem will be built. It is needed by cardmgr and cardctl
-         (pcmcia-cs) to function properly.
+         subsystem will be built. It is needed by the deprecated pcmcia-cs
+         tools (cardmgr, cardctl) to function properly.
 
          You should use the new pcmciautils package instead (see
          <file:Documentation/Changes> for location and details).
 
-         If unsure, say Y.
+         This config option will most likely be removed from kernel 2.6.35,
+         the associated code from kernel 2.6.36.
+
+         As the PCMCIA ioctl is not locking safe, it depends on !SMP and
+         !PREEMPT.
+
+         If unsure, say N.
 
 config CARDBUS
-       bool "32-bit CardBus support"   
+       bool "32-bit CardBus support"
        depends on PCI
        default y
        ---help---
@@ -104,11 +90,11 @@ config YENTA
        tristate "CardBus yenta-compatible bridge support"
        depends on PCI
        select CARDBUS if !EMBEDDED
-       select PCCARD_NONSTATIC
+       select PCCARD_NONSTATIC if PCMCIA != n
        ---help---
          This option enables support for CardBus host bridges.  Virtually
-         all modern PCMCIA bridges are CardBus compatible.  A "bridge" is 
-         the hardware inside your computer that PCMCIA cards are plugged 
+         all modern PCMCIA bridges are CardBus compatible.  A "bridge" is
+         the hardware inside your computer that PCMCIA cards are plugged
          into.
 
          To compile this driver as modules, choose M here: the
@@ -180,26 +166,51 @@ config TCIC
          PCMCIA cards are plugged into. If unsure, say N.
 
 config PCMCIA_M8XX
-        tristate "MPC8xx PCMCIA support"
-        depends on PCMCIA && PPC && 8xx 
-        select PCCARD_IODYN
-        help
-        Say Y here to include support for PowerPC 8xx series PCMCIA
-        controller.
-
-        This driver is also available as a module called m8xx_pcmcia.
+       tristate "MPC8xx PCMCIA support"
+       depends on PCCARD && PPC && 8xx
+       select PCCARD_IODYN if PCMCIA != n
+       help
+         Say Y here to include support for PowerPC 8xx series PCMCIA
+         controller.
 
-config HD64465_PCMCIA
-       tristate "HD64465 host bridge support"
-       depends on HD64465 && PCMCIA
+         This driver is also available as a module called m8xx_pcmcia.
 
 config PCMCIA_AU1X00
        tristate "Au1x00 pcmcia support"
        depends on SOC_AU1X00 && PCMCIA
 
+config PCMCIA_ALCHEMY_DEVBOARD
+       tristate "Alchemy Db/Pb1xxx PCMCIA socket services"
+       depends on SOC_AU1X00 && PCMCIA
+       select 64BIT_PHYS_ADDR
+       help
+         Enable this driver of you want PCMCIA support on your Alchemy
+         Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200 board.
+         NOT suitable for the PB1000!
+
+         This driver is also available as a module called db1xxx_ss.ko
+
+config PCMCIA_XXS1500
+       tristate "MyCable XXS1500 PCMCIA socket support"
+       depends on PCMCIA && MIPS_XXS1500
+       select 64BIT_PHYS_ADDR
+       help
+         Support for the PCMCIA/CF socket interface on MyCable XXS1500
+         systems.
+
+         This driver is also available as a module called xxs1500_ss.ko
+
+config PCMCIA_BCM63XX
+       tristate "bcm63xx pcmcia support"
+       depends on BCM63XX && PCMCIA
+
+config PCMCIA_SOC_COMMON
+       tristate
+
 config PCMCIA_SA1100
        tristate "SA1100 support"
        depends on ARM && ARCH_SA1100 && PCMCIA
+       select PCMCIA_SOC_COMMON
        help
          Say Y here to include support for SA11x0-based PCMCIA or CF
          sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/
@@ -210,6 +221,7 @@ config PCMCIA_SA1100
 config PCMCIA_SA1111
        tristate "SA1111 support"
        depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA
+       select PCMCIA_SOC_COMMON
        help
          Say Y  here to include support for SA1111-based PCMCIA or CF
          sockets, found on the Jornada 720, Graphicsmaster and other
@@ -220,9 +232,31 @@ config PCMCIA_SA1111
 config PCMCIA_PXA2XX
        tristate "PXA2xx support"
        depends on ARM && ARCH_PXA && PCMCIA
+       depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \
+                   || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \
+                   || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2)
+       select PCMCIA_SOC_COMMON
        help
          Say Y here to include support for the PXA2xx PCMCIA controller
 
+config PCMCIA_DEBUG
+       bool "Enable debugging"
+       depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX)
+       help
+         Say Y here to enable debugging for the SoC PCMCIA layer.
+         You will need to choose the debugging level either via the
+         kernel command line, or module options depending whether
+         you build the drivers as modules.
+
+         The kernel command line options are:
+           sa11xx_core.pc_debug=N
+           pxa2xx_core.pc_debug=N
+
+         The module option is called pc_debug=N
+
+         In all the above examples, N is the debugging verbosity
+         level.
+
 config PCMCIA_PROBE
        bool
        default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC
@@ -230,14 +264,12 @@ config PCMCIA_PROBE
 config M32R_PCC
        bool "M32R PCMCIA I/F"
        depends on M32R && CHIP_M32700 && PCMCIA
-       select PCCARD_NONSTATIC
        help
          Say Y here to use the M32R PCMCIA controller.
 
 config M32R_CFC
        bool "M32R CF I/F Controller"
        depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT)
-       select PCCARD_NONSTATIC
        help
          Say Y here to use the M32R CompactFlash controller.
 
@@ -263,6 +295,13 @@ config OMAP_CF
          Say Y here to support the CompactFlash controller on OMAP.
          Note that this doesn't support "True IDE" mode.
 
+config BFIN_CFPCMCIA
+       tristate "Blackfin CompactFlash PCMCIA Driver"
+       depends on PCMCIA && BLACKFIN
+       help
+         Say Y here to support the CompactFlash PCMCIA driver for Blackfin.
+
+
 config AT91_CF
        tristate "AT91 CompactFlash Controller"
        depends on PCMCIA && ARCH_AT91RM9200
@@ -270,6 +309,13 @@ config AT91_CF
          Say Y here to support the CompactFlash controller on AT91 chips.
          Or choose M to compile the driver as a module named "at91_cf".
 
+config ELECTRA_CF
+       tristate "Electra CompactFlash Controller"
+       depends on PCMCIA && PPC_PASEMI
+       help
+         Say Y here to support the CompactFlash controller on the
+         PA Semi Electra eval board.
+
 config PCCARD_NONSTATIC
        tristate
 
@@ -277,5 +323,3 @@ config PCCARD_IODYN
        bool
 
 endif  # PCCARD
-
-endmenu