# 
 | 
# GPIO infrastructure and drivers 
 | 
# 
 | 
  
 | 
config ARCH_HAVE_CUSTOM_GPIO_H 
 | 
    bool 
 | 
    help 
 | 
      Selecting this config option from the architecture Kconfig allows 
 | 
      the architecture to provide a custom asm/gpio.h implementation 
 | 
      overriding the default implementations.  New uses of this are 
 | 
      strongly discouraged. 
 | 
  
 | 
menuconfig GPIOLIB 
 | 
    bool "GPIO Support" 
 | 
    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 drivers below. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
if GPIOLIB 
 | 
  
 | 
config GPIOLIB_FASTPATH_LIMIT 
 | 
    int "Maximum number of GPIOs for fast path" 
 | 
    range 32 512 
 | 
    default 512 
 | 
    help 
 | 
       This adjusts the point at which certain APIs will switch from 
 | 
       using a stack allocated buffer to a dynamically allocated buffer. 
 | 
  
 | 
       You shouldn't need to change this unless you really need to 
 | 
       optimize either stack space or performance. Change this carefully 
 | 
       since setting an incorrect value could cause stack corruption. 
 | 
  
 | 
config OF_GPIO 
 | 
    def_bool y 
 | 
    depends on OF 
 | 
    depends on HAS_IOMEM 
 | 
  
 | 
config GPIO_ACPI 
 | 
    def_bool y 
 | 
    depends on ACPI 
 | 
  
 | 
config GPIOLIB_IRQCHIP 
 | 
    select IRQ_DOMAIN 
 | 
    bool 
 | 
  
 | 
config DEBUG_GPIO 
 | 
    bool "Debug GPIO calls" 
 | 
    depends on DEBUG_KERNEL 
 | 
    help 
 | 
      Say Y here to add some extra checks and diagnostics to GPIO calls. 
 | 
      These checks help ensure that GPIOs have been properly initialized 
 | 
      before they are used, and that sleeping calls are not made from 
 | 
      non-sleeping contexts.  They can make bitbanged serial protocols 
 | 
      slower.  The diagnostics help catch the type of setup errors 
 | 
      that are most common when setting up new platforms or boards. 
 | 
  
 | 
config GPIO_SYSFS 
 | 
    bool "/sys/class/gpio/... (sysfs interface)" 
 | 
    depends on SYSFS 
 | 
    help 
 | 
      Say Y here to add a sysfs interface for GPIOs. 
 | 
  
 | 
      This is mostly useful to work around omissions in a system's 
 | 
      kernel support.  Those are common in custom and semicustom 
 | 
      hardware assembled using standard kernels with a minimum of 
 | 
      custom patches.  In those cases, userspace code may import 
 | 
      a given GPIO from the kernel, if no kernel driver requested it. 
 | 
  
 | 
      Kernel drivers may also request that a particular GPIO be 
 | 
      exported to userspace; this can be useful when debugging. 
 | 
  
 | 
config GPIO_GENERIC 
 | 
    depends on HAS_IOMEM # Only for IOMEM drivers 
 | 
    tristate 
 | 
  
 | 
# put drivers in the right section, in alphabetical order 
 | 
  
 | 
# This symbol is selected by both I2C and SPI expanders 
 | 
config GPIO_MAX730X 
 | 
    tristate 
 | 
  
 | 
menu "Memory mapped GPIO drivers" 
 | 
    depends on HAS_IOMEM 
 | 
  
 | 
config GPIO_74XX_MMIO 
 | 
    tristate "GPIO driver for 74xx-ICs with MMIO access" 
 | 
    depends on OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Say yes here to support GPIO functionality for 74xx-compatible ICs 
 | 
      with MMIO access. Compatible models include: 
 | 
        1 bit:    741G125 (Input), 741G74 (Output) 
 | 
        2 bits:    742G125 (Input), 7474 (Output) 
 | 
        4 bits:    74125 (Input), 74175 (Output) 
 | 
        6 bits:    74365 (Input), 74174 (Output) 
 | 
        8 bits:    74244 (Input), 74273 (Output) 
 | 
        16 bits:    741624 (Input), 7416374 (Output) 
 | 
  
 | 
config GPIO_ALTERA 
 | 
    tristate "Altera GPIO" 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say Y or M here to build support for the Altera PIO device. 
 | 
  
 | 
      If driver is built as a module it will be called gpio-altera. 
 | 
  
 | 
config GPIO_AMDPT 
 | 
    tristate "AMD Promontory GPIO support" 
 | 
    depends on ACPI 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      driver for GPIO functionality on Promontory IOHub 
 | 
      Require ACPI ASL code to enumerate as a platform device. 
 | 
  
 | 
config GPIO_ASPEED 
 | 
    tristate "Aspeed GPIO support" 
 | 
    depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say Y here to support Aspeed AST2400 and AST2500 GPIO controllers. 
 | 
  
 | 
config GPIO_ATH79 
 | 
    tristate "Atheros AR71XX/AR724X/AR913X GPIO support" 
 | 
    default y if ATH79 
 | 
    depends on ATH79 || COMPILE_TEST 
 | 
    select GPIO_GENERIC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Select this option to enable GPIO driver for 
 | 
      Atheros AR71XX/AR724X/AR913X SoC devices. 
 | 
  
 | 
config GPIO_RASPBERRYPI_EXP 
 | 
    tristate "Raspberry Pi 3 GPIO Expander" 
 | 
    default RASPBERRYPI_FIRMWARE 
 | 
    depends on OF_GPIO 
 | 
    # Make sure not 'y' when RASPBERRYPI_FIRMWARE is 'm'. This can only 
 | 
    # happen when COMPILE_TEST=y, hence the added !RASPBERRYPI_FIRMWARE. 
 | 
    depends on (ARCH_BCM2835 && RASPBERRYPI_FIRMWARE) || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE) 
 | 
    help 
 | 
      Turn on GPIO support for the expander on Raspberry Pi 3 boards, using 
 | 
      the firmware mailbox to communicate with VideoCore on BCM283x chips. 
 | 
  
 | 
config GPIO_BCM_KONA 
 | 
    bool "Broadcom Kona GPIO" 
 | 
    depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST) 
 | 
    help 
 | 
      Turn on GPIO support for Broadcom "Kona" chips. 
 | 
  
 | 
config GPIO_BRCMSTB 
 | 
    tristate "BRCMSTB GPIO support" 
 | 
    default y if (ARCH_BRCMSTB || BMIPS_GENERIC) 
 | 
    depends on OF_GPIO && (ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST) 
 | 
    select GPIO_GENERIC 
 | 
    select IRQ_DOMAIN 
 | 
    help 
 | 
      Say yes here to enable GPIO support for Broadcom STB (BCM7XXX) SoCs. 
 | 
  
 | 
config GPIO_CLPS711X 
 | 
    tristate "CLPS711X GPIO support" 
 | 
    depends on ARCH_CLPS711X || COMPILE_TEST 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Say yes here to support GPIO on CLPS711X SoCs. 
 | 
  
 | 
config GPIO_DAVINCI 
 | 
    bool "TI Davinci/Keystone GPIO support" 
 | 
    default y if ARCH_DAVINCI 
 | 
    depends on ARM && (ARCH_DAVINCI || ARCH_KEYSTONE) 
 | 
    help 
 | 
      Say yes here to enable GPIO support for TI Davinci/Keystone SoCs. 
 | 
  
 | 
config GPIO_DWAPB 
 | 
    tristate "Synopsys DesignWare APB GPIO driver" 
 | 
    select GPIO_GENERIC 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    help 
 | 
      Say Y or M here to build support for the Synopsys DesignWare APB 
 | 
      GPIO block. 
 | 
  
 | 
config GPIO_EIC_SPRD 
 | 
    tristate "Spreadtrum EIC support" 
 | 
    depends on ARCH_SPRD || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support Spreadtrum EIC device. 
 | 
  
 | 
config GPIO_EM 
 | 
    tristate "Emma Mobile GPIO" 
 | 
    depends on (ARCH_EMEV2 || COMPILE_TEST) && OF_GPIO 
 | 
    help 
 | 
      Say yes here to support GPIO on Renesas Emma Mobile SoCs. 
 | 
  
 | 
config GPIO_EP93XX 
 | 
    def_bool y 
 | 
    depends on ARCH_EP93XX 
 | 
    select GPIO_GENERIC 
 | 
  
 | 
config GPIO_EXAR 
 | 
    tristate "Support for GPIO pins on XR17V352/354/358" 
 | 
    depends on SERIAL_8250_EXAR 
 | 
    help 
 | 
      Selecting this option will enable handling of GPIO pins present 
 | 
      on Exar XR17V352/354/358 chips. 
 | 
  
 | 
config GPIO_GE_FPGA 
 | 
    bool "GE FPGA based GPIO" 
 | 
    depends on GE_FPGA 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Support for common GPIO functionality provided on some GE Single Board 
 | 
      Computers. 
 | 
  
 | 
      This driver provides basic support (configure as input or output, read 
 | 
      and write pin state) for GPIO implemented in a number of GE single 
 | 
      board computers. 
 | 
  
 | 
config GPIO_FTGPIO010 
 | 
    bool "Faraday FTGPIO010 GPIO" 
 | 
    depends on OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    default (ARCH_GEMINI || ARCH_MOXART) 
 | 
    help 
 | 
      Support for common GPIOs from the Faraday FTGPIO010 IP core, found in 
 | 
      Cortina systems Gemini platforms, Moxa ART and others. 
 | 
  
 | 
config GPIO_GENERIC_PLATFORM 
 | 
    tristate "Generic memory-mapped GPIO controller support (MMIO platform device)" 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Say yes here to support basic platform_device memory-mapped GPIO controllers. 
 | 
  
 | 
config GPIO_GRGPIO 
 | 
    tristate "Aeroflex Gaisler GRGPIO support" 
 | 
    depends on OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    select IRQ_DOMAIN 
 | 
    help 
 | 
      Select this to support Aeroflex Gaisler GRGPIO cores from the GRLIB 
 | 
      VHDL IP core library. 
 | 
  
 | 
config GPIO_HLWD 
 | 
    tristate "Nintendo Wii (Hollywood) GPIO" 
 | 
    depends on OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Select this to support the GPIO controller of the Nintendo Wii. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_ICH 
 | 
    tristate "Intel ICH GPIO" 
 | 
    depends on PCI && X86 
 | 
    select MFD_CORE 
 | 
    select LPC_ICH 
 | 
    help 
 | 
      Say yes here to support the GPIO functionality of a number of Intel 
 | 
      ICH-based chipsets.  Currently supported devices: ICH6, ICH7, ICH8 
 | 
      ICH9, ICH10, Series 5/3400 (eg Ibex Peak), Series 6/C200 (eg 
 | 
      Cougar Point), NM10 (Tiger Point), and 3100 (Whitmore Lake). 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_INGENIC 
 | 
    tristate "Ingenic JZ47xx SoCs GPIO support" 
 | 
    depends on OF 
 | 
    depends on MACH_INGENIC || COMPILE_TEST 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support the GPIO functionality present on the 
 | 
      JZ4740 and JZ4780 SoCs from Ingenic. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_IOP 
 | 
    tristate "Intel IOP GPIO" 
 | 
    depends on ARCH_IOP32X || ARCH_IOP33X || COMPILE_TEST 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Say yes here to support the GPIO functionality of a number of Intel 
 | 
      IOP32X or IOP33X. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_LOONGSON 
 | 
    bool "Loongson-2/3 GPIO support" 
 | 
    depends on CPU_LOONGSON2 || CPU_LOONGSON3 
 | 
    help 
 | 
      driver for GPIO functionality on Loongson-2F/3A/3B processors. 
 | 
  
 | 
config GPIO_LPC18XX 
 | 
    tristate "NXP LPC18XX/43XX GPIO support" 
 | 
    default y if ARCH_LPC18XX 
 | 
    depends on OF_GPIO && (ARCH_LPC18XX || COMPILE_TEST) 
 | 
    help 
 | 
      Select this option to enable GPIO driver for 
 | 
      NXP LPC18XX/43XX devices. 
 | 
  
 | 
config GPIO_LYNXPOINT 
 | 
    tristate "Intel Lynxpoint GPIO support" 
 | 
    depends on ACPI && X86 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      driver for GPIO functionality on Intel Lynxpoint PCH chipset 
 | 
      Requires ACPI device enumeration code to set up a platform device. 
 | 
  
 | 
config GPIO_MB86S7X 
 | 
    tristate "GPIO support for Fujitsu MB86S7x Platforms" 
 | 
    help 
 | 
      Say yes here to support the GPIO controller in Fujitsu MB86S70 SoCs. 
 | 
  
 | 
config GPIO_MENZ127 
 | 
    tristate "MEN 16Z127 GPIO support" 
 | 
    depends on MCB 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
     Say yes here to support the MEN 16Z127 GPIO Controller 
 | 
  
 | 
config GPIO_MM_LANTIQ 
 | 
    bool "Lantiq Memory mapped GPIOs" 
 | 
    depends on LANTIQ && SOC_XWAY 
 | 
    help 
 | 
      This enables support for memory mapped GPIOs on the External Bus Unit 
 | 
      (EBU) found on Lantiq SoCs. The gpios are output only as they are 
 | 
      created by attaching a 16bit latch to the bus. 
 | 
  
 | 
config GPIO_MOCKUP 
 | 
    tristate "GPIO Testing Driver" 
 | 
    depends on GPIOLIB && SYSFS 
 | 
    select GPIO_SYSFS 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    select IRQ_SIM 
 | 
    help 
 | 
      This enables GPIO Testing driver, which provides a way to test GPIO 
 | 
      subsystem through sysfs(or char device) and debugfs. GPIO_SYSFS 
 | 
      must be selected for this test. 
 | 
      User could use it through the script in 
 | 
      tools/testing/selftests/gpio/gpio-mockup.sh. Reference the usage in 
 | 
      it. 
 | 
  
 | 
config GPIO_MPC5200 
 | 
    def_bool y 
 | 
    depends on PPC_MPC52xx 
 | 
  
 | 
config GPIO_MPC8XXX 
 | 
    bool "MPC512x/MPC8xxx/QorIQ GPIO support" 
 | 
    depends on PPC_MPC512x || PPC_MPC831x || PPC_MPC834x || PPC_MPC837x || \ 
 | 
           FSL_SOC_BOOKE || PPC_86xx || ARCH_LAYERSCAPE || ARM || \ 
 | 
           COMPILE_TEST 
 | 
    select GPIO_GENERIC 
 | 
    select IRQ_DOMAIN 
 | 
    help 
 | 
      Say Y here if you're going to use hardware that connects to the 
 | 
      MPC512x/831x/834x/837x/8572/8610/QorIQ GPIOs. 
 | 
  
 | 
config GPIO_MT7621 
 | 
    bool "Mediatek MT7621 GPIO Support" 
 | 
    depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support the Mediatek MT7621 SoC GPIO device 
 | 
  
 | 
config GPIO_MVEBU 
 | 
    def_bool y 
 | 
    depends on PLAT_ORION || ARCH_MVEBU 
 | 
    depends on OF_GPIO 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    select REGMAP_MMIO 
 | 
  
 | 
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_OCTEON 
 | 
    tristate "Cavium OCTEON GPIO" 
 | 
    depends on GPIOLIB && CAVIUM_OCTEON_SOC 
 | 
    default y 
 | 
    help 
 | 
      Say yes here to support the on-chip GPIO lines on the OCTEON 
 | 
      family of SOCs. 
 | 
  
 | 
config GPIO_OMAP 
 | 
    tristate "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST 
 | 
    default y if ARCH_OMAP 
 | 
    depends on ARM 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to enable GPIO support for TI OMAP SoCs. 
 | 
  
 | 
config GPIO_PL061 
 | 
    bool "PrimeCell PL061 GPIO support" 
 | 
    depends on ARM_AMBA 
 | 
    select IRQ_DOMAIN 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support the PrimeCell PL061 GPIO device 
 | 
  
 | 
config GPIO_PMIC_EIC_SPRD 
 | 
    tristate "Spreadtrum PMIC EIC support" 
 | 
    depends on MFD_SC27XX_PMIC || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support Spreadtrum PMIC EIC device. 
 | 
  
 | 
config GPIO_PXA 
 | 
    bool "PXA GPIO support" 
 | 
    depends on ARCH_PXA || ARCH_MMP 
 | 
    help 
 | 
      Say yes here to support the PXA GPIO device 
 | 
  
 | 
config GPIO_RCAR 
 | 
    tristate "Renesas R-Car GPIO" 
 | 
    depends on ARCH_RENESAS || COMPILE_TEST 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support GPIO on Renesas R-Car SoCs. 
 | 
  
 | 
config GPIO_REG 
 | 
    bool 
 | 
    help 
 | 
      A 32-bit single register GPIO fixed in/out implementation.  This 
 | 
      can be used to represent any register as a set of GPIO signals. 
 | 
  
 | 
config GPIO_ROCKCHIP 
 | 
    tristate "Rockchip GPIO support" 
 | 
    depends on ARCH_ROCKCHIP || COMPILE_TEST 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    default ARCH_ROCKCHIP 
 | 
    help 
 | 
      Say yes here to support GPIO on Rockchip SoCs. 
 | 
  
 | 
config GPIO_SPEAR_SPICS 
 | 
    bool "ST SPEAr13xx SPI Chip Select as GPIO support" 
 | 
    depends on PLAT_SPEAR 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    help 
 | 
      Say yes here to support ST SPEAr SPI Chip Select as GPIO device 
 | 
  
 | 
config GPIO_SPRD 
 | 
    tristate "Spreadtrum GPIO support" 
 | 
    depends on ARCH_SPRD || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support Spreadtrum GPIO device. 
 | 
  
 | 
config GPIO_STA2X11 
 | 
    bool "STA2x11/ConneXt GPIO support" 
 | 
    depends on MFD_STA2X11 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    help 
 | 
      Say yes here to support the STA2x11/ConneXt GPIO device. 
 | 
      The GPIO module has 128 GPIO pins with alternate functions. 
 | 
  
 | 
config GPIO_STP_XWAY 
 | 
    bool "XWAY STP GPIOs" 
 | 
    depends on SOC_XWAY 
 | 
    help 
 | 
      This enables support for the Serial To Parallel (STP) unit found on 
 | 
      XWAY SoC. The STP allows the SoC to drive a shift registers cascade, 
 | 
      that can be up to 24 bit. This peripheral is aimed at driving leds. 
 | 
      Some of the gpios/leds can be auto updated by the soc with dsl and 
 | 
      phy status. 
 | 
  
 | 
config GPIO_SYSCON 
 | 
    tristate "GPIO based on SYSCON" 
 | 
    depends on MFD_SYSCON && OF 
 | 
    help 
 | 
      Say yes here to support GPIO functionality though SYSCON driver. 
 | 
  
 | 
config GPIO_TB10X 
 | 
    bool 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    select OF_GPIO 
 | 
  
 | 
config GPIO_TEGRA 
 | 
    bool "NVIDIA Tegra GPIO support" 
 | 
    default ARCH_TEGRA 
 | 
    depends on ARCH_TEGRA || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    help 
 | 
      Say yes here to support GPIO pins on NVIDIA Tegra SoCs. 
 | 
  
 | 
config GPIO_TEGRA186 
 | 
    tristate "NVIDIA Tegra186 GPIO support" 
 | 
    default ARCH_TEGRA_186_SOC 
 | 
    depends on ARCH_TEGRA_186_SOC || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support GPIO pins on NVIDIA Tegra186 SoCs. 
 | 
  
 | 
config GPIO_TS4800 
 | 
    tristate "TS-4800 DIO blocks and compatibles" 
 | 
    depends on OF_GPIO 
 | 
    depends on SOC_IMX51 || COMPILE_TEST 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      This driver support TS-4800 FPGA GPIO controllers. 
 | 
  
 | 
config GPIO_THUNDERX 
 | 
    tristate "Cavium ThunderX/OCTEON-TX GPIO" 
 | 
    depends on ARCH_THUNDER || (64BIT && COMPILE_TEST) 
 | 
    depends on PCI_MSI 
 | 
    select IRQ_DOMAIN_HIERARCHY 
 | 
    select IRQ_FASTEOI_HIERARCHY_HANDLERS 
 | 
    help 
 | 
      Say yes here to support the on-chip GPIO lines on the ThunderX 
 | 
      and OCTEON-TX families of SoCs. 
 | 
  
 | 
config GPIO_UNIPHIER 
 | 
    tristate "UniPhier GPIO support" 
 | 
    depends on ARCH_UNIPHIER || COMPILE_TEST 
 | 
    depends on OF_GPIO 
 | 
    select IRQ_DOMAIN_HIERARCHY 
 | 
    help 
 | 
      Say yes here to support UniPhier GPIOs. 
 | 
  
 | 
config GPIO_VF610 
 | 
    def_bool y 
 | 
    depends on ARCH_MXC && SOC_VF610 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support Vybrid vf610 GPIOs. 
 | 
  
 | 
config GPIO_VR41XX 
 | 
    tristate "NEC VR4100 series General-purpose I/O Uint support" 
 | 
    depends on CPU_VR41XX 
 | 
    help 
 | 
      Say yes here to support the NEC VR4100 series General-purpose I/O Uint 
 | 
  
 | 
config GPIO_VX855 
 | 
    tristate "VIA VX855/VX875 GPIO" 
 | 
    depends on (X86 || COMPILE_TEST) && PCI 
 | 
    select MFD_CORE 
 | 
    select MFD_VX855 
 | 
    help 
 | 
      Support access to the VX855/VX875 GPIO lines through the gpio library. 
 | 
  
 | 
      This driver provides common support for accessing the device, 
 | 
      additional drivers must be enabled in order to use the 
 | 
      functionality of the device. 
 | 
  
 | 
config GPIO_XGENE 
 | 
    bool "APM X-Gene GPIO controller support" 
 | 
    depends on ARM64 && OF_GPIO 
 | 
    help 
 | 
      This driver is to support the GPIO block within the APM X-Gene SoC 
 | 
      platform's generic flash controller. The GPIO pins are muxed with 
 | 
      the generic flash controller's address and data pins. Say yes 
 | 
      here to enable the GFC GPIO functionality. 
 | 
  
 | 
config GPIO_XGENE_SB 
 | 
    tristate "APM X-Gene GPIO standby controller support" 
 | 
    depends on ARCH_XGENE && OF_GPIO 
 | 
    select GPIO_GENERIC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    select IRQ_DOMAIN_HIERARCHY 
 | 
    help 
 | 
      This driver supports the GPIO block within the APM X-Gene 
 | 
      Standby Domain. Say yes here to enable the GPIO functionality. 
 | 
  
 | 
config GPIO_XILINX 
 | 
    tristate "Xilinx GPIO support" 
 | 
    depends on OF_GPIO 
 | 
    help 
 | 
      Say yes here to support the Xilinx FPGA GPIO device 
 | 
  
 | 
config GPIO_XLP 
 | 
    tristate "Netlogic XLP GPIO support" 
 | 
    depends on OF_GPIO && (CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST) 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      This driver provides support for GPIO interface on Netlogic XLP MIPS64 
 | 
      SoCs. Currently supported XLP variants are XLP8XX, XLP3XX, XLP2XX, 
 | 
      XLP9XX and XLP5XX. The same GPIO controller block is also present in 
 | 
      Cavium's ThunderX2 CN99XX SoCs. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_XTENSA 
 | 
    bool "Xtensa GPIO32 support" 
 | 
    depends on XTENSA 
 | 
    depends on HAVE_XTENSA_GPIO32 
 | 
    depends on !SMP 
 | 
    help 
 | 
      Say yes here to support the Xtensa internal GPIO32 IMPWIRE (input) 
 | 
      and EXPSTATE (output) ports 
 | 
  
 | 
config GPIO_ZEVIO 
 | 
    bool "LSI ZEVIO SoC memory mapped GPIOs" 
 | 
    depends on ARM && OF_GPIO 
 | 
    help 
 | 
      Say yes here to support the GPIO controller in LSI ZEVIO SoCs. 
 | 
  
 | 
config GPIO_ZYNQ 
 | 
    tristate "Xilinx Zynq GPIO support" 
 | 
    depends on ARCH_ZYNQ || ARCH_ZYNQMP 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support Xilinx Zynq GPIO controller. 
 | 
  
 | 
config GPIO_ZX 
 | 
    bool "ZTE ZX GPIO support" 
 | 
    depends on ARCH_ZX || COMPILE_TEST 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to support the GPIO device on ZTE ZX SoCs. 
 | 
  
 | 
config GPIO_LOONGSON1 
 | 
    tristate "Loongson1 GPIO support" 
 | 
    depends on MACH_LOONGSON32 
 | 
    select GPIO_GENERIC 
 | 
    help 
 | 
      Say Y or M here to support GPIO on Loongson1 SoCs. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "Port-mapped I/O GPIO drivers" 
 | 
    depends on X86 # Unconditional I/O space access 
 | 
  
 | 
config GPIO_104_DIO_48E 
 | 
    tristate "ACCES 104-DIO-48E GPIO support" 
 | 
    depends on PC104 
 | 
    select ISA_BUS_API 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the ACCES 104-DIO-48E series (104-DIO-48E, 
 | 
      104-DIO-24E). The base port addresses for the devices may be 
 | 
      configured via the base module parameter. The interrupt line numbers 
 | 
      for the devices may be configured via the irq module parameter. 
 | 
  
 | 
config GPIO_104_IDIO_16 
 | 
    tristate "ACCES 104-IDIO-16 GPIO support" 
 | 
    depends on PC104 
 | 
    select ISA_BUS_API 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the ACCES 104-IDIO-16 family (104-IDIO-16, 
 | 
      104-IDIO-16E, 104-IDO-16, 104-IDIO-8, 104-IDIO-8E, 104-IDO-8). The 
 | 
      base port addresses for the devices may be configured via the base 
 | 
      module parameter. The interrupt line numbers for the devices may be 
 | 
      configured via the irq module parameter. 
 | 
  
 | 
config GPIO_104_IDI_48 
 | 
    tristate "ACCES 104-IDI-48 GPIO support" 
 | 
    depends on PC104 
 | 
    select ISA_BUS_API 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the ACCES 104-IDI-48 family (104-IDI-48A, 
 | 
      104-IDI-48AC, 104-IDI-48B, 104-IDI-48BC). The base port addresses for 
 | 
      the devices may be configured via the base module parameter. The 
 | 
      interrupt line numbers for the devices may be configured via the irq 
 | 
      module parameter. 
 | 
  
 | 
config GPIO_F7188X 
 | 
    tristate "F71869, F71869A, F71882FG, F71889F and F81866 GPIO support" 
 | 
    help 
 | 
      This option enables support for GPIOs found on Fintek Super-I/O 
 | 
      chips F71869, F71869A, F71882FG, F71889F and F81866. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called f7188x-gpio. 
 | 
  
 | 
config GPIO_GPIO_MM 
 | 
    tristate "Diamond Systems GPIO-MM GPIO support" 
 | 
    depends on PC104 
 | 
    select ISA_BUS_API 
 | 
    help 
 | 
      Enables GPIO support for the Diamond Systems GPIO-MM and GPIO-MM-12. 
 | 
  
 | 
      The Diamond Systems GPIO-MM device features 48 lines of digital I/O 
 | 
      via the emulation of dual 82C55A PPI chips. This driver provides GPIO 
 | 
      support for these 48 channels of digital I/O. 
 | 
  
 | 
      The base port addresses for the devices may be configured via the base 
 | 
      array module parameter. 
 | 
  
 | 
config GPIO_IT87 
 | 
    tristate "IT87xx GPIO support" 
 | 
    help 
 | 
      Say yes here to support GPIO functionality of IT87xx Super I/O chips. 
 | 
  
 | 
      This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and 
 | 
      supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as 
 | 
      well. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called gpio_it87 
 | 
  
 | 
config GPIO_SCH 
 | 
    tristate "Intel SCH/TunnelCreek/Centerton/Quark X1000 GPIO" 
 | 
    depends on (X86 || COMPILE_TEST) && PCI 
 | 
    select MFD_CORE 
 | 
    select LPC_SCH 
 | 
    help 
 | 
      Say yes here to support GPIO interface on Intel Poulsbo SCH, 
 | 
      Intel Tunnel Creek processor, Intel Centerton processor or 
 | 
      Intel Quark X1000 SoC. 
 | 
  
 | 
      The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are 
 | 
      powered by the core power rail and are turned off during sleep 
 | 
      modes (S3 and higher). The remaining four GPIOs are powered by 
 | 
      the Intel SCH suspend power supply. These GPIOs remain 
 | 
      active during S3. The suspend powered GPIOs can be used to wake the 
 | 
      system from the Suspend-to-RAM state. 
 | 
  
 | 
      The Intel Tunnel Creek processor has 5 GPIOs powered by the 
 | 
      core power rail and 9 from suspend power supply. 
 | 
  
 | 
      The Intel Centerton processor has a total of 30 GPIO pins. 
 | 
      Twenty-one are powered by the core power rail and 9 from the 
 | 
      suspend power supply. 
 | 
  
 | 
      The Intel Quark X1000 SoC has 2 GPIOs powered by the core 
 | 
      power well and 6 from the suspend power well. 
 | 
  
 | 
config GPIO_SCH311X 
 | 
    tristate "SMSC SCH311x SuperI/O GPIO" 
 | 
    help 
 | 
      Driver to enable the GPIOs found on SMSC SMSC SCH3112, SCH3114 and 
 | 
      SCH3116 "Super I/O" chipsets. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called gpio-sch311x. 
 | 
  
 | 
config GPIO_TS5500 
 | 
    tristate "TS-5500 DIO blocks and compatibles" 
 | 
    depends on TS5500 || COMPILE_TEST 
 | 
    help 
 | 
      This driver supports Digital I/O exposed by pin blocks found on some 
 | 
      Technologic Systems platforms. It includes, but is not limited to, 3 
 | 
      blocks of the TS-5500: DIO1, DIO2 and the LCD port, and the TS-5600 
 | 
      LCD port. 
 | 
  
 | 
config GPIO_WINBOND 
 | 
    tristate "Winbond Super I/O GPIO support" 
 | 
    select ISA_BUS_API 
 | 
    help 
 | 
      This option enables support for GPIOs found on Winbond Super I/O 
 | 
      chips. 
 | 
      Currently, only W83627UHG (also known as Nuvoton NCT6627UD) is 
 | 
      supported. 
 | 
  
 | 
      You will need to provide a module parameter "gpios", or a 
 | 
      boot-time parameter "gpio_winbond.gpios" with a bitmask of GPIO 
 | 
      ports to enable (bit 0 is GPIO1, bit 1 is GPIO2, etc.). 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called gpio-winbond. 
 | 
  
 | 
config GPIO_WS16C48 
 | 
    tristate "WinSystems WS16C48 GPIO support" 
 | 
    select ISA_BUS_API 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the WinSystems WS16C48. The base port 
 | 
      addresses for the devices may be configured via the base module 
 | 
      parameter. The interrupt line numbers for the devices may be 
 | 
      configured via the irq module parameter. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "I2C GPIO expanders" 
 | 
    depends on I2C 
 | 
  
 | 
config GPIO_ADP5588 
 | 
    tristate "ADP5588 I2C GPIO expander" 
 | 
    help 
 | 
      This option enables support for 18 GPIOs found 
 | 
      on Analog Devices ADP5588 GPIO Expanders. 
 | 
  
 | 
config GPIO_ADP5588_IRQ 
 | 
    bool "Interrupt controller support for ADP5588" 
 | 
    depends on GPIO_ADP5588=y 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to enable the adp5588 to be used as an interrupt 
 | 
      controller. It requires the driver to be built in the kernel. 
 | 
  
 | 
config GPIO_ADNP 
 | 
    tristate "Avionic Design N-bit GPIO expander" 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      This option enables support for N GPIOs found on Avionic Design 
 | 
      I2C GPIO expanders. The register space will be extended by powers 
 | 
      of two, so the controller will need to accommodate for that. For 
 | 
      example: if a controller provides 48 pins, 6 registers will be 
 | 
      enough to represent all pins, but the driver will assume a 
 | 
      register layout for 64 pins (8 registers). 
 | 
  
 | 
config GPIO_MAX7300 
 | 
    tristate "Maxim MAX7300 GPIO expander" 
 | 
    select GPIO_MAX730X 
 | 
    help 
 | 
      GPIO driver for Maxim MAX7300 I2C-based GPIO expander. 
 | 
  
 | 
config GPIO_MAX732X 
 | 
    tristate "MAX7319, MAX7320-7327 I2C Port Expanders" 
 | 
    help 
 | 
      Say yes here to support the MAX7319, MAX7320-7327 series of I2C 
 | 
      Port Expanders. Each IO port on these chips has a fixed role of 
 | 
      Input (designated by 'I'), Push-Pull Output ('O'), or Open-Drain 
 | 
      Input and Output (designed by 'P'). The combinations are listed 
 | 
      below: 
 | 
  
 | 
      8 bits:    max7319 (8I), max7320 (8O), max7321 (8P), 
 | 
              max7322 (4I4O), max7323 (4P4O) 
 | 
  
 | 
      16 bits:    max7324 (8I8O), max7325 (8P8O), 
 | 
              max7326 (4I12O), max7327 (4P12O) 
 | 
  
 | 
      Board setup code must specify the model to use, and the start 
 | 
      number for these GPIOs. 
 | 
  
 | 
config GPIO_MAX732X_IRQ 
 | 
    bool "Interrupt controller support for MAX732x" 
 | 
    depends on GPIO_MAX732X=y 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to enable the max732x to be used as an interrupt 
 | 
      controller. It requires the driver to be built in the kernel. 
 | 
  
 | 
config GPIO_MC9S08DZ60 
 | 
    bool "MX35 3DS BOARD MC9S08DZ60 GPIO functions" 
 | 
    depends on I2C=y && MACH_MX35_3DS 
 | 
    help 
 | 
      Select this to enable the MC9S08DZ60 GPIO driver 
 | 
  
 | 
config GPIO_PCA953X 
 | 
    tristate "PCA95[357]x, PCA9698, TCA64xx, and MAX7310 I/O ports" 
 | 
    help 
 | 
      Say yes here to provide access to several register-oriented 
 | 
      SMBus I/O expanders, made mostly by NXP or TI.  Compatible 
 | 
      models include: 
 | 
  
 | 
      4 bits:    pca9536, pca9537 
 | 
  
 | 
      8 bits:    max7310, max7315, pca6107, pca9534, pca9538, pca9554, 
 | 
            pca9556, pca9557, pca9574, tca6408, tca9554, xra1202 
 | 
  
 | 
      16 bits:    max7312, max7313, pca9535, pca9539, pca9555, pca9575, 
 | 
            tca6416 
 | 
  
 | 
      24 bits:    tca6424 
 | 
  
 | 
      40 bits:    pca9505, pca9698 
 | 
  
 | 
config GPIO_PCA953X_IRQ 
 | 
    bool "Interrupt controller support for PCA953x" 
 | 
    depends on GPIO_PCA953X=y 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say yes here to enable the pca953x to be used as an interrupt 
 | 
      controller. It requires the driver to be built in the kernel. 
 | 
  
 | 
config GPIO_PCF857X 
 | 
    tristate "PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders" 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    select IRQ_DOMAIN 
 | 
    help 
 | 
      Say yes here to provide access to most "quasi-bidirectional" I2C 
 | 
      GPIO expanders used for additional digital outputs or inputs. 
 | 
      Most of these parts are from NXP, though TI is a second source for 
 | 
      some of them.  Compatible models include: 
 | 
  
 | 
      8 bits:   pcf8574, pcf8574a, pca8574, pca8574a, 
 | 
                pca9670, pca9672, pca9674, pca9674a, 
 | 
              max7328, max7329 
 | 
  
 | 
      16 bits:  pcf8575, pcf8575c, pca8575, 
 | 
                pca9671, pca9673, pca9675 
 | 
  
 | 
      Your board setup code will need to declare the expanders in 
 | 
      use, and assign numbers to the GPIOs they expose.  Those GPIOs 
 | 
      can then be used from drivers and other kernel code, just like 
 | 
      other GPIOs, but only accessible from task contexts. 
 | 
  
 | 
      This driver provides an in-kernel interface to those GPIOs using 
 | 
      platform-neutral GPIO calls. 
 | 
  
 | 
config GPIO_TPIC2810 
 | 
    tristate "TPIC2810 8-Bit I2C GPO expander" 
 | 
    help 
 | 
      Say yes here to enable the GPO driver for the TI TPIC2810 chip. 
 | 
  
 | 
      To compile this driver as a module, choose M here: the module will 
 | 
      be called gpio-tpic2810. 
 | 
  
 | 
config GPIO_TS4900 
 | 
    tristate "Technologic Systems FPGA I2C GPIO" 
 | 
    depends on SOC_IMX6 || COMPILE_TEST 
 | 
    select REGMAP_I2C 
 | 
    help 
 | 
      Say yes here to enabled the GPIO driver for Technologic's FPGA core. 
 | 
      Series supported include TS-4100, TS-4900, TS-7970 and TS-7990. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "MFD GPIO expanders" 
 | 
  
 | 
config GPIO_ADP5520 
 | 
    tristate "GPIO Support for ADP5520 PMIC" 
 | 
    depends on PMIC_ADP5520 
 | 
    help 
 | 
      This option enables support for on-chip GPIO found 
 | 
      on Analog Devices ADP5520 PMICs. 
 | 
  
 | 
config GPIO_ALTERA_A10SR 
 | 
    tristate "Altera Arria10 System Resource GPIO" 
 | 
    depends on MFD_ALTERA_A10SR 
 | 
    help 
 | 
      Driver for Arria10 Development Kit GPIO expansion which 
 | 
      includes reads of pushbuttons and DIP switches as well 
 | 
      as writes to LEDs. 
 | 
  
 | 
config GPIO_ARIZONA 
 | 
    tristate "Wolfson Microelectronics Arizona class devices" 
 | 
    depends on MFD_ARIZONA 
 | 
    help 
 | 
      Support for GPIOs on Wolfson Arizona class devices. 
 | 
  
 | 
config GPIO_BD9571MWV 
 | 
    tristate "ROHM BD9571 GPIO support" 
 | 
    depends on MFD_BD9571MWV 
 | 
    help 
 | 
      Support for GPIOs on ROHM BD9571 PMIC. There are two GPIOs 
 | 
      available on the ROHM PMIC in total, both of which can also 
 | 
      generate interrupts. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module 
 | 
      will be called gpio-bd9571mwv. 
 | 
  
 | 
config GPIO_CRYSTAL_COVE 
 | 
    tristate "GPIO support for Crystal Cove PMIC" 
 | 
    depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Support for GPIO pins on Crystal Cove PMIC. 
 | 
  
 | 
      Say Yes if you have a Intel SoC based tablet with Crystal Cove PMIC 
 | 
      inside. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module will be 
 | 
      called gpio-crystalcove. 
 | 
  
 | 
config GPIO_CS5535 
 | 
    tristate "AMD CS5535/CS5536 GPIO support" 
 | 
    depends on X86 || MIPS || COMPILE_TEST 
 | 
    depends on 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 
 | 
      AMD Geode and Lemote Yeeloong devices. 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
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_DA9055 
 | 
    tristate "Dialog Semiconductor DA9055 GPIO" 
 | 
    depends on MFD_DA9055 
 | 
    help 
 | 
      Say yes here to enable the GPIO driver for the DA9055 chip. 
 | 
  
 | 
      The Dialog DA9055 PMIC chip has 3 GPIO pins that can be 
 | 
      be controller by this driver. 
 | 
  
 | 
      If driver is built as a module it will be called gpio-da9055. 
 | 
  
 | 
config GPIO_DLN2 
 | 
    tristate "Diolan DLN2 GPIO support" 
 | 
    depends on MFD_DLN2 
 | 
    select GPIOLIB_IRQCHIP 
 | 
  
 | 
    help 
 | 
      Select this option to enable GPIO driver for the Diolan DLN2 
 | 
      board. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module 
 | 
      will be called gpio-dln2. 
 | 
  
 | 
config HTC_EGPIO 
 | 
    bool "HTC EGPIO support" 
 | 
    depends on GPIOLIB && ARM 
 | 
    help 
 | 
        This driver supports the CPLD egpio chip present on 
 | 
        several HTC phones.  It provides basic support for input 
 | 
        pins, output pins, and irqs. 
 | 
  
 | 
config GPIO_JANZ_TTL 
 | 
    tristate "Janz VMOD-TTL Digital IO Module" 
 | 
    depends on MFD_JANZ_CMODIO 
 | 
    help 
 | 
      This enables support for the Janz VMOD-TTL Digital IO module. 
 | 
      This driver provides support for driving the pins in output 
 | 
      mode only. Input mode is not supported. 
 | 
  
 | 
config GPIO_KEMPLD 
 | 
    tristate "Kontron ETX / COMexpress GPIO" 
 | 
    depends on MFD_KEMPLD 
 | 
    help 
 | 
      This enables support for the PLD GPIO interface on some Kontron ETX 
 | 
      and COMexpress (ETXexpress) modules. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module will be 
 | 
      called gpio-kempld. 
 | 
  
 | 
config GPIO_LP3943 
 | 
    tristate "TI/National Semiconductor LP3943 GPIO expander" 
 | 
    depends on MFD_LP3943 
 | 
    help 
 | 
      GPIO driver for LP3943 MFD. 
 | 
      LP3943 can be used as a GPIO expander which provides up to 16 GPIOs. 
 | 
      Open drain outputs are required for this usage. 
 | 
  
 | 
config GPIO_LP873X 
 | 
    tristate "TI LP873X GPO" 
 | 
    depends on MFD_TI_LP873X 
 | 
    help 
 | 
      This driver supports the GPO on TI Lp873x PMICs. 2 GPOs are present 
 | 
      on LP873X PMICs. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module will be 
 | 
          called gpio-lp873x. 
 | 
  
 | 
config GPIO_LP87565 
 | 
    tristate "TI LP87565 GPIO" 
 | 
    depends on MFD_TI_LP87565 
 | 
    help 
 | 
      This driver supports the GPIO on TI Lp873565 PMICs. 3 GPIOs are present 
 | 
      on LP87565 PMICs. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module will be 
 | 
      called gpio-lp87565. 
 | 
  
 | 
config GPIO_MADERA 
 | 
    tristate "Cirrus Logic Madera class codecs" 
 | 
    depends on PINCTRL_MADERA 
 | 
    help 
 | 
      Support for GPIOs on Cirrus Logic Madera class codecs. 
 | 
  
 | 
config GPIO_MAX77620 
 | 
    tristate "GPIO support for PMIC MAX77620 and MAX20024" 
 | 
    depends on MFD_MAX77620 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      GPIO driver for MAX77620 and MAX20024 PMIC from Maxim Semiconductor. 
 | 
      MAX77620 PMIC has 8 pins that can be configured as GPIOs. The 
 | 
      driver also provides interrupt support for each of the gpios. 
 | 
      Say yes here to enable the max77620 to be used as gpio controller. 
 | 
  
 | 
config GPIO_MSIC 
 | 
    bool "Intel MSIC mixed signal gpio support" 
 | 
    depends on (X86 || COMPILE_TEST) && MFD_INTEL_MSIC 
 | 
    help 
 | 
      Enable support for GPIO on intel MSIC controllers found in 
 | 
      intel MID devices 
 | 
  
 | 
config GPIO_PALMAS 
 | 
    bool "TI PALMAS series PMICs GPIO" 
 | 
    depends on MFD_PALMAS 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the TI PALMAS 
 | 
      series chip family. 
 | 
  
 | 
config GPIO_RC5T583 
 | 
    bool "RICOH RC5T583 GPIO" 
 | 
    depends on MFD_RC5T583 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the Ricoh RC5T583 
 | 
      chip family. 
 | 
      This driver provides the support for driving/reading the gpio pins 
 | 
      of RC5T583 device through standard gpio library. 
 | 
  
 | 
config GPIO_STMPE 
 | 
    bool "STMPE GPIOs" 
 | 
    depends on MFD_STMPE 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      This enables support for the GPIOs found on the STMPE I/O 
 | 
      Expanders. 
 | 
  
 | 
config GPIO_TC3589X 
 | 
    bool "TC3589X GPIOs" 
 | 
    depends on MFD_TC3589X 
 | 
    depends on OF_GPIO 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      This enables support for the GPIOs found on the TC3589X 
 | 
      I/O Expander. 
 | 
  
 | 
config GPIO_TIMBERDALE 
 | 
    bool "Support for timberdale GPIO IP" 
 | 
    depends on MFD_TIMBERDALE 
 | 
    ---help--- 
 | 
    Add support for the GPIO IP in the timberdale FPGA. 
 | 
  
 | 
config GPIO_TPS65086 
 | 
    tristate "TI TPS65086 GPO" 
 | 
    depends on MFD_TPS65086 
 | 
    help 
 | 
      This driver supports the GPO on TI TPS65086x PMICs. 
 | 
  
 | 
config GPIO_TPS65218 
 | 
    tristate "TPS65218 GPIO" 
 | 
    depends on MFD_TPS65218 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the TPS65218 
 | 
      chip family. 
 | 
  
 | 
config GPIO_TPS6586X 
 | 
    bool "TPS6586X GPIO" 
 | 
    depends on MFD_TPS6586X 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the TPS6586X 
 | 
      chip family. 
 | 
  
 | 
config GPIO_TPS65910 
 | 
    bool "TPS65910 GPIO" 
 | 
    depends on MFD_TPS65910 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the TPS65910 
 | 
      chip family. 
 | 
  
 | 
config GPIO_TPS65912 
 | 
    tristate "TI TPS65912 GPIO" 
 | 
    depends on MFD_TPS65912 
 | 
    help 
 | 
      This driver supports TPS65912 gpio chip 
 | 
  
 | 
config GPIO_TPS68470 
 | 
    bool "TPS68470 GPIO" 
 | 
    depends on MFD_TPS68470 
 | 
    help 
 | 
      Select this option to enable GPIO driver for the TPS68470 
 | 
      chip family. 
 | 
      There are 7 GPIOs and few sensor related GPIOs supported 
 | 
      by the TPS68470. While the 7 GPIOs can be configured as 
 | 
      input or output as appropriate, the sensor related GPIOs 
 | 
      are "output only" GPIOs. 
 | 
  
 | 
      This driver config is bool, as the GPIO functionality 
 | 
      of the TPS68470 must be available before dependent 
 | 
      drivers are loaded. 
 | 
  
 | 
config GPIO_TWL4030 
 | 
    tristate "TWL4030, TWL5030, and TPS659x0 GPIOs" 
 | 
    depends on TWL4030_CORE 
 | 
    help 
 | 
      Say yes here to access the GPIO signals of various multi-function 
 | 
      power management chips from Texas Instruments. 
 | 
  
 | 
config GPIO_TWL6040 
 | 
    tristate "TWL6040 GPO" 
 | 
    depends on TWL6040_CORE 
 | 
    help 
 | 
      Say yes here to access the GPO signals of twl6040 
 | 
      audio chip from Texas Instruments. 
 | 
  
 | 
config GPIO_UCB1400 
 | 
    tristate "Philips UCB1400 GPIO" 
 | 
    depends on UCB1400_CORE 
 | 
    help 
 | 
      This enables support for the Philips UCB1400 GPIO pins. 
 | 
      The UCB1400 is an AC97 audio codec. 
 | 
  
 | 
config GPIO_WHISKEY_COVE 
 | 
    tristate "GPIO support for Whiskey Cove PMIC" 
 | 
    depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC_BXTWC 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Support for GPIO pins on Whiskey Cove PMIC. 
 | 
  
 | 
      Say Yes if you have a Intel SoC based tablet with Whiskey Cove PMIC 
 | 
      inside. 
 | 
  
 | 
      This driver can also be built as a module. If so, the module will be 
 | 
      called gpio-wcove. 
 | 
  
 | 
config GPIO_WM831X 
 | 
    tristate "WM831x GPIOs" 
 | 
    depends on MFD_WM831X 
 | 
    help 
 | 
      Say yes here to access the GPIO signals of WM831x power management 
 | 
      chips from Wolfson Microelectronics. 
 | 
  
 | 
config GPIO_WM8350 
 | 
    tristate "WM8350 GPIOs" 
 | 
    depends on MFD_WM8350 
 | 
    help 
 | 
      Say yes here to access the GPIO signals of WM8350 power management 
 | 
      chips from Wolfson Microelectronics. 
 | 
  
 | 
config GPIO_WM8994 
 | 
    tristate "WM8994 GPIOs" 
 | 
    depends on MFD_WM8994 
 | 
    help 
 | 
      Say yes here to access the GPIO signals of WM8994 audio hub 
 | 
      CODECs from Wolfson Microelectronics. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "PCI GPIO expanders" 
 | 
    depends on PCI 
 | 
  
 | 
config GPIO_AMD8111 
 | 
    tristate "AMD 8111 GPIO driver" 
 | 
    depends on X86 || COMPILE_TEST 
 | 
    help 
 | 
      The AMD 8111 south bridge contains 32 GPIO pins which can be used. 
 | 
  
 | 
      Note, that usually system firmware/ACPI handles GPIO pins on their 
 | 
      own and users might easily break their systems with uncarefull usage 
 | 
      of this driver! 
 | 
  
 | 
      If unsure, say N 
 | 
  
 | 
config GPIO_BT8XX 
 | 
    tristate "BT8XX GPIO abuser" 
 | 
    depends on VIDEO_BT848=n 
 | 
    help 
 | 
      The BT8xx frame grabber chip has 24 GPIO pins that can be abused 
 | 
      as a cheap PCI GPIO card. 
 | 
  
 | 
      This chip can be found on Miro, Hauppauge and STB TV-cards. 
 | 
  
 | 
      The card needs to be physically altered for using it as a 
 | 
      GPIO card. For more information on how to build a GPIO card 
 | 
      from a BT8xx TV card, see the documentation file at 
 | 
      Documentation/bt8xxgpio.txt 
 | 
  
 | 
      If unsure, say N. 
 | 
  
 | 
config GPIO_INTEL_MID 
 | 
    bool "Intel MID GPIO support" 
 | 
    depends on X86_INTEL_MID 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say Y here to support Intel MID GPIO. 
 | 
  
 | 
config GPIO_MERRIFIELD 
 | 
    tristate "Intel Merrifield GPIO support" 
 | 
    depends on X86_INTEL_MID 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Say Y here to support Intel Merrifield GPIO. 
 | 
  
 | 
config GPIO_ML_IOH 
 | 
    tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support" 
 | 
    depends on X86 || COMPILE_TEST 
 | 
    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 
 | 
      Hub) which is for IVI(In-Vehicle Infotainment) use. 
 | 
      This driver can access the IOH's GPIO device. 
 | 
  
 | 
config GPIO_PCH 
 | 
    tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO" 
 | 
    depends on X86_32 || MIPS || COMPILE_TEST 
 | 
    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_PCI_IDIO_16 
 | 
    tristate "ACCES PCI-IDIO-16 GPIO support" 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the ACCES PCI-IDIO-16. An interrupt is 
 | 
      generated when any of the inputs change state (low to high or high to 
 | 
      low). Input filter control is not supported by this driver, and the 
 | 
      input filters are deactivated by this driver. 
 | 
  
 | 
config GPIO_PCIE_IDIO_24 
 | 
    tristate "ACCES PCIe-IDIO-24 GPIO support" 
 | 
    select GPIOLIB_IRQCHIP 
 | 
    help 
 | 
      Enables GPIO support for the ACCES PCIe-IDIO-24 family (PCIe-IDIO-24, 
 | 
      PCIe-IDI-24, PCIe-IDO-24, PCIe-IDIO-12). An interrupt is generated 
 | 
      when any of the inputs change state (low to high or high to low). 
 | 
      Input filter control is not supported by this driver, and the input 
 | 
      filters are deactivated by this driver. 
 | 
  
 | 
config GPIO_RDC321X 
 | 
    tristate "RDC R-321x GPIO support" 
 | 
    select MFD_CORE 
 | 
    select MFD_RDC321X 
 | 
    help 
 | 
      Support for the RDC R321x SoC GPIOs over southbridge 
 | 
      PCI configuration space. 
 | 
  
 | 
config GPIO_SODAVILLE 
 | 
    bool "Intel Sodaville GPIO support" 
 | 
    depends on X86 && OF 
 | 
    select GPIO_GENERIC 
 | 
    select GENERIC_IRQ_CHIP 
 | 
    help 
 | 
      Say Y here to support Intel Sodaville GPIO. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "SPI GPIO expanders" 
 | 
    depends on SPI_MASTER 
 | 
  
 | 
config GPIO_74X164 
 | 
    tristate "74x164 serial-in/parallel-out 8-bits shift register" 
 | 
    depends on OF_GPIO 
 | 
    help 
 | 
      Driver for 74x164 compatible serial-in/parallel-out 8-outputs 
 | 
      shift registers. This driver can be used to provide access 
 | 
      to more gpio outputs. 
 | 
  
 | 
config GPIO_MAX3191X 
 | 
    tristate "Maxim MAX3191x industrial serializer" 
 | 
    select CRC8 
 | 
    help 
 | 
      GPIO driver for Maxim MAX31910, MAX31911, MAX31912, MAX31913, 
 | 
      MAX31953 and MAX31963 industrial serializer, a daisy-chainable 
 | 
      chip to make 8 digital 24V inputs available via SPI.  Supports 
 | 
      CRC checksums to guard against electromagnetic interference, 
 | 
      as well as undervoltage and overtemperature detection. 
 | 
  
 | 
config GPIO_MAX7301 
 | 
    tristate "Maxim MAX7301 GPIO expander" 
 | 
    select GPIO_MAX730X 
 | 
    help 
 | 
      GPIO driver for Maxim MAX7301 SPI-based GPIO expander. 
 | 
  
 | 
config GPIO_MC33880 
 | 
    tristate "Freescale MC33880 high-side/low-side switch" 
 | 
    help 
 | 
      SPI driver for Freescale MC33880 high-side/low-side switch. 
 | 
      This provides GPIO interface supporting inputs and outputs. 
 | 
  
 | 
config GPIO_PISOSR 
 | 
    tristate "Generic parallel-in/serial-out shift register" 
 | 
    help 
 | 
      GPIO driver for SPI compatible parallel-in/serial-out shift 
 | 
      registers. These are input only devices. 
 | 
  
 | 
config GPIO_XRA1403 
 | 
    tristate "EXAR XRA1403 16-bit GPIO expander" 
 | 
    select REGMAP_SPI 
 | 
    help 
 | 
      GPIO driver for EXAR XRA1403 16-bit SPI-based GPIO expander. 
 | 
  
 | 
endmenu 
 | 
  
 | 
menu "USB GPIO expanders" 
 | 
    depends on USB 
 | 
  
 | 
config GPIO_VIPERBOARD 
 | 
    tristate "Viperboard GPIO a & b support" 
 | 
    depends on MFD_VIPERBOARD 
 | 
    help 
 | 
      Say yes here to access the GPIO signals of Nano River 
 | 
      Technologies Viperboard. There are two GPIO chips on the 
 | 
      board: gpioa and gpiob. 
 | 
          See viperboard API specification and Nano 
 | 
          River Tech's viperboard.h for detailed meaning 
 | 
          of the module parameters. 
 | 
  
 | 
endmenu 
 | 
  
 | 
endif 
 |