^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # GPIO infrastructure and drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) config ARCH_HAVE_CUSTOM_GPIO_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) Selecting this config option from the architecture Kconfig allows
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) the architecture to provide a custom asm/gpio.h implementation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) overriding the default implementations. New uses of this are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) strongly discouraged.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) menuconfig GPIOLIB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) bool "GPIO Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) This enables GPIO support through the generic GPIO library.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) You only need to enable this, if you also want to enable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) one or more of the GPIO drivers below.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) if GPIOLIB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) config GPIOLIB_FASTPATH_LIMIT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) int "Maximum number of GPIOs for fast path"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) range 32 512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) default 512
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) This adjusts the point at which certain APIs will switch from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) using a stack allocated buffer to a dynamically allocated buffer.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) You shouldn't need to change this unless you really need to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) optimize either stack space or performance. Change this carefully
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) since setting an incorrect value could cause stack corruption.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) config OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) depends on OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) config GPIO_ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) depends on ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) config GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) config DEBUG_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) bool "Debug GPIO calls"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) depends on DEBUG_KERNEL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) Say Y here to add some extra checks and diagnostics to GPIO calls.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) These checks help ensure that GPIOs have been properly initialized
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) before they are used, and that sleeping calls are not made from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) non-sleeping contexts. They can make bitbanged serial protocols
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) slower. The diagnostics help catch the type of setup errors
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) that are most common when setting up new platforms or boards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) config GPIO_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) bool "/sys/class/gpio/... (sysfs interface)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) depends on SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) Say Y here to add the legacy sysfs interface for GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) This ABI is deprecated. If you want to use GPIO from userspace,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) use the character device /dev/gpiochipN with the appropriate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) ioctl() operations instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) config GPIO_CDEV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) prompt "Character device (/dev/gpiochipN) support" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) Say Y here to add the character device /dev/gpiochipN interface
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) for GPIOs. The character device allows userspace to control GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) using ioctl() operations.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) Only say N if you are sure that the GPIO character device is not
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) required.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) config GPIO_CDEV_V1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) bool "Support GPIO ABI Version 1"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) depends on GPIO_CDEV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) Say Y here to support version 1 of the GPIO CDEV ABI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) This ABI version is deprecated.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) Please use the latest ABI for new developments.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) config GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) depends on HAS_IOMEM # Only for IOMEM drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) config GPIO_REGMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) depends on REGMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) # put drivers in the right section, in alphabetical order
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) # This symbol is selected by both I2C and SPI expanders
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) config GPIO_MAX730X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) menu "Memory mapped GPIO drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) config GPIO_74XX_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) tristate "GPIO driver for 74xx-ICs with MMIO access"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) Say yes here to support GPIO functionality for 74xx-compatible ICs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) with MMIO access. Compatible models include:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 1 bit: 741G125 (Input), 741G74 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 2 bits: 742G125 (Input), 7474 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 4 bits: 74125 (Input), 74175 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 6 bits: 74365 (Input), 74174 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 8 bits: 74244 (Input), 74273 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 16 bits: 741624 (Input), 7416374 (Output)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) config GPIO_ALTERA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) tristate "Altera GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) Say Y or M here to build support for the Altera PIO device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) If driver is built as a module it will be called gpio-altera.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) config GPIO_AMDPT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) tristate "AMD Promontory GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) depends on ACPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) driver for GPIO functionality on Promontory IOHub
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) Require ACPI ASL code to enumerate as a platform device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) config GPIO_ASPEED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) tristate "Aspeed GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) Say Y here to support Aspeed AST2400 and AST2500 GPIO controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) config GPIO_ASPEED_SGPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) bool "Aspeed SGPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) Say Y here to support Aspeed AST2500 SGPIO functionality.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) config GPIO_ATH79
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) tristate "Atheros AR71XX/AR724X/AR913X GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) default y if ATH79
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) depends on ATH79 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) Select this option to enable GPIO driver for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) Atheros AR71XX/AR724X/AR913X SoC devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) config GPIO_RASPBERRYPI_EXP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) tristate "Raspberry Pi 3 GPIO Expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) default RASPBERRYPI_FIRMWARE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) # Make sure not 'y' when RASPBERRYPI_FIRMWARE is 'm'. This can only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) # happen when COMPILE_TEST=y, hence the added !RASPBERRYPI_FIRMWARE.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) depends on (ARCH_BCM2835 && RASPBERRYPI_FIRMWARE) || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) Turn on GPIO support for the expander on Raspberry Pi 3 boards, using
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) the firmware mailbox to communicate with VideoCore on BCM283x chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) config GPIO_BCM_KONA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) bool "Broadcom Kona GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) Turn on GPIO support for Broadcom "Kona" chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) config GPIO_BCM_XGS_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) tristate "BRCM XGS iProc GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) default ARCH_BCM_IPROC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) Say yes here to enable GPIO support for Broadcom XGS iProc SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) config GPIO_BRCMSTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) tristate "BRCMSTB GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) default y if (ARCH_BRCMSTB || BMIPS_GENERIC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) depends on OF_GPIO && (ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) Say yes here to enable GPIO support for Broadcom STB (BCM7XXX) SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) config GPIO_CADENCE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) tristate "Cadence GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) Say yes here to enable support for Cadence GPIO controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) config GPIO_CLPS711X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) tristate "CLPS711X GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) depends on ARCH_CLPS711X || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) Say yes here to support GPIO on CLPS711X SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) config GPIO_DAVINCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) bool "TI Davinci/Keystone GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) default y if ARCH_DAVINCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) depends on (ARM || ARM64) && (ARCH_DAVINCI || ARCH_KEYSTONE || ARCH_K3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) Say yes here to enable GPIO support for TI Davinci/Keystone SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) config GPIO_DWAPB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) tristate "Synopsys DesignWare APB GPIO driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) Say Y or M here to build support for the Synopsys DesignWare APB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) GPIO block.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) config GPIO_EIC_SPRD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) tristate "Spreadtrum EIC support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) depends on ARCH_SPRD || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) Say yes here to support Spreadtrum EIC device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) config GPIO_EM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) tristate "Emma Mobile GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) depends on (ARCH_EMEV2 || COMPILE_TEST) && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) Say yes here to support GPIO on Renesas Emma Mobile SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) config GPIO_EP93XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) depends on ARCH_EP93XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) config GPIO_EXAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) tristate "Support for GPIO pins on XR17V352/354/358"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) depends on SERIAL_8250_EXAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) Selecting this option will enable handling of GPIO pins present
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) on Exar XR17V352/354/358 chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) config GPIO_GE_FPGA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) bool "GE FPGA based GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) depends on GE_FPGA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) Support for common GPIO functionality provided on some GE Single Board
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) Computers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) This driver provides basic support (configure as input or output, read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) and write pin state) for GPIO implemented in a number of GE single
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) board computers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) config GPIO_FTGPIO010
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) bool "Faraday FTGPIO010 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) default (ARCH_GEMINI || ARCH_MOXART)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) Support for common GPIOs from the Faraday FTGPIO010 IP core, found in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) Cortina systems Gemini platforms, Moxa ART and others.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) config GPIO_GENERIC_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) tristate "Generic memory-mapped GPIO controller support (MMIO platform device)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) Say yes here to support basic platform_device memory-mapped GPIO controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) config GPIO_GRGPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) tristate "Aeroflex Gaisler GRGPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) Select this to support Aeroflex Gaisler GRGPIO cores from the GRLIB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) VHDL IP core library.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) config GPIO_HLWD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) tristate "Nintendo Wii (Hollywood) GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) Select this to support the GPIO controller of the Nintendo Wii.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) config GPIO_ICH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) tristate "Intel ICH GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) depends on PCI && X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) select MFD_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) select LPC_ICH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) Say yes here to support the GPIO functionality of a number of Intel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) ICH-based chipsets. Currently supported devices: ICH6, ICH7, ICH8
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) ICH9, ICH10, Series 5/3400 (eg Ibex Peak), Series 6/C200 (eg
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) Cougar Point), NM10 (Tiger Point), and 3100 (Whitmore Lake).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) config GPIO_IOP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) tristate "Intel IOP GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) depends on ARCH_IOP32X || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) Say yes here to support the GPIO functionality of a number of Intel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) IOP32X or IOP33X.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) config GPIO_IXP4XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) bool "Intel IXP4xx GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) depends on ARM # For <asm/mach-types.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) depends on ARCH_IXP4XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) Say yes here to support the GPIO functionality of a number of Intel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) IXP4xx series of chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) config GPIO_LOGICVC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) tristate "Xylon LogiCVC GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) depends on MFD_SYSCON && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) Say yes here to support GPIO functionality of the Xylon LogiCVC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) programmable logic block.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) config GPIO_LOONGSON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) bool "Loongson-2/3 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) depends on CPU_LOONGSON2EF || CPU_LOONGSON64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) driver for GPIO functionality on Loongson-2F/3A/3B processors.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) config GPIO_LPC18XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) tristate "NXP LPC18XX/43XX GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) default y if ARCH_LPC18XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) depends on OF_GPIO && (ARCH_LPC18XX || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) Select this option to enable GPIO driver for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) NXP LPC18XX/43XX devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) config GPIO_LPC32XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) tristate "NXP LPC32XX GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) depends on OF_GPIO && (ARCH_LPC32XX || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) Select this option to enable GPIO driver for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) NXP LPC32XX devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) config GPIO_MB86S7X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) tristate "GPIO support for Fujitsu MB86S7x Platforms"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) Say yes here to support the GPIO controller in Fujitsu MB86S70 SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) config GPIO_MENZ127
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) tristate "MEN 16Z127 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) depends on MCB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) Say yes here to support the MEN 16Z127 GPIO Controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) config GPIO_MM_LANTIQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) bool "Lantiq Memory mapped GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) depends on LANTIQ && SOC_XWAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) This enables support for memory mapped GPIOs on the External Bus Unit
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) (EBU) found on Lantiq SoCs. The gpios are output only as they are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) created by attaching a 16bit latch to the bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) config GPIO_MPC5200
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) depends on PPC_MPC52xx
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) config GPIO_MPC8XXX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) bool "MPC512x/MPC8xxx/QorIQ GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) depends on PPC_MPC512x || PPC_MPC831x || PPC_MPC834x || PPC_MPC837x || \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) FSL_SOC_BOOKE || PPC_86xx || ARCH_LAYERSCAPE || ARM || \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) Say Y here if you're going to use hardware that connects to the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) MPC512x/831x/834x/837x/8572/8610/QorIQ GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) config GPIO_MT7621
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) bool "Mediatek MT7621 GPIO Support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) Say yes here to support the Mediatek MT7621 SoC GPIO device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) config GPIO_MVEBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) depends on PLAT_ORION || ARCH_MVEBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) select REGMAP_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) config GPIO_MXC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) tristate "i.MX GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426) depends on ARCH_MXC || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) config GPIO_MXS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431) bool "Freescale MXS GPIO support" if COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) depends on ARCH_MXS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) default y if ARCH_MXS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) config GPIO_OCTEON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) tristate "Cavium OCTEON GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) depends on CAVIUM_OCTEON_SOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) Say yes here to support the on-chip GPIO lines on the OCTEON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) family of SOCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) config GPIO_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) tristate "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) default y if ARCH_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) depends on ARM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) Say yes here to enable GPIO support for TI OMAP SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) config GPIO_PL061
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) tristate "PrimeCell PL061 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) depends on ARM_AMBA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) Say yes here to support the PrimeCell PL061 GPIO device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) config GPIO_PMIC_EIC_SPRD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) tristate "Spreadtrum PMIC EIC support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) depends on MFD_SC27XX_PMIC || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) Say yes here to support Spreadtrum PMIC EIC device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) config GPIO_PXA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) bool "PXA GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474) Say yes here to support the PXA GPIO device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) config GPIO_RCAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) tristate "Renesas R-Car GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) Say yes here to support GPIO on Renesas R-Car SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) config GPIO_RDA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) bool "RDA Micro GPIO controller support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) depends on ARCH_RDA || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) Say Y here to support RDA Micro GPIO controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) config GPIO_REG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) A 32-bit single register GPIO fixed in/out implementation. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) can be used to represent any register as a set of GPIO signals.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) config GPIO_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) tristate "Rockchip GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) depends on ARCH_ROCKCHIP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502) default ARCH_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) Say yes here to support GPIO on Rockchip SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) config GPIO_SAMA5D2_PIOBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) tristate "SAMA5D2 PIOBU GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) depends on MFD_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) select GPIO_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) Say yes here to use the PIOBU pins as GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) PIOBU pins on the SAMA5D2 can be used as GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) The difference from regular GPIOs is that they
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) maintain their value during backup/self-refresh.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) config GPIO_SIFIVE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) bool "SiFive GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) select REGMAP_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) Say yes here to support the GPIO device on SiFive SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) config GPIO_SIOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) tristate "SIOX GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) depends on SIOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533) Say yes here to support SIOX I/O devices. These are units connected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) via a SIOX bus and have a number of fixed-direction I/O lines.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) config GPIO_SNPS_CREG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) bool "Synopsys GPIO via CREG (Control REGisters) driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) depends on ARC || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) This driver supports GPIOs via CREG on various Synopsys SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) This is a single-register MMIO GPIO driver for complex cases
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) where only several fields in register belong to GPIO lines and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) each GPIO line owns a field with different length and on/off value.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) config GPIO_SPEAR_SPICS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) bool "ST SPEAr13xx SPI Chip Select as GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) depends on PLAT_SPEAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) Say yes here to support ST SPEAr SPI Chip Select as GPIO device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553) config GPIO_SPRD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) tristate "Spreadtrum GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555) depends on ARCH_SPRD || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559) Say yes here to support Spreadtrum GPIO device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) config GPIO_STA2X11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) bool "STA2x11/ConneXt GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) depends on MFD_STA2X11
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) Say yes here to support the STA2x11/ConneXt GPIO device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) The GPIO module has 128 GPIO pins with alternate functions.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) config GPIO_STP_XWAY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) bool "XWAY STP GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571) depends on SOC_XWAY || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) This enables support for the Serial To Parallel (STP) unit found on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) XWAY SoC. The STP allows the SoC to drive a shift registers cascade,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) that can be up to 24 bit. This peripheral is aimed at driving leds.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) Some of the gpios/leds can be auto updated by the soc with dsl and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578) phy status.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580) config GPIO_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) tristate "GPIO based on SYSCON"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582) depends on MFD_SYSCON && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) Say yes here to support GPIO functionality though SYSCON driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586) config GPIO_TB10X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) select OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) config GPIO_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593) bool "NVIDIA Tegra GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) default ARCH_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595) depends on ARCH_TEGRA || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) Say yes here to support GPIO pins on NVIDIA Tegra SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600) config GPIO_TEGRA186
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) tristate "NVIDIA Tegra186 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602) default ARCH_TEGRA_186_SOC || ARCH_TEGRA_194_SOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) depends on ARCH_TEGRA_186_SOC || ARCH_TEGRA_194_SOC || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608) Say yes here to support GPIO pins on NVIDIA Tegra186 SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610) config GPIO_TS4800
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) tristate "TS-4800 DIO blocks and compatibles"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) depends on SOC_IMX51 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) This driver support TS-4800 FPGA GPIO controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618) config GPIO_THUNDERX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) tristate "Cavium ThunderX/OCTEON-TX GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) depends on ARCH_THUNDER || (64BIT && COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621) depends on PCI_MSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624) select IRQ_FASTEOI_HIERARCHY_HANDLERS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) Say yes here to support the on-chip GPIO lines on the ThunderX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) and OCTEON-TX families of SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) config GPIO_UNIPHIER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630) tristate "UniPhier GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631) depends on ARCH_UNIPHIER || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635) Say yes here to support UniPhier GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) config GPIO_VF610
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) def_bool y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639) depends on ARCH_MXC && SOC_VF610
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) Say yes here to support Vybrid vf610 GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644) config GPIO_VR41XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) tristate "NEC VR4100 series General-purpose I/O Uint support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) depends on CPU_VR41XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) Say yes here to support the NEC VR4100 series General-purpose I/O Uint
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650) config GPIO_VX855
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) tristate "VIA VX855/VX875 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) depends on (X86 || COMPILE_TEST) && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653) select MFD_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654) select MFD_VX855
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656) Support access to the VX855/VX875 GPIO lines through the gpio library.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658) This driver provides common support for accessing the device,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659) additional drivers must be enabled in order to use the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660) functionality of the device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) config GPIO_WCD934X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663) tristate "Qualcomm Technologies Inc WCD9340/WCD9341 gpio controller driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) depends on MFD_WCD934X && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) This driver is to supprot GPIO block found on the Qualcomm Technologies
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667) Inc WCD9340/WCD9341 Audio Codec.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) config GPIO_XGENE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670) bool "APM X-Gene GPIO controller support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) depends on ARM64 && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673) This driver is to support the GPIO block within the APM X-Gene SoC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674) platform's generic flash controller. The GPIO pins are muxed with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675) the generic flash controller's address and data pins. Say yes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676) here to enable the GFC GPIO functionality.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) config GPIO_XGENE_SB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679) tristate "APM X-Gene GPIO standby controller support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) depends on (ARCH_XGENE || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683) select IRQ_DOMAIN_HIERARCHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685) This driver supports the GPIO block within the APM X-Gene
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686) Standby Domain. Say yes here to enable the GPIO functionality.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) config GPIO_XILINX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) tristate "Xilinx GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) Say yes here to support the Xilinx FPGA GPIO device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 692)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 693) config GPIO_XLP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 694) tristate "Netlogic XLP GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 695) depends on OF_GPIO && (CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 696) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 697) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 698) This driver provides support for GPIO interface on Netlogic XLP MIPS64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 699) SoCs. Currently supported XLP variants are XLP8XX, XLP3XX, XLP2XX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 700) XLP9XX and XLP5XX. The same GPIO controller block is also present in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 701) Cavium's ThunderX2 CN99XX SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 702)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 703) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 704)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 705) config GPIO_XTENSA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 706) bool "Xtensa GPIO32 support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 707) depends on XTENSA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 708) depends on HAVE_XTENSA_GPIO32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 709) depends on !SMP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 710) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 711) Say yes here to support the Xtensa internal GPIO32 IMPWIRE (input)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 712) and EXPSTATE (output) ports
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 713)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 714) config GPIO_ZEVIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 715) bool "LSI ZEVIO SoC memory mapped GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 716) depends on ARM && OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 717) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 718) Say yes here to support the GPIO controller in LSI ZEVIO SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 719)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 720) config GPIO_ZYNQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 721) tristate "Xilinx Zynq GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 722) depends on ARCH_ZYNQ || ARCH_ZYNQMP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 723) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 724) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 725) Say yes here to support Xilinx Zynq GPIO controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 726)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 727) config GPIO_ZX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 728) bool "ZTE ZX GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 729) depends on ARCH_ZX || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 730) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 731) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 732) Say yes here to support the GPIO device on ZTE ZX SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 733)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 734) config GPIO_LOONGSON1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 735) tristate "Loongson1 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 736) depends on MACH_LOONGSON32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 737) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 738) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 739) Say Y or M here to support GPIO on Loongson1 SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 740)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 741) config GPIO_AMD_FCH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 742) tristate "GPIO support for AMD Fusion Controller Hub (G-series SOCs)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 743) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 744) This option enables driver for GPIO on AMDs Fusion Controller Hub,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 745) as found on G-series SOCs (eg. GX-412TC)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 746)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 747) Note: This driver doesn't registers itself automatically, as it
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 748) needs to be provided with platform specific configuration.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 749) (See eg. CONFIG_PCENGINES_APU2.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 750) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 751)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 752) menu "Port-mapped I/O GPIO drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 753) depends on X86 # Unconditional I/O space access
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 754)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 755) config GPIO_104_DIO_48E
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 756) tristate "ACCES 104-DIO-48E GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 757) depends on PC104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 758) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 759) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 760) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 761) Enables GPIO support for the ACCES 104-DIO-48E series (104-DIO-48E,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 762) 104-DIO-24E). The base port addresses for the devices may be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 763) configured via the base module parameter. The interrupt line numbers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 764) for the devices may be configured via the irq module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 765)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 766) config GPIO_104_IDIO_16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 767) tristate "ACCES 104-IDIO-16 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 768) depends on PC104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 769) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 770) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 771) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 772) Enables GPIO support for the ACCES 104-IDIO-16 family (104-IDIO-16,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 773) 104-IDIO-16E, 104-IDO-16, 104-IDIO-8, 104-IDIO-8E, 104-IDO-8). The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 774) base port addresses for the devices may be configured via the base
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 775) module parameter. The interrupt line numbers for the devices may be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 776) configured via the irq module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 777)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 778) config GPIO_104_IDI_48
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 779) tristate "ACCES 104-IDI-48 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 780) depends on PC104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 781) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 782) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 783) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 784) Enables GPIO support for the ACCES 104-IDI-48 family (104-IDI-48A,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 785) 104-IDI-48AC, 104-IDI-48B, 104-IDI-48BC). The base port addresses for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 786) the devices may be configured via the base module parameter. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 787) interrupt line numbers for the devices may be configured via the irq
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 788) module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 789)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 790) config GPIO_F7188X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 791) tristate "F71869, F71869A, F71882FG, F71889F and F81866 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 792) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 793) This option enables support for GPIOs found on Fintek Super-I/O
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 794) chips F71869, F71869A, F71882FG, F71889F and F81866.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 795)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 796) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 797) be called f7188x-gpio.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 798)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 799) config GPIO_GPIO_MM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 800) tristate "Diamond Systems GPIO-MM GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 801) depends on PC104
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 802) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 803) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 804) Enables GPIO support for the Diamond Systems GPIO-MM and GPIO-MM-12.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 805)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 806) The Diamond Systems GPIO-MM device features 48 lines of digital I/O
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 807) via the emulation of dual 82C55A PPI chips. This driver provides GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 808) support for these 48 channels of digital I/O.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 809)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 810) The base port addresses for the devices may be configured via the base
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 811) array module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 812)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 813) config GPIO_IT87
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 814) tristate "IT87xx GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 815) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 816) Say yes here to support GPIO functionality of IT87xx Super I/O chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 817)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 818) This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 819) supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 820) well.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 821)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 822) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 823) be called gpio_it87
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 824)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 825) config GPIO_SCH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 826) tristate "Intel SCH/TunnelCreek/Centerton/Quark X1000 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 827) depends on (X86 || COMPILE_TEST) && PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 828) select MFD_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 829) select LPC_SCH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 830) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 831) Say yes here to support GPIO interface on Intel Poulsbo SCH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 832) Intel Tunnel Creek processor, Intel Centerton processor or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 833) Intel Quark X1000 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 834)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 835) The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 836) powered by the core power rail and are turned off during sleep
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 837) modes (S3 and higher). The remaining four GPIOs are powered by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 838) the Intel SCH suspend power supply. These GPIOs remain
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 839) active during S3. The suspend powered GPIOs can be used to wake the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 840) system from the Suspend-to-RAM state.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 841)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 842) The Intel Tunnel Creek processor has 5 GPIOs powered by the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 843) core power rail and 9 from suspend power supply.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 844)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 845) The Intel Centerton processor has a total of 30 GPIO pins.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 846) Twenty-one are powered by the core power rail and 9 from the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 847) suspend power supply.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 848)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 849) The Intel Quark X1000 SoC has 2 GPIOs powered by the core
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 850) power well and 6 from the suspend power well.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 851)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 852) config GPIO_SCH311X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 853) tristate "SMSC SCH311x SuperI/O GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 854) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 855) Driver to enable the GPIOs found on SMSC SMSC SCH3112, SCH3114 and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 856) SCH3116 "Super I/O" chipsets.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 857)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 858) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 859) be called gpio-sch311x.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 860)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 861) config GPIO_TS5500
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 862) tristate "TS-5500 DIO blocks and compatibles"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 863) depends on TS5500 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 864) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 865) This driver supports Digital I/O exposed by pin blocks found on some
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 866) Technologic Systems platforms. It includes, but is not limited to, 3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 867) blocks of the TS-5500: DIO1, DIO2 and the LCD port, and the TS-5600
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 868) LCD port.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 869)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 870) config GPIO_WINBOND
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 871) tristate "Winbond Super I/O GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 872) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 873) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 874) This option enables support for GPIOs found on Winbond Super I/O
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 875) chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 876) Currently, only W83627UHG (also known as Nuvoton NCT6627UD) is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 877) supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 878)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 879) You will need to provide a module parameter "gpios", or a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 880) boot-time parameter "gpio_winbond.gpios" with a bitmask of GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 881) ports to enable (bit 0 is GPIO1, bit 1 is GPIO2, etc.).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 882)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 883) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 884) be called gpio-winbond.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 885)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 886) config GPIO_WS16C48
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 887) tristate "WinSystems WS16C48 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 888) select ISA_BUS_API
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 889) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 890) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 891) Enables GPIO support for the WinSystems WS16C48. The base port
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 892) addresses for the devices may be configured via the base module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 893) parameter. The interrupt line numbers for the devices may be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 894) configured via the irq module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 895)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 896) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 897)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 898) menu "I2C GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 899) depends on I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 900)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 901) config GPIO_ADP5588
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 902) tristate "ADP5588 I2C GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 903) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 904) This option enables support for 18 GPIOs found
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 905) on Analog Devices ADP5588 GPIO Expanders.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 906)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 907) config GPIO_ADP5588_IRQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 908) bool "Interrupt controller support for ADP5588"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 909) depends on GPIO_ADP5588=y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 910) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 911) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 912) Say yes here to enable the adp5588 to be used as an interrupt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 913) controller. It requires the driver to be built in the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 914)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 915) config GPIO_ADNP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 916) tristate "Avionic Design N-bit GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 917) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 918) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 919) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 920) This option enables support for N GPIOs found on Avionic Design
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 921) I2C GPIO expanders. The register space will be extended by powers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 922) of two, so the controller will need to accommodate for that. For
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 923) example: if a controller provides 48 pins, 6 registers will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 924) enough to represent all pins, but the driver will assume a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 925) register layout for 64 pins (8 registers).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 926)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 927) config GPIO_AW9110
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 928) tristate "AW9110 I2C GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 929) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 930) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 931) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 932) Say yes here to provide access to I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 933) GPIO expanders used for additional digital outputs or inputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 934) Your board setup code will need to declare the expanders in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 935) use, and assign numbers to the GPIOs they expose. Those GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 936) can then be used from drivers and other kernel code, just like
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 937) other GPIOs, but only accessible from task contexts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 938)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 939) This driver provides an in-kernel interface to those GPIOs using
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 940) platform-neutral GPIO calls.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 941)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 942) config GPIO_GW_PLD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 943) tristate "Gateworks PLD GPIO Expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 944) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 945) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 946) Say yes here to provide access to the Gateworks I2C PLD GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 947) Expander. This is used at least on the Cambria GW2358-4.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 948)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 949) config GPIO_MAX7300
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 950) tristate "Maxim MAX7300 GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 951) select GPIO_MAX730X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 952) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 953) GPIO driver for Maxim MAX7300 I2C-based GPIO expander.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 954)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 955) config GPIO_MAX732X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 956) tristate "MAX7319, MAX7320-7327 I2C Port Expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 957) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 958) Say yes here to support the MAX7319, MAX7320-7327 series of I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 959) Port Expanders. Each IO port on these chips has a fixed role of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 960) Input (designated by 'I'), Push-Pull Output ('O'), or Open-Drain
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 961) Input and Output (designed by 'P'). The combinations are listed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 962) below:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 963)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 964) 8 bits: max7319 (8I), max7320 (8O), max7321 (8P),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 965) max7322 (4I4O), max7323 (4P4O)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 966)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 967) 16 bits: max7324 (8I8O), max7325 (8P8O),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 968) max7326 (4I12O), max7327 (4P12O)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 969)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 970) Board setup code must specify the model to use, and the start
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 971) number for these GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 972)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 973) config GPIO_MAX732X_IRQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 974) bool "Interrupt controller support for MAX732x"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 975) depends on GPIO_MAX732X=y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 976) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 977) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 978) Say yes here to enable the max732x to be used as an interrupt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 979) controller. It requires the driver to be built in the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 980)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 981) config GPIO_MC9S08DZ60
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 982) bool "MX35 3DS BOARD MC9S08DZ60 GPIO functions"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 983) depends on I2C=y && MACH_MX35_3DS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 984) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 985) Select this to enable the MC9S08DZ60 GPIO driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 986)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 987) config GPIO_PCA953X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 988) tristate "PCA95[357]x, PCA9698, TCA64xx, and MAX7310 I/O ports"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 989) select REGMAP_I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 990) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 991) Say yes here to provide access to several register-oriented
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 992) SMBus I/O expanders, made mostly by NXP or TI. Compatible
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 993) models include:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 994)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 995) 4 bits: pca9536, pca9537
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 996)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 997) 8 bits: max7310, max7315, pca6107, pca9534, pca9538, pca9554,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 998) pca9556, pca9557, pca9574, tca6408, tca9554, xra1202
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 999)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1000) 16 bits: max7312, max7313, pca9535, pca9539, pca9555, pca9575,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1001) tca6416
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1002)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1003) 24 bits: tca6424
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1004)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1005) 40 bits: pca9505, pca9698
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1006)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1007) config GPIO_PCA953X_IRQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1008) bool "Interrupt controller support for PCA953x"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1009) depends on GPIO_PCA953X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1010) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1011) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1012) Say yes here to enable the pca953x to be used as an interrupt
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1013) controller. It requires the driver to be built in the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1014)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1015) config GPIO_PCA9570
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1016) tristate "PCA9570 4-Bit I2C GPO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1017) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1018) Say yes here to enable the GPO driver for the NXP PCA9570 chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1019)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1020) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1021) be called gpio-pca9570.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1022)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1023) config GPIO_PCF857X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1024) tristate "PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1025) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1026) select IRQ_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1027) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1028) Say yes here to provide access to most "quasi-bidirectional" I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1029) GPIO expanders used for additional digital outputs or inputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1030) Most of these parts are from NXP, though TI is a second source for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1031) some of them. Compatible models include:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1032)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1033) 8 bits: pcf8574, pcf8574a, pca8574, pca8574a,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1034) pca9670, pca9672, pca9674, pca9674a,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1035) max7328, max7329
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1036)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1037) 16 bits: pcf8575, pcf8575c, pca8575,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1038) pca9671, pca9673, pca9675
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1039)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1040) Your board setup code will need to declare the expanders in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1041) use, and assign numbers to the GPIOs they expose. Those GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1042) can then be used from drivers and other kernel code, just like
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1043) other GPIOs, but only accessible from task contexts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1044)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1045) This driver provides an in-kernel interface to those GPIOs using
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1046) platform-neutral GPIO calls.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1047)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1048) config GPIO_TPIC2810
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1049) tristate "TPIC2810 8-Bit I2C GPO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1050) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1051) Say yes here to enable the GPO driver for the TI TPIC2810 chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1052)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1053) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1054) be called gpio-tpic2810.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1055)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1056) config GPIO_TS4900
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1057) tristate "Technologic Systems FPGA I2C GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1058) depends on SOC_IMX6 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1059) select REGMAP_I2C
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1060) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1061) Say yes here to enabled the GPIO driver for Technologic's FPGA core.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1062) Series supported include TS-4100, TS-4900, TS-7970 and TS-7990.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1063)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1064) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1065)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1066) menu "MFD GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1067)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1068) config GPIO_ADP5520
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1069) tristate "GPIO Support for ADP5520 PMIC"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1070) depends on PMIC_ADP5520
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1071) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1072) This option enables support for on-chip GPIO found
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1073) on Analog Devices ADP5520 PMICs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1074)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1075) config GPIO_ALTERA_A10SR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1076) tristate "Altera Arria10 System Resource GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1077) depends on MFD_ALTERA_A10SR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1078) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1079) Driver for Arria10 Development Kit GPIO expansion which
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1080) includes reads of pushbuttons and DIP switches as well
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1081) as writes to LEDs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1082)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1083) config GPIO_ARIZONA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1084) tristate "Wolfson Microelectronics Arizona class devices"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1085) depends on MFD_ARIZONA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1086) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1087) Support for GPIOs on Wolfson Arizona class devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1088)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1089) config GPIO_BD70528
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1090) tristate "ROHM BD70528 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1091) depends on MFD_ROHM_BD70528
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1092) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1093) Support for GPIOs on ROHM BD70528 PMIC. There are four GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1094) available on the ROHM PMIC in total. The GPIOs can also
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1095) generate interrupts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1096)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1097) This driver can also be built as a module. If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1098) will be called gpio-bd70528.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1099)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1100) config GPIO_BD71828
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1101) tristate "ROHM BD71828 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1102) depends on MFD_ROHM_BD71828
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1103) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1104) Support for GPIOs on ROHM BD71828 PMIC. There are three GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1105) available on the ROHM PMIC in total. The GPIOs are limited to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1106) outputs only and pins must be configured to GPIO outputs by
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1107) OTP. Enable this only if you want to use these pins as outputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1109) This driver can also be built as a module. If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1110) will be called gpio-bd71828.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1112) config GPIO_BD9571MWV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1113) tristate "ROHM BD9571 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1114) depends on MFD_BD9571MWV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1115) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1116) Support for GPIOs on ROHM BD9571 PMIC. There are two GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1117) available on the ROHM PMIC in total, both of which can also
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1118) generate interrupts.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1119)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1120) This driver can also be built as a module. If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1121) will be called gpio-bd9571mwv.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1122)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1123) config GPIO_CRYSTAL_COVE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1124) tristate "GPIO support for Crystal Cove PMIC"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1125) depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1126) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1127) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1128) Support for GPIO pins on Crystal Cove PMIC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1129)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1130) Say Yes if you have a Intel SoC based tablet with Crystal Cove PMIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1131) inside.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1132)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1133) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1134) called gpio-crystalcove.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1135)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1136) config GPIO_CS5535
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1137) tristate "AMD CS5535/CS5536 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1138) depends on X86 || MIPS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1139) depends on MFD_CS5535
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1140) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1141) The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1142) can be used for quite a number of things. The CS5535/6 is found on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1143) AMD Geode and Lemote Yeeloong devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1144)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1145) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1146)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1147) config GPIO_DA9052
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1148) tristate "Dialog DA9052 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1149) depends on PMIC_DA9052
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1150) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1151) Say yes here to enable the GPIO driver for the DA9052 chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1152)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1153) config GPIO_DA9055
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1154) tristate "Dialog Semiconductor DA9055 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1155) depends on MFD_DA9055
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1156) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1157) Say yes here to enable the GPIO driver for the DA9055 chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1158)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1159) The Dialog DA9055 PMIC chip has 3 GPIO pins that can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1160) be controller by this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1161)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1162) If driver is built as a module it will be called gpio-da9055.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1163)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1164) config GPIO_DLN2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1165) tristate "Diolan DLN2 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1166) depends on MFD_DLN2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1167) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1168)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1169) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1170) Select this option to enable GPIO driver for the Diolan DLN2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1171) board.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1172)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1173) This driver can also be built as a module. If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1174) will be called gpio-dln2.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1176) config HTC_EGPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1177) bool "HTC EGPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1178) depends on ARM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1179) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1180) This driver supports the CPLD egpio chip present on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1181) several HTC phones. It provides basic support for input
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1182) pins, output pins, and irqs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1183)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1184) config GPIO_JANZ_TTL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1185) tristate "Janz VMOD-TTL Digital IO Module"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1186) depends on MFD_JANZ_CMODIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1187) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1188) This enables support for the Janz VMOD-TTL Digital IO module.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1189) This driver provides support for driving the pins in output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1190) mode only. Input mode is not supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1191)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1192) config GPIO_KEMPLD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1193) tristate "Kontron ETX / COMexpress GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1194) depends on MFD_KEMPLD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1195) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1196) This enables support for the PLD GPIO interface on some Kontron ETX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1197) and COMexpress (ETXexpress) modules.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1199) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1200) called gpio-kempld.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1201)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1202) config GPIO_LP3943
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1203) tristate "TI/National Semiconductor LP3943 GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1204) depends on MFD_LP3943
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1205) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1206) GPIO driver for LP3943 MFD.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1207) LP3943 can be used as a GPIO expander which provides up to 16 GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1208) Open drain outputs are required for this usage.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1210) config GPIO_LP873X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1211) tristate "TI LP873X GPO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1212) depends on MFD_TI_LP873X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1213) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1214) This driver supports the GPO on TI Lp873x PMICs. 2 GPOs are present
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1215) on LP873X PMICs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1216)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1217) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1218) called gpio-lp873x.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1219)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1220) config GPIO_LP87565
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1221) tristate "TI LP87565 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1222) depends on MFD_TI_LP87565
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1223) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1224) This driver supports the GPIO on TI Lp873565 PMICs. 3 GPIOs are present
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1225) on LP87565 PMICs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1226)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1227) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1228) called gpio-lp87565.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1229)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1230) config GPIO_MADERA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1231) tristate "Cirrus Logic Madera class codecs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1232) depends on PINCTRL_MADERA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1233) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1234) Support for GPIOs on Cirrus Logic Madera class codecs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1235)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1236) config GPIO_MAX77620
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1237) tristate "GPIO support for PMIC MAX77620 and MAX20024"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1238) depends on MFD_MAX77620
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1239) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1240) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1241) GPIO driver for MAX77620 and MAX20024 PMIC from Maxim Semiconductor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1242) MAX77620 PMIC has 8 pins that can be configured as GPIOs. The
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1243) driver also provides interrupt support for each of the gpios.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1244) Say yes here to enable the max77620 to be used as gpio controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1245)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1246) config GPIO_MAX77650
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1247) tristate "Maxim MAX77650/77651 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1248) depends on MFD_MAX77650
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1249) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1250) GPIO driver for MAX77650/77651 PMIC from Maxim Semiconductor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1251) These chips have a single pin that can be configured as GPIO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1252)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1253) config GPIO_MAX96752F
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1254) tristate "MAX96752F GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1255) depends on MFD_MAX96752F
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1256) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1257) Select this option to enable GPIO driver for the MAX96752F
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1258) chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1259)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1260) config GPIO_MSIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1261) bool "Intel MSIC mixed signal gpio support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1262) depends on (X86 || COMPILE_TEST) && MFD_INTEL_MSIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1263) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1264) Enable support for GPIO on intel MSIC controllers found in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1265) intel MID devices
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1266)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1267) config GPIO_PALMAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1268) bool "TI PALMAS series PMICs GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1269) depends on MFD_PALMAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1270) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1271) Select this option to enable GPIO driver for the TI PALMAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1272) series chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1273)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1274) config GPIO_RC5T583
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1275) bool "RICOH RC5T583 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1276) depends on MFD_RC5T583
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1277) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1278) Select this option to enable GPIO driver for the Ricoh RC5T583
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1279) chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1280) This driver provides the support for driving/reading the gpio pins
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1281) of RC5T583 device through standard gpio library.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1282)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1283) config GPIO_SL28CPLD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1284) tristate "Kontron sl28cpld GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1285) depends on MFD_SL28CPLD || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1286) select GPIO_REGMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1287) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1288) select REGMAP_IRQ
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1289) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1290) This enables support for the GPIOs found on the Kontron sl28 CPLD.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1291)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1292) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1293) called gpio-sl28cpld.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1294)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1295) config GPIO_STMPE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1296) bool "STMPE GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1297) depends on MFD_STMPE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1298) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1299) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1300) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1301) This enables support for the GPIOs found on the STMPE I/O
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1302) Expanders.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1303)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1304) config GPIO_TC3589X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1305) bool "TC3589X GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1306) depends on MFD_TC3589X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1307) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1308) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1309) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1310) This enables support for the GPIOs found on the TC3589X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1311) I/O Expander.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1312)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1313) config GPIO_TIMBERDALE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1314) bool "Support for timberdale GPIO IP"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1315) depends on MFD_TIMBERDALE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1316) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1317) Add support for the GPIO IP in the timberdale FPGA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1318)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1319) config GPIO_TPS65086
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1320) tristate "TI TPS65086 GPO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1321) depends on MFD_TPS65086
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1322) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1323) This driver supports the GPO on TI TPS65086x PMICs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1324)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1325) config GPIO_TPS65218
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1326) tristate "TPS65218 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1327) depends on MFD_TPS65218
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1328) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1329) Select this option to enable GPIO driver for the TPS65218
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1330) chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1331)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1332) config GPIO_TPS6586X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1333) bool "TPS6586X GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1334) depends on MFD_TPS6586X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1335) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1336) Select this option to enable GPIO driver for the TPS6586X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1337) chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1338)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1339) config GPIO_TPS65910
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1340) bool "TPS65910 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1341) depends on MFD_TPS65910
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1342) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1343) Select this option to enable GPIO driver for the TPS65910
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1344) chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1345)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1346) config GPIO_TPS65912
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1347) tristate "TI TPS65912 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1348) depends on MFD_TPS65912
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1349) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1350) This driver supports TPS65912 gpio chip
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1351)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1352) config GPIO_TPS68470
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1353) bool "TPS68470 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1354) depends on MFD_TPS68470
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1355) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1356) Select this option to enable GPIO driver for the TPS68470
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1357) chip family.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1358) There are 7 GPIOs and few sensor related GPIOs supported
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1359) by the TPS68470. While the 7 GPIOs can be configured as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1360) input or output as appropriate, the sensor related GPIOs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1361) are "output only" GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1362)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1363) This driver config is bool, as the GPIO functionality
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1364) of the TPS68470 must be available before dependent
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1365) drivers are loaded.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1366)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1367) config GPIO_TQMX86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1368) tristate "TQ-Systems QTMX86 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1369) depends on MFD_TQMX86 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1370) depends on HAS_IOPORT_MAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1371) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1372) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1373) This driver supports GPIO on the TQMX86 IO controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1374)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1375) config GPIO_TWL4030
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1376) tristate "TWL4030, TWL5030, and TPS659x0 GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1377) depends on TWL4030_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1378) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1379) Say yes here to access the GPIO signals of various multi-function
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1380) power management chips from Texas Instruments.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1381)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1382) config GPIO_TWL6040
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1383) tristate "TWL6040 GPO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1384) depends on TWL6040_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1385) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1386) Say yes here to access the GPO signals of twl6040
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1387) audio chip from Texas Instruments.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1388)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1389) config GPIO_UCB1400
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1390) tristate "Philips UCB1400 GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1391) depends on UCB1400_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1392) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1393) This enables support for the Philips UCB1400 GPIO pins.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1394) The UCB1400 is an AC97 audio codec.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1395)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1396) config GPIO_WHISKEY_COVE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1397) tristate "GPIO support for Whiskey Cove PMIC"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1398) depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC_BXTWC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1399) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1400) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1401) Support for GPIO pins on Whiskey Cove PMIC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1402)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1403) Say Yes if you have a Intel SoC based tablet with Whiskey Cove PMIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1404) inside.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1405)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1406) This driver can also be built as a module. If so, the module will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1407) called gpio-wcove.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1408)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1409) config GPIO_WM831X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1410) tristate "WM831x GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1411) depends on MFD_WM831X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1412) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1413) Say yes here to access the GPIO signals of WM831x power management
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1414) chips from Wolfson Microelectronics.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1415)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1416) config GPIO_WM8350
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1417) tristate "WM8350 GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1418) depends on MFD_WM8350
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1419) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1420) Say yes here to access the GPIO signals of WM8350 power management
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1421) chips from Wolfson Microelectronics.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1422)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1423) config GPIO_WM8994
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1424) tristate "WM8994 GPIOs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1425) depends on MFD_WM8994
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1426) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1427) Say yes here to access the GPIO signals of WM8994 audio hub
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1428) CODECs from Wolfson Microelectronics.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1429)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1430) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1431)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1432) menu "PCI GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1433) depends on PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1434)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1435) config GPIO_AMD8111
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1436) tristate "AMD 8111 GPIO driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1437) depends on X86 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1438) depends on HAS_IOPORT_MAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1439) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1440) The AMD 8111 south bridge contains 32 GPIO pins which can be used.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1441)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1442) Note, that usually system firmware/ACPI handles GPIO pins on their
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1443) own and users might easily break their systems with uncarefull usage
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1444) of this driver!
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1445)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1446) If unsure, say N
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1447)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1448) config GPIO_BT8XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1449) tristate "BT8XX GPIO abuser"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1450) depends on VIDEO_BT848=n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1451) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1452) The BT8xx frame grabber chip has 24 GPIO pins that can be abused
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1453) as a cheap PCI GPIO card.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1454)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1455) This chip can be found on Miro, Hauppauge and STB TV-cards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1456)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1457) The card needs to be physically altered for using it as a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1458) GPIO card. For more information on how to build a GPIO card
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1459) from a BT8xx TV card, see the documentation file at
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1460) Documentation/driver-api/gpio/bt8xxgpio.rst
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1461)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1462) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1463)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1464) config GPIO_INTEL_MID
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1465) bool "Intel MID GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1466) depends on X86_INTEL_MID
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1467) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1468) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1469) Say Y here to support Intel MID GPIO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1470)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1471) config GPIO_MERRIFIELD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1472) tristate "Intel Merrifield GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1473) depends on X86_INTEL_MID
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1474) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1475) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1476) Say Y here to support Intel Merrifield GPIO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1477)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1478) config GPIO_MLXBF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1479) tristate "Mellanox BlueField SoC GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1480) depends on (MELLANOX_PLATFORM && ARM64 && ACPI) || (64BIT && COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1481) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1482) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1483) Say Y here if you want GPIO support on Mellanox BlueField SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1484)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1485) config GPIO_MLXBF2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1486) tristate "Mellanox BlueField 2 SoC GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1487) depends on (MELLANOX_PLATFORM && ARM64 && ACPI) || (64BIT && COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1488) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1489) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1490) Say Y here if you want GPIO support on Mellanox BlueField 2 SoC.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1491)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1492) config GPIO_ML_IOH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1493) tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1494) depends on X86 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1495) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1496) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1497) ML7213 is companion chip for Intel Atom E6xx series.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1498) This driver can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/Output
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1499) Hub) which is for IVI(In-Vehicle Infotainment) use.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1500) This driver can access the IOH's GPIO device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1501)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1502) config GPIO_PCH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1503) tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1504) depends on X86_32 || MIPS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1505) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1506) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1507) This driver is for PCH(Platform controller Hub) GPIO of Intel Topcliff
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1508) which is an IOH(Input/Output Hub) for x86 embedded processor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1509) This driver can access PCH GPIO device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1510)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1511) This driver also can be used for LAPIS Semiconductor IOH(Input/
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1512) Output Hub), ML7223 and ML7831.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1513) ML7223 IOH is for MP(Media Phone) use.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1514) ML7831 IOH is for general purpose use.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1515) ML7223/ML7831 is companion chip for Intel Atom E6xx series.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1516) ML7223/ML7831 is completely compatible for Intel EG20T PCH.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1517)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1518) config GPIO_PCI_IDIO_16
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1519) tristate "ACCES PCI-IDIO-16 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1520) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1521) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1522) Enables GPIO support for the ACCES PCI-IDIO-16. An interrupt is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1523) generated when any of the inputs change state (low to high or high to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1524) low). Input filter control is not supported by this driver, and the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1525) input filters are deactivated by this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1526)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1527) config GPIO_PCIE_IDIO_24
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1528) tristate "ACCES PCIe-IDIO-24 GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1529) select GPIOLIB_IRQCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1530) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1531) Enables GPIO support for the ACCES PCIe-IDIO-24 family (PCIe-IDIO-24,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1532) PCIe-IDI-24, PCIe-IDO-24, PCIe-IDIO-12). An interrupt is generated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1533) when any of the inputs change state (low to high or high to low).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1534) Input filter control is not supported by this driver, and the input
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1535) filters are deactivated by this driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1536)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1537) config GPIO_RDC321X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1538) tristate "RDC R-321x GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1539) select MFD_CORE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1540) select MFD_RDC321X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1541) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1542) Support for the RDC R321x SoC GPIOs over southbridge
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1543) PCI configuration space.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1544)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1545) config GPIO_SODAVILLE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1546) bool "Intel Sodaville GPIO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1547) depends on X86 && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1548) select GPIO_GENERIC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1549) select GENERIC_IRQ_CHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1550) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1551) Say Y here to support Intel Sodaville GPIO.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1552)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1553) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1554)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1555) menu "SPI GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1556) depends on SPI_MASTER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1557)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1558) config GPIO_74X164
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1559) tristate "74x164 serial-in/parallel-out 8-bits shift register"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1560) depends on OF_GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1561) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1562) Driver for 74x164 compatible serial-in/parallel-out 8-outputs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1563) shift registers. This driver can be used to provide access
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1564) to more gpio outputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1565)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1566) config GPIO_MAX3191X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1567) tristate "Maxim MAX3191x industrial serializer"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1568) select CRC8
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1569) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1570) GPIO driver for Maxim MAX31910, MAX31911, MAX31912, MAX31913,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1571) MAX31953 and MAX31963 industrial serializer, a daisy-chainable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1572) chip to make 8 digital 24V inputs available via SPI. Supports
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1573) CRC checksums to guard against electromagnetic interference,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1574) as well as undervoltage and overtemperature detection.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1575)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1576) config GPIO_MAX7301
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1577) tristate "Maxim MAX7301 GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1578) select GPIO_MAX730X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1579) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1580) GPIO driver for Maxim MAX7301 SPI-based GPIO expander.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1581)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1582) config GPIO_MC33880
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1583) tristate "Freescale MC33880 high-side/low-side switch"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1584) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1585) SPI driver for Freescale MC33880 high-side/low-side switch.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1586) This provides GPIO interface supporting inputs and outputs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1587)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1588) config GPIO_PISOSR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1589) tristate "Generic parallel-in/serial-out shift register"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1590) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1591) GPIO driver for SPI compatible parallel-in/serial-out shift
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1592) registers. These are input only devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1593)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1594) config GPIO_XRA1403
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1595) tristate "EXAR XRA1403 16-bit GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1596) select REGMAP_SPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1597) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1598) GPIO driver for EXAR XRA1403 16-bit SPI-based GPIO expander.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1599)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1600) config GPIO_MOXTET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1601) tristate "Turris Mox Moxtet bus GPIO expander"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1602) depends on MOXTET
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1603) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1604) Say yes here if you are building for the Turris Mox router.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1605) This is the driver needed for configuring the GPIOs via the Moxtet
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1606) bus. For example the Mox module with SFP cage needs this driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1607) so that phylink can use corresponding GPIOs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1608)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1609) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1610)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1611) menu "USB GPIO expanders"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1612) depends on USB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1613)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1614) config GPIO_VIPERBOARD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1615) tristate "Viperboard GPIO a & b support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1616) depends on MFD_VIPERBOARD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1617) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1618) Say yes here to access the GPIO signals of Nano River
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1619) Technologies Viperboard. There are two GPIO chips on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1620) board: gpioa and gpiob.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1621) See viperboard API specification and Nano
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1622) River Tech's viperboard.h for detailed meaning
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1623) of the module parameters.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1624)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1625) endmenu
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1626)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1627) config GPIO_AGGREGATOR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1628) tristate "GPIO Aggregator"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1629) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1630) Say yes here to enable the GPIO Aggregator, which provides a way to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1631) aggregate existing GPIO lines into a new virtual GPIO chip.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1632) This can serve the following purposes:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1633) - Assign permissions for a collection of GPIO lines to a user,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1634) - Export a collection of GPIO lines to a virtual machine,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1635) - Provide a generic driver for a GPIO-operated device in an
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1636) industrial control context, to be operated from userspace using
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1637) the GPIO chardev interface.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1638)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1639) config GPIO_MOCKUP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1640) tristate "GPIO Testing Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1641) select IRQ_SIM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1642) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1643) This enables GPIO Testing driver, which provides a way to test GPIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1644) subsystem through sysfs(or char device) and debugfs. GPIO_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1645) must be selected for this test.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1646) User could use it through the script in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1647) tools/testing/selftests/gpio/gpio-mockup.sh. Reference the usage in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1648) it.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1649)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1650) endif