pch_gpio: Support new device LAPIS Semiconductor ML7831 IOH
[linux-flexiantxendom0.git] / drivers / gpio / Kconfig
index d374320..4e04157 100644 (file)
@@ -1,5 +1,5 @@
 #
-# platform-neutral GPIO infrastructure and expanders
+# GPIO infrastructure and drivers
 #
 
 config ARCH_WANT_OPTIONAL_GPIOLIB
@@ -31,7 +31,7 @@ menuconfig GPIOLIB
        help
          This enables GPIO support through the generic GPIO library.
          You only need to enable this, if you also want to enable
-         one or more of the GPIO expansion card drivers below.
+         one or more of the GPIO drivers below.
 
          If unsure, say N.
 
@@ -63,24 +63,78 @@ config GPIO_SYSFS
          Kernel drivers may also request that a particular GPIO be
          exported to userspace; this can be useful when debugging.
 
-# put expanders in the right section, in alphabetical order
+config GPIO_GENERIC
+       tristate
+
+# put drivers in the right section, in alphabetical order
+
+config GPIO_DA9052
+       tristate "Dialog DA9052 GPIO"
+       depends on PMIC_DA9052
+       help
+         Say yes here to enable the GPIO driver for the DA9052 chip.
 
 config GPIO_MAX730X
        tristate
 
-comment "Memory mapped GPIO expanders:"
+comment "Memory mapped GPIO drivers:"
 
-config GPIO_BASIC_MMIO
-       tristate "Basic memory-mapped GPIO controllers support"
+config GPIO_GENERIC_PLATFORM
+       tristate "Generic memory-mapped GPIO controller support (MMIO platform device)"
+       select GPIO_GENERIC
        help
-         Say yes here to support basic memory-mapped GPIO controllers.
+         Say yes here to support basic platform_device memory-mapped GPIO controllers.
 
 config GPIO_IT8761E
        tristate "IT8761E GPIO support"
-       depends on GPIOLIB
        help
          Say yes here to support GPIO functionality of IT8761E super I/O chip.
 
+config GPIO_EP93XX
+       def_bool y
+       depends on ARCH_EP93XX
+       select GPIO_GENERIC
+
+config GPIO_MPC5200
+       def_bool y
+       depends on PPC_MPC52xx
+
+config GPIO_MPC8XXX
+       bool "MPC512x/MPC8xxx GPIO support"
+       depends on PPC_MPC512x || PPC_MPC831x || PPC_MPC834x || PPC_MPC837x || \
+                  FSL_SOC_BOOKE || PPC_86xx
+       help
+         Say Y here if you're going to use hardware that connects to the
+         MPC512x/831x/834x/837x/8572/8610 GPIOs.
+
+config GPIO_MSM_V1
+       tristate "Qualcomm MSM GPIO v1"
+       depends on GPIOLIB && ARCH_MSM
+       help
+         Say yes here to support the GPIO interface on ARM v6 based
+         Qualcomm MSM chips.  Most of the pins on the MSM can be
+         selected for GPIO, and are controlled by this driver.
+
+config GPIO_MSM_V2
+       tristate "Qualcomm MSM GPIO v2"
+       depends on GPIOLIB && ARCH_MSM
+       help
+         Say yes here to support the GPIO interface on ARM v7 based
+         Qualcomm MSM chips.  Most of the pins on the MSM can be
+         selected for GPIO, and are controlled by this driver.
+
+config GPIO_MXC
+       def_bool y
+       depends on ARCH_MXC
+       select GPIO_GENERIC
+       select GENERIC_IRQ_CHIP
+
+config GPIO_MXS
+       def_bool y
+       depends on ARCH_MXS
+       select GPIO_GENERIC
+       select GENERIC_IRQ_CHIP
+
 config GPIO_PL061
        bool "PrimeCell PL061 GPIO support"
        depends on ARM_AMBA
@@ -101,7 +155,7 @@ config GPIO_VR41XX
 
 config GPIO_SCH
        tristate "Intel SCH/TunnelCreek GPIO"
-       depends on GPIOLIB && PCI && X86
+       depends on PCI && X86
        select MFD_CORE
        select LPC_SCH
        help
@@ -116,12 +170,18 @@ config GPIO_SCH
          The Intel Tunnel Creek processor has 5 GPIOs powered by the
          core power rail and 9 from suspend power supply.
 
-         This driver can also be built as a module. If so, the module
-         will be called sch-gpio.
+config GPIO_U300
+       bool "ST-Ericsson U300 COH 901 335/571 GPIO"
+       depends on GPIOLIB && ARCH_U300
+       help
+         Say yes here to support GPIO interface on ST-Ericsson U300.
+         The names of the two IP block variants supported are
+         COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
+         ports of 8 GPIO pins each.
 
 config GPIO_VX855
        tristate "VIA VX855/VX875 GPIO"
-       depends on GPIOLIB && MFD_SUPPORT && PCI
+       depends on PCI
        select MFD_CORE
        select MFD_VX855
        help
@@ -181,9 +241,6 @@ config GPIO_PCA953X
 
          16 bits:      pca9535, pca9539, pca9555, tca6416
 
-         This driver can also be built as a module.  If so, the module
-         will be called pca953x.
-
 config GPIO_PCA953X_IRQ
        bool "Interrupt controller support for PCA953x"
        depends on GPIO_PCA953X=y
@@ -240,6 +297,12 @@ config GPIO_TC3589X
          This enables support for the GPIOs found on the TC3589X
          I/O Expander.
 
+config GPIO_TPS65912
+       tristate "TI TPS65912 GPIO"
+       depends on (MFD_TPS65912_I2C || MFD_TPS65912_SPI)
+       help
+         This driver supports TPS65912 gpio chip
+
 config GPIO_TWL4030
        tristate "TWL4030, TWL5030, and TPS659x0 GPIOs"
        depends on TWL4030_CORE
@@ -275,17 +338,12 @@ config GPIO_ADP5520
          This option enables support for on-chip GPIO found
          on Analog Devices ADP5520 PMICs.
 
-         To compile this driver as a module, choose M here: the module will
-         be called adp5520-gpio.
-
 config GPIO_ADP5588
        tristate "ADP5588 I2C GPIO expander"
        depends on I2C
        help
          This option enables support for 18 GPIOs found
          on Analog Devices ADP5588 GPIO Expanders.
-         To compile this driver as a module, choose M here: the module will be
-         called adp5588-gpio.
 
 config GPIO_ADP5588_IRQ
        bool "Interrupt controller support for ADP5588"
@@ -298,7 +356,7 @@ comment "PCI GPIO expanders:"
 
 config GPIO_CS5535
        tristate "AMD CS5535/CS5536 GPIO support"
-       depends on PCI && X86 && !CS5535_GPIO
+       depends on PCI && X86 && !CS5535_GPIO && MFD_CS5535
        help
          The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that
          can be used for quite a number of things.  The CS5535/6 is found on
@@ -329,16 +387,25 @@ config GPIO_LANGWELL
          Say Y here to support Intel Langwell/Penwell GPIO.
 
 config GPIO_PCH
-       tristate "PCH GPIO of Intel Topcliff"
+       tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO"
        depends on PCI && X86
+       select GENERIC_IRQ_CHIP
        help
          This driver is for PCH(Platform controller Hub) GPIO of Intel Topcliff
          which is an IOH(Input/Output Hub) for x86 embedded processor.
          This driver can access PCH GPIO device.
 
+         This driver also can be used for LAPIS Semiconductor IOH(Input/
+         Output Hub), ML7223 and ML7831.
+         ML7223 IOH is for MP(Media Phone) use.
+         ML7831 IOH is for general purpose use.
+         ML7223/ML7831 is companion chip for Intel Atom E6xx series.
+         ML7223/ML7831 is completely compatible for Intel EG20T PCH.
+
 config GPIO_ML_IOH
        tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support"
        depends on PCI
+       select GENERIC_IRQ_CHIP
        help
          ML7213 is companion chip for Intel Atom E6xx series.
          This driver can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/Output
@@ -347,14 +414,13 @@ config GPIO_ML_IOH
 
 config GPIO_TIMBERDALE
        bool "Support for timberdale GPIO IP"
-       depends on MFD_TIMBERDALE && GPIOLIB && HAS_IOMEM
+       depends on MFD_TIMBERDALE && HAS_IOMEM
        ---help---
        Add support for the GPIO IP in the timberdale FPGA.
 
 config GPIO_RDC321X
        tristate "RDC R-321x GPIO support"
-       depends on PCI && GPIOLIB
-       select MFD_SUPPORT
+       depends on PCI
        select MFD_CORE
        select MFD_RDC321X
        help
@@ -371,10 +437,11 @@ config GPIO_MAX7301
          GPIO driver for Maxim MAX7301 SPI-based GPIO expander.
 
 config GPIO_MCP23S08
-       tristate "Microchip MCP23Sxx I/O expander"
-       depends on SPI_MASTER
+       tristate "Microchip MCP23xxx I/O expander"
+       depends on SPI_MASTER || I2C
        help
-         SPI driver for Microchip MCP23S08/MPC23S17 I/O expanders.
+         SPI/I2C driver for Microchip MCP23S08/MCP23S17/MCP23008/MCP23017
+         I/O expanders.
          This provides a GPIO interface supporting inputs and outputs.
 
 config GPIO_MC33880
@@ -401,9 +468,6 @@ config GPIO_UCB1400
          This enables support for the Philips UCB1400 GPIO pins.
          The UCB1400 is an AC97 audio codec.
 
-         To compile this driver as a module, choose M here: the
-         module will be called ucb1400_gpio.
-
 comment "MODULbus GPIO expanders:"
 
 config GPIO_JANZ_TTL
@@ -414,9 +478,16 @@ config GPIO_JANZ_TTL
          This driver provides support for driving the pins in output
          mode only. Input mode is not supported.
 
-config AB8500_GPIO
+config GPIO_AB8500
        bool "ST-Ericsson AB8500 Mixed Signal Circuit gpio functions"
-       depends on AB8500_CORE
+       depends on AB8500_CORE && BROKEN
        help
          Select this to enable the AB8500 IC GPIO driver
+
+config GPIO_TPS65910
+       bool "TPS65910 GPIO"
+       depends on MFD_TPS65910
+       help
+         Select this option to enable GPIO driver for the TPS65910
+         chip family.
 endif