13d0407baSopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 23d0407baSopenharmony_ci# 33d0407baSopenharmony_ci# GPIO infrastructure and drivers 43d0407baSopenharmony_ci# 53d0407baSopenharmony_ci 63d0407baSopenharmony_ciconfig ARCH_HAVE_CUSTOM_GPIO_H 73d0407baSopenharmony_ci bool 83d0407baSopenharmony_ci help 93d0407baSopenharmony_ci Selecting this config option from the architecture Kconfig allows 103d0407baSopenharmony_ci the architecture to provide a custom asm/gpio.h implementation 113d0407baSopenharmony_ci overriding the default implementations. New uses of this are 123d0407baSopenharmony_ci strongly discouraged. 133d0407baSopenharmony_ci 143d0407baSopenharmony_cimenuconfig GPIOLIB 153d0407baSopenharmony_ci bool "GPIO Support" 163d0407baSopenharmony_ci help 173d0407baSopenharmony_ci This enables GPIO support through the generic GPIO library. 183d0407baSopenharmony_ci You only need to enable this, if you also want to enable 193d0407baSopenharmony_ci one or more of the GPIO drivers below. 203d0407baSopenharmony_ci 213d0407baSopenharmony_ci If unsure, say N. 223d0407baSopenharmony_ci 233d0407baSopenharmony_ciif GPIOLIB 243d0407baSopenharmony_ci 253d0407baSopenharmony_ciconfig GPIOLIB_FASTPATH_LIMIT 263d0407baSopenharmony_ci int "Maximum number of GPIOs for fast path" 273d0407baSopenharmony_ci range 32 512 283d0407baSopenharmony_ci default 512 293d0407baSopenharmony_ci help 303d0407baSopenharmony_ci This adjusts the point at which certain APIs will switch from 313d0407baSopenharmony_ci using a stack allocated buffer to a dynamically allocated buffer. 323d0407baSopenharmony_ci 333d0407baSopenharmony_ci You shouldn't need to change this unless you really need to 343d0407baSopenharmony_ci optimize either stack space or performance. Change this carefully 353d0407baSopenharmony_ci since setting an incorrect value could cause stack corruption. 363d0407baSopenharmony_ci 373d0407baSopenharmony_ciconfig OF_GPIO 383d0407baSopenharmony_ci def_bool y 393d0407baSopenharmony_ci depends on OF 403d0407baSopenharmony_ci depends on HAS_IOMEM 413d0407baSopenharmony_ci 423d0407baSopenharmony_ciconfig GPIO_ACPI 433d0407baSopenharmony_ci def_bool y 443d0407baSopenharmony_ci depends on ACPI 453d0407baSopenharmony_ci 463d0407baSopenharmony_ciconfig GPIOLIB_IRQCHIP 473d0407baSopenharmony_ci select IRQ_DOMAIN 483d0407baSopenharmony_ci bool 493d0407baSopenharmony_ci 503d0407baSopenharmony_ciconfig DEBUG_GPIO 513d0407baSopenharmony_ci bool "Debug GPIO calls" 523d0407baSopenharmony_ci depends on DEBUG_KERNEL 533d0407baSopenharmony_ci help 543d0407baSopenharmony_ci Say Y here to add some extra checks and diagnostics to GPIO calls. 553d0407baSopenharmony_ci These checks help ensure that GPIOs have been properly initialized 563d0407baSopenharmony_ci before they are used, and that sleeping calls are not made from 573d0407baSopenharmony_ci non-sleeping contexts. They can make bitbanged serial protocols 583d0407baSopenharmony_ci slower. The diagnostics help catch the type of setup errors 593d0407baSopenharmony_ci that are most common when setting up new platforms or boards. 603d0407baSopenharmony_ci 613d0407baSopenharmony_ciconfig GPIO_SYSFS 623d0407baSopenharmony_ci bool "/sys/class/gpio/... (sysfs interface)" 633d0407baSopenharmony_ci depends on SYSFS 643d0407baSopenharmony_ci help 653d0407baSopenharmony_ci Say Y here to add the legacy sysfs interface for GPIOs. 663d0407baSopenharmony_ci 673d0407baSopenharmony_ci This ABI is deprecated. If you want to use GPIO from userspace, 683d0407baSopenharmony_ci use the character device /dev/gpiochipN with the appropriate 693d0407baSopenharmony_ci ioctl() operations instead. 703d0407baSopenharmony_ci 713d0407baSopenharmony_ciconfig GPIO_CDEV 723d0407baSopenharmony_ci bool 733d0407baSopenharmony_ci prompt "Character device (/dev/gpiochipN) support" if EXPERT 743d0407baSopenharmony_ci default y 753d0407baSopenharmony_ci help 763d0407baSopenharmony_ci Say Y here to add the character device /dev/gpiochipN interface 773d0407baSopenharmony_ci for GPIOs. The character device allows userspace to control GPIOs 783d0407baSopenharmony_ci using ioctl() operations. 793d0407baSopenharmony_ci 803d0407baSopenharmony_ci Only say N if you are sure that the GPIO character device is not 813d0407baSopenharmony_ci required. 823d0407baSopenharmony_ci 833d0407baSopenharmony_ci If unsure, say Y. 843d0407baSopenharmony_ci 853d0407baSopenharmony_ciconfig GPIO_CDEV_V1 863d0407baSopenharmony_ci bool "Support GPIO ABI Version 1" 873d0407baSopenharmony_ci default y 883d0407baSopenharmony_ci depends on GPIO_CDEV 893d0407baSopenharmony_ci help 903d0407baSopenharmony_ci Say Y here to support version 1 of the GPIO CDEV ABI. 913d0407baSopenharmony_ci 923d0407baSopenharmony_ci This ABI version is deprecated. 933d0407baSopenharmony_ci Please use the latest ABI for new developments. 943d0407baSopenharmony_ci 953d0407baSopenharmony_ci If unsure, say Y. 963d0407baSopenharmony_ci 973d0407baSopenharmony_ciconfig GPIO_GENERIC 983d0407baSopenharmony_ci depends on HAS_IOMEM # Only for IOMEM drivers 993d0407baSopenharmony_ci tristate 1003d0407baSopenharmony_ci 1013d0407baSopenharmony_ciconfig GPIO_REGMAP 1023d0407baSopenharmony_ci depends on REGMAP 1033d0407baSopenharmony_ci tristate 1043d0407baSopenharmony_ci 1053d0407baSopenharmony_ci# put drivers in the right section, in alphabetical order 1063d0407baSopenharmony_ci 1073d0407baSopenharmony_ci# This symbol is selected by both I2C and SPI expanders 1083d0407baSopenharmony_ciconfig GPIO_MAX730X 1093d0407baSopenharmony_ci tristate 1103d0407baSopenharmony_ci 1113d0407baSopenharmony_cimenu "Memory mapped GPIO drivers" 1123d0407baSopenharmony_ci depends on HAS_IOMEM 1133d0407baSopenharmony_ci 1143d0407baSopenharmony_ciconfig GPIO_74XX_MMIO 1153d0407baSopenharmony_ci tristate "GPIO driver for 74xx-ICs with MMIO access" 1163d0407baSopenharmony_ci depends on OF_GPIO 1173d0407baSopenharmony_ci select GPIO_GENERIC 1183d0407baSopenharmony_ci help 1193d0407baSopenharmony_ci Say yes here to support GPIO functionality for 74xx-compatible ICs 1203d0407baSopenharmony_ci with MMIO access. Compatible models include: 1213d0407baSopenharmony_ci 1 bit: 741G125 (Input), 741G74 (Output) 1223d0407baSopenharmony_ci 2 bits: 742G125 (Input), 7474 (Output) 1233d0407baSopenharmony_ci 4 bits: 74125 (Input), 74175 (Output) 1243d0407baSopenharmony_ci 6 bits: 74365 (Input), 74174 (Output) 1253d0407baSopenharmony_ci 8 bits: 74244 (Input), 74273 (Output) 1263d0407baSopenharmony_ci 16 bits: 741624 (Input), 7416374 (Output) 1273d0407baSopenharmony_ci 1283d0407baSopenharmony_ciconfig GPIO_ALTERA 1293d0407baSopenharmony_ci tristate "Altera GPIO" 1303d0407baSopenharmony_ci depends on OF_GPIO 1313d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 1323d0407baSopenharmony_ci help 1333d0407baSopenharmony_ci Say Y or M here to build support for the Altera PIO device. 1343d0407baSopenharmony_ci 1353d0407baSopenharmony_ci If driver is built as a module it will be called gpio-altera. 1363d0407baSopenharmony_ci 1373d0407baSopenharmony_ciconfig GPIO_AMDPT 1383d0407baSopenharmony_ci tristate "AMD Promontory GPIO support" 1393d0407baSopenharmony_ci depends on ACPI 1403d0407baSopenharmony_ci select GPIO_GENERIC 1413d0407baSopenharmony_ci help 1423d0407baSopenharmony_ci driver for GPIO functionality on Promontory IOHub 1433d0407baSopenharmony_ci Require ACPI ASL code to enumerate as a platform device. 1443d0407baSopenharmony_ci 1453d0407baSopenharmony_ciconfig GPIO_ASPEED 1463d0407baSopenharmony_ci tristate "Aspeed GPIO support" 1473d0407baSopenharmony_ci depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO 1483d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 1493d0407baSopenharmony_ci help 1503d0407baSopenharmony_ci Say Y here to support Aspeed AST2400 and AST2500 GPIO controllers. 1513d0407baSopenharmony_ci 1523d0407baSopenharmony_ciconfig GPIO_ASPEED_SGPIO 1533d0407baSopenharmony_ci bool "Aspeed SGPIO support" 1543d0407baSopenharmony_ci depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO 1553d0407baSopenharmony_ci select GPIO_GENERIC 1563d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 1573d0407baSopenharmony_ci help 1583d0407baSopenharmony_ci Say Y here to support Aspeed AST2500 SGPIO functionality. 1593d0407baSopenharmony_ci 1603d0407baSopenharmony_ciconfig GPIO_ATH79 1613d0407baSopenharmony_ci tristate "Atheros AR71XX/AR724X/AR913X GPIO support" 1623d0407baSopenharmony_ci default y if ATH79 1633d0407baSopenharmony_ci depends on ATH79 || COMPILE_TEST 1643d0407baSopenharmony_ci select GPIO_GENERIC 1653d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 1663d0407baSopenharmony_ci help 1673d0407baSopenharmony_ci Select this option to enable GPIO driver for 1683d0407baSopenharmony_ci Atheros AR71XX/AR724X/AR913X SoC devices. 1693d0407baSopenharmony_ci 1703d0407baSopenharmony_ciconfig GPIO_RASPBERRYPI_EXP 1713d0407baSopenharmony_ci tristate "Raspberry Pi 3 GPIO Expander" 1723d0407baSopenharmony_ci default RASPBERRYPI_FIRMWARE 1733d0407baSopenharmony_ci depends on OF_GPIO 1743d0407baSopenharmony_ci # Make sure not 'y' when RASPBERRYPI_FIRMWARE is 'm'. This can only 1753d0407baSopenharmony_ci # happen when COMPILE_TEST=y, hence the added !RASPBERRYPI_FIRMWARE. 1763d0407baSopenharmony_ci depends on (ARCH_BCM2835 && RASPBERRYPI_FIRMWARE) || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE) 1773d0407baSopenharmony_ci help 1783d0407baSopenharmony_ci Turn on GPIO support for the expander on Raspberry Pi 3 boards, using 1793d0407baSopenharmony_ci the firmware mailbox to communicate with VideoCore on BCM283x chips. 1803d0407baSopenharmony_ci 1813d0407baSopenharmony_ciconfig GPIO_BCM_KONA 1823d0407baSopenharmony_ci bool "Broadcom Kona GPIO" 1833d0407baSopenharmony_ci depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST) 1843d0407baSopenharmony_ci help 1853d0407baSopenharmony_ci Turn on GPIO support for Broadcom "Kona" chips. 1863d0407baSopenharmony_ci 1873d0407baSopenharmony_ciconfig GPIO_BCM_XGS_IPROC 1883d0407baSopenharmony_ci tristate "BRCM XGS iProc GPIO support" 1893d0407baSopenharmony_ci depends on OF_GPIO && (ARCH_BCM_IPROC || COMPILE_TEST) 1903d0407baSopenharmony_ci select GPIO_GENERIC 1913d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 1923d0407baSopenharmony_ci default ARCH_BCM_IPROC 1933d0407baSopenharmony_ci help 1943d0407baSopenharmony_ci Say yes here to enable GPIO support for Broadcom XGS iProc SoCs. 1953d0407baSopenharmony_ci 1963d0407baSopenharmony_ciconfig GPIO_BRCMSTB 1973d0407baSopenharmony_ci tristate "BRCMSTB GPIO support" 1983d0407baSopenharmony_ci default y if (ARCH_BRCMSTB || BMIPS_GENERIC) 1993d0407baSopenharmony_ci depends on OF_GPIO && (ARCH_BRCMSTB || BMIPS_GENERIC || COMPILE_TEST) 2003d0407baSopenharmony_ci select GPIO_GENERIC 2013d0407baSopenharmony_ci select IRQ_DOMAIN 2023d0407baSopenharmony_ci help 2033d0407baSopenharmony_ci Say yes here to enable GPIO support for Broadcom STB (BCM7XXX) SoCs. 2043d0407baSopenharmony_ci 2053d0407baSopenharmony_ciconfig GPIO_CADENCE 2063d0407baSopenharmony_ci tristate "Cadence GPIO support" 2073d0407baSopenharmony_ci depends on OF_GPIO 2083d0407baSopenharmony_ci select GPIO_GENERIC 2093d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 2103d0407baSopenharmony_ci help 2113d0407baSopenharmony_ci Say yes here to enable support for Cadence GPIO controller. 2123d0407baSopenharmony_ci 2133d0407baSopenharmony_ciconfig GPIO_CLPS711X 2143d0407baSopenharmony_ci tristate "CLPS711X GPIO support" 2153d0407baSopenharmony_ci depends on ARCH_CLPS711X || COMPILE_TEST 2163d0407baSopenharmony_ci select GPIO_GENERIC 2173d0407baSopenharmony_ci help 2183d0407baSopenharmony_ci Say yes here to support GPIO on CLPS711X SoCs. 2193d0407baSopenharmony_ci 2203d0407baSopenharmony_ciconfig GPIO_DAVINCI 2213d0407baSopenharmony_ci bool "TI Davinci/Keystone GPIO support" 2223d0407baSopenharmony_ci default y if ARCH_DAVINCI 2233d0407baSopenharmony_ci depends on (ARM || ARM64) && (ARCH_DAVINCI || ARCH_KEYSTONE || ARCH_K3) 2243d0407baSopenharmony_ci help 2253d0407baSopenharmony_ci Say yes here to enable GPIO support for TI Davinci/Keystone SoCs. 2263d0407baSopenharmony_ci 2273d0407baSopenharmony_ciconfig GPIO_DWAPB 2283d0407baSopenharmony_ci tristate "Synopsys DesignWare APB GPIO driver" 2293d0407baSopenharmony_ci select GPIO_GENERIC 2303d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 2313d0407baSopenharmony_ci help 2323d0407baSopenharmony_ci Say Y or M here to build support for the Synopsys DesignWare APB 2333d0407baSopenharmony_ci GPIO block. 2343d0407baSopenharmony_ci 2353d0407baSopenharmony_ciconfig GPIO_EIC_SPRD 2363d0407baSopenharmony_ci tristate "Spreadtrum EIC support" 2373d0407baSopenharmony_ci depends on ARCH_SPRD || COMPILE_TEST 2383d0407baSopenharmony_ci depends on OF_GPIO 2393d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 2403d0407baSopenharmony_ci help 2413d0407baSopenharmony_ci Say yes here to support Spreadtrum EIC device. 2423d0407baSopenharmony_ci 2433d0407baSopenharmony_ciconfig GPIO_EM 2443d0407baSopenharmony_ci tristate "Emma Mobile GPIO" 2453d0407baSopenharmony_ci depends on (ARCH_EMEV2 || COMPILE_TEST) && OF_GPIO 2463d0407baSopenharmony_ci help 2473d0407baSopenharmony_ci Say yes here to support GPIO on Renesas Emma Mobile SoCs. 2483d0407baSopenharmony_ci 2493d0407baSopenharmony_ciconfig GPIO_EP93XX 2503d0407baSopenharmony_ci def_bool y 2513d0407baSopenharmony_ci depends on ARCH_EP93XX 2523d0407baSopenharmony_ci select GPIO_GENERIC 2533d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 2543d0407baSopenharmony_ci 2553d0407baSopenharmony_ciconfig GPIO_EXAR 2563d0407baSopenharmony_ci tristate "Support for GPIO pins on XR17V352/354/358" 2573d0407baSopenharmony_ci depends on SERIAL_8250_EXAR 2583d0407baSopenharmony_ci help 2593d0407baSopenharmony_ci Selecting this option will enable handling of GPIO pins present 2603d0407baSopenharmony_ci on Exar XR17V352/354/358 chips. 2613d0407baSopenharmony_ci 2623d0407baSopenharmony_ciconfig GPIO_GE_FPGA 2633d0407baSopenharmony_ci bool "GE FPGA based GPIO" 2643d0407baSopenharmony_ci depends on GE_FPGA 2653d0407baSopenharmony_ci select GPIO_GENERIC 2663d0407baSopenharmony_ci help 2673d0407baSopenharmony_ci Support for common GPIO functionality provided on some GE Single Board 2683d0407baSopenharmony_ci Computers. 2693d0407baSopenharmony_ci 2703d0407baSopenharmony_ci This driver provides basic support (configure as input or output, read 2713d0407baSopenharmony_ci and write pin state) for GPIO implemented in a number of GE single 2723d0407baSopenharmony_ci board computers. 2733d0407baSopenharmony_ci 2743d0407baSopenharmony_ciconfig GPIO_FTGPIO010 2753d0407baSopenharmony_ci bool "Faraday FTGPIO010 GPIO" 2763d0407baSopenharmony_ci depends on OF_GPIO 2773d0407baSopenharmony_ci select GPIO_GENERIC 2783d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 2793d0407baSopenharmony_ci default (ARCH_GEMINI || ARCH_MOXART) 2803d0407baSopenharmony_ci help 2813d0407baSopenharmony_ci Support for common GPIOs from the Faraday FTGPIO010 IP core, found in 2823d0407baSopenharmony_ci Cortina systems Gemini platforms, Moxa ART and others. 2833d0407baSopenharmony_ci 2843d0407baSopenharmony_ciconfig GPIO_GENERIC_PLATFORM 2853d0407baSopenharmony_ci tristate "Generic memory-mapped GPIO controller support (MMIO platform device)" 2863d0407baSopenharmony_ci select GPIO_GENERIC 2873d0407baSopenharmony_ci help 2883d0407baSopenharmony_ci Say yes here to support basic platform_device memory-mapped GPIO controllers. 2893d0407baSopenharmony_ci 2903d0407baSopenharmony_ciconfig GPIO_GRGPIO 2913d0407baSopenharmony_ci tristate "Aeroflex Gaisler GRGPIO support" 2923d0407baSopenharmony_ci depends on OF_GPIO 2933d0407baSopenharmony_ci select GPIO_GENERIC 2943d0407baSopenharmony_ci select IRQ_DOMAIN 2953d0407baSopenharmony_ci help 2963d0407baSopenharmony_ci Select this to support Aeroflex Gaisler GRGPIO cores from the GRLIB 2973d0407baSopenharmony_ci VHDL IP core library. 2983d0407baSopenharmony_ci 2993d0407baSopenharmony_ciconfig GPIO_HLWD 3003d0407baSopenharmony_ci tristate "Nintendo Wii (Hollywood) GPIO" 3013d0407baSopenharmony_ci depends on OF_GPIO 3023d0407baSopenharmony_ci select GPIO_GENERIC 3033d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 3043d0407baSopenharmony_ci help 3053d0407baSopenharmony_ci Select this to support the GPIO controller of the Nintendo Wii. 3063d0407baSopenharmony_ci 3073d0407baSopenharmony_ci If unsure, say N. 3083d0407baSopenharmony_ci 3093d0407baSopenharmony_ciconfig GPIO_ICH 3103d0407baSopenharmony_ci tristate "Intel ICH GPIO" 3113d0407baSopenharmony_ci depends on PCI && X86 3123d0407baSopenharmony_ci select MFD_CORE 3133d0407baSopenharmony_ci select LPC_ICH 3143d0407baSopenharmony_ci help 3153d0407baSopenharmony_ci Say yes here to support the GPIO functionality of a number of Intel 3163d0407baSopenharmony_ci ICH-based chipsets. Currently supported devices: ICH6, ICH7, ICH8 3173d0407baSopenharmony_ci ICH9, ICH10, Series 5/3400 (eg Ibex Peak), Series 6/C200 (eg 3183d0407baSopenharmony_ci Cougar Point), NM10 (Tiger Point), and 3100 (Whitmore Lake). 3193d0407baSopenharmony_ci 3203d0407baSopenharmony_ci If unsure, say N. 3213d0407baSopenharmony_ci 3223d0407baSopenharmony_ciconfig GPIO_IOP 3233d0407baSopenharmony_ci tristate "Intel IOP GPIO" 3243d0407baSopenharmony_ci depends on ARCH_IOP32X || COMPILE_TEST 3253d0407baSopenharmony_ci select GPIO_GENERIC 3263d0407baSopenharmony_ci help 3273d0407baSopenharmony_ci Say yes here to support the GPIO functionality of a number of Intel 3283d0407baSopenharmony_ci IOP32X or IOP33X. 3293d0407baSopenharmony_ci 3303d0407baSopenharmony_ci If unsure, say N. 3313d0407baSopenharmony_ci 3323d0407baSopenharmony_ciconfig GPIO_IXP4XX 3333d0407baSopenharmony_ci bool "Intel IXP4xx GPIO" 3343d0407baSopenharmony_ci depends on ARM # For <asm/mach-types.h> 3353d0407baSopenharmony_ci depends on ARCH_IXP4XX 3363d0407baSopenharmony_ci select GPIO_GENERIC 3373d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 3383d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 3393d0407baSopenharmony_ci help 3403d0407baSopenharmony_ci Say yes here to support the GPIO functionality of a number of Intel 3413d0407baSopenharmony_ci IXP4xx series of chips. 3423d0407baSopenharmony_ci 3433d0407baSopenharmony_ci If unsure, say N. 3443d0407baSopenharmony_ciconfig GPIO_LOGICVC 3453d0407baSopenharmony_ci tristate "Xylon LogiCVC GPIO support" 3463d0407baSopenharmony_ci depends on MFD_SYSCON && OF 3473d0407baSopenharmony_ci help 3483d0407baSopenharmony_ci Say yes here to support GPIO functionality of the Xylon LogiCVC 3493d0407baSopenharmony_ci programmable logic block. 3503d0407baSopenharmony_ci 3513d0407baSopenharmony_ciconfig GPIO_LOONGSON 3523d0407baSopenharmony_ci bool "Loongson-2/3 GPIO support" 3533d0407baSopenharmony_ci depends on CPU_LOONGSON2EF || CPU_LOONGSON64 3543d0407baSopenharmony_ci help 3553d0407baSopenharmony_ci driver for GPIO functionality on Loongson-2F/3A/3B processors. 3563d0407baSopenharmony_ci 3573d0407baSopenharmony_ciconfig GPIO_LPC18XX 3583d0407baSopenharmony_ci tristate "NXP LPC18XX/43XX GPIO support" 3593d0407baSopenharmony_ci default y if ARCH_LPC18XX 3603d0407baSopenharmony_ci depends on OF_GPIO && (ARCH_LPC18XX || COMPILE_TEST) 3613d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 3623d0407baSopenharmony_ci help 3633d0407baSopenharmony_ci Select this option to enable GPIO driver for 3643d0407baSopenharmony_ci NXP LPC18XX/43XX devices. 3653d0407baSopenharmony_ci 3663d0407baSopenharmony_ciconfig GPIO_LPC32XX 3673d0407baSopenharmony_ci tristate "NXP LPC32XX GPIO support" 3683d0407baSopenharmony_ci depends on OF_GPIO && (ARCH_LPC32XX || COMPILE_TEST) 3693d0407baSopenharmony_ci help 3703d0407baSopenharmony_ci Select this option to enable GPIO driver for 3713d0407baSopenharmony_ci NXP LPC32XX devices. 3723d0407baSopenharmony_ci 3733d0407baSopenharmony_ciconfig GPIO_MB86S7X 3743d0407baSopenharmony_ci tristate "GPIO support for Fujitsu MB86S7x Platforms" 3753d0407baSopenharmony_ci help 3763d0407baSopenharmony_ci Say yes here to support the GPIO controller in Fujitsu MB86S70 SoCs. 3773d0407baSopenharmony_ci 3783d0407baSopenharmony_ciconfig GPIO_MENZ127 3793d0407baSopenharmony_ci tristate "MEN 16Z127 GPIO support" 3803d0407baSopenharmony_ci depends on MCB 3813d0407baSopenharmony_ci select GPIO_GENERIC 3823d0407baSopenharmony_ci help 3833d0407baSopenharmony_ci Say yes here to support the MEN 16Z127 GPIO Controller 3843d0407baSopenharmony_ci 3853d0407baSopenharmony_ciconfig GPIO_MM_LANTIQ 3863d0407baSopenharmony_ci bool "Lantiq Memory mapped GPIOs" 3873d0407baSopenharmony_ci depends on LANTIQ && SOC_XWAY 3883d0407baSopenharmony_ci help 3893d0407baSopenharmony_ci This enables support for memory mapped GPIOs on the External Bus Unit 3903d0407baSopenharmony_ci (EBU) found on Lantiq SoCs. The gpios are output only as they are 3913d0407baSopenharmony_ci created by attaching a 16bit latch to the bus. 3923d0407baSopenharmony_ci 3933d0407baSopenharmony_ciconfig GPIO_MPC5200 3943d0407baSopenharmony_ci def_bool y 3953d0407baSopenharmony_ci depends on PPC_MPC52xx 3963d0407baSopenharmony_ci 3973d0407baSopenharmony_ciconfig GPIO_MPC8XXX 3983d0407baSopenharmony_ci bool "MPC512x/MPC8xxx/QorIQ GPIO support" 3993d0407baSopenharmony_ci depends on PPC_MPC512x || PPC_MPC831x || PPC_MPC834x || PPC_MPC837x || \ 4003d0407baSopenharmony_ci FSL_SOC_BOOKE || PPC_86xx || ARCH_LAYERSCAPE || ARM || \ 4013d0407baSopenharmony_ci COMPILE_TEST 4023d0407baSopenharmony_ci select GPIO_GENERIC 4033d0407baSopenharmony_ci select IRQ_DOMAIN 4043d0407baSopenharmony_ci help 4053d0407baSopenharmony_ci Say Y here if you're going to use hardware that connects to the 4063d0407baSopenharmony_ci MPC512x/831x/834x/837x/8572/8610/QorIQ GPIOs. 4073d0407baSopenharmony_ci 4083d0407baSopenharmony_ciconfig GPIO_MT7621 4093d0407baSopenharmony_ci bool "Mediatek MT7621 GPIO Support" 4103d0407baSopenharmony_ci depends on SOC_MT7620 || SOC_MT7621 || COMPILE_TEST 4113d0407baSopenharmony_ci depends on OF_GPIO 4123d0407baSopenharmony_ci select GPIO_GENERIC 4133d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4143d0407baSopenharmony_ci help 4153d0407baSopenharmony_ci Say yes here to support the Mediatek MT7621 SoC GPIO device 4163d0407baSopenharmony_ci 4173d0407baSopenharmony_ciconfig GPIO_MVEBU 4183d0407baSopenharmony_ci def_bool y 4193d0407baSopenharmony_ci depends on PLAT_ORION || ARCH_MVEBU 4203d0407baSopenharmony_ci depends on OF_GPIO 4213d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 4223d0407baSopenharmony_ci select REGMAP_MMIO 4233d0407baSopenharmony_ci 4243d0407baSopenharmony_ciconfig GPIO_MXC 4253d0407baSopenharmony_ci tristate "i.MX GPIO support" 4263d0407baSopenharmony_ci depends on ARCH_MXC || COMPILE_TEST 4273d0407baSopenharmony_ci select GPIO_GENERIC 4283d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 4293d0407baSopenharmony_ci 4303d0407baSopenharmony_ciconfig GPIO_MXS 4313d0407baSopenharmony_ci bool "Freescale MXS GPIO support" if COMPILE_TEST 4323d0407baSopenharmony_ci depends on ARCH_MXS || COMPILE_TEST 4333d0407baSopenharmony_ci default y if ARCH_MXS 4343d0407baSopenharmony_ci select GPIO_GENERIC 4353d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 4363d0407baSopenharmony_ci 4373d0407baSopenharmony_ciconfig GPIO_OCTEON 4383d0407baSopenharmony_ci tristate "Cavium OCTEON GPIO" 4393d0407baSopenharmony_ci depends on CAVIUM_OCTEON_SOC 4403d0407baSopenharmony_ci default y 4413d0407baSopenharmony_ci help 4423d0407baSopenharmony_ci Say yes here to support the on-chip GPIO lines on the OCTEON 4433d0407baSopenharmony_ci family of SOCs. 4443d0407baSopenharmony_ci 4453d0407baSopenharmony_ciconfig GPIO_OMAP 4463d0407baSopenharmony_ci tristate "TI OMAP GPIO support" if ARCH_OMAP2PLUS || COMPILE_TEST 4473d0407baSopenharmony_ci default y if ARCH_OMAP 4483d0407baSopenharmony_ci depends on ARM 4493d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 4503d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4513d0407baSopenharmony_ci help 4523d0407baSopenharmony_ci Say yes here to enable GPIO support for TI OMAP SoCs. 4533d0407baSopenharmony_ci 4543d0407baSopenharmony_ciconfig GPIO_PL061 4553d0407baSopenharmony_ci tristate "PrimeCell PL061 GPIO support" 4563d0407baSopenharmony_ci depends on ARM_AMBA 4573d0407baSopenharmony_ci select IRQ_DOMAIN 4583d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4593d0407baSopenharmony_ci help 4603d0407baSopenharmony_ci Say yes here to support the PrimeCell PL061 GPIO device 4613d0407baSopenharmony_ci 4623d0407baSopenharmony_ciconfig GPIO_PMIC_EIC_SPRD 4633d0407baSopenharmony_ci tristate "Spreadtrum PMIC EIC support" 4643d0407baSopenharmony_ci depends on MFD_SC27XX_PMIC || COMPILE_TEST 4653d0407baSopenharmony_ci depends on OF_GPIO 4663d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4673d0407baSopenharmony_ci help 4683d0407baSopenharmony_ci Say yes here to support Spreadtrum PMIC EIC device. 4693d0407baSopenharmony_ci 4703d0407baSopenharmony_ciconfig GPIO_PXA 4713d0407baSopenharmony_ci bool "PXA GPIO support" 4723d0407baSopenharmony_ci depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST 4733d0407baSopenharmony_ci help 4743d0407baSopenharmony_ci Say yes here to support the PXA GPIO device 4753d0407baSopenharmony_ci 4763d0407baSopenharmony_ciconfig GPIO_RCAR 4773d0407baSopenharmony_ci tristate "Renesas R-Car GPIO" 4783d0407baSopenharmony_ci depends on ARCH_RENESAS || COMPILE_TEST 4793d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4803d0407baSopenharmony_ci help 4813d0407baSopenharmony_ci Say yes here to support GPIO on Renesas R-Car SoCs. 4823d0407baSopenharmony_ci 4833d0407baSopenharmony_ciconfig GPIO_RDA 4843d0407baSopenharmony_ci bool "RDA Micro GPIO controller support" 4853d0407baSopenharmony_ci depends on ARCH_RDA || COMPILE_TEST 4863d0407baSopenharmony_ci depends on OF_GPIO 4873d0407baSopenharmony_ci select GPIO_GENERIC 4883d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 4893d0407baSopenharmony_ci help 4903d0407baSopenharmony_ci Say Y here to support RDA Micro GPIO controller. 4913d0407baSopenharmony_ci 4923d0407baSopenharmony_ciconfig GPIO_REG 4933d0407baSopenharmony_ci bool 4943d0407baSopenharmony_ci help 4953d0407baSopenharmony_ci A 32-bit single register GPIO fixed in/out implementation. This 4963d0407baSopenharmony_ci can be used to represent any register as a set of GPIO signals. 4973d0407baSopenharmony_ci 4983d0407baSopenharmony_ciconfig GPIO_ROCKCHIP 4993d0407baSopenharmony_ci tristate "Rockchip GPIO support" 5003d0407baSopenharmony_ci depends on ARCH_ROCKCHIP || COMPILE_TEST 5013d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 5023d0407baSopenharmony_ci default ARCH_ROCKCHIP 5033d0407baSopenharmony_ci help 5043d0407baSopenharmony_ci Say yes here to support GPIO on Rockchip SoCs. 5053d0407baSopenharmony_ci 5063d0407baSopenharmony_ciconfig GPIO_SAMA5D2_PIOBU 5073d0407baSopenharmony_ci tristate "SAMA5D2 PIOBU GPIO support" 5083d0407baSopenharmony_ci depends on MFD_SYSCON 5093d0407baSopenharmony_ci depends on OF_GPIO 5103d0407baSopenharmony_ci select GPIO_SYSCON 5113d0407baSopenharmony_ci help 5123d0407baSopenharmony_ci Say yes here to use the PIOBU pins as GPIOs. 5133d0407baSopenharmony_ci 5143d0407baSopenharmony_ci PIOBU pins on the SAMA5D2 can be used as GPIOs. 5153d0407baSopenharmony_ci The difference from regular GPIOs is that they 5163d0407baSopenharmony_ci maintain their value during backup/self-refresh. 5173d0407baSopenharmony_ci 5183d0407baSopenharmony_ciconfig GPIO_SIFIVE 5193d0407baSopenharmony_ci bool "SiFive GPIO support" 5203d0407baSopenharmony_ci depends on OF_GPIO 5213d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 5223d0407baSopenharmony_ci select GPIO_GENERIC 5233d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 5243d0407baSopenharmony_ci select REGMAP_MMIO 5253d0407baSopenharmony_ci help 5263d0407baSopenharmony_ci Say yes here to support the GPIO device on SiFive SoCs. 5273d0407baSopenharmony_ci 5283d0407baSopenharmony_ciconfig GPIO_SIOX 5293d0407baSopenharmony_ci tristate "SIOX GPIO support" 5303d0407baSopenharmony_ci depends on SIOX 5313d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 5323d0407baSopenharmony_ci help 5333d0407baSopenharmony_ci Say yes here to support SIOX I/O devices. These are units connected 5343d0407baSopenharmony_ci via a SIOX bus and have a number of fixed-direction I/O lines. 5353d0407baSopenharmony_ci 5363d0407baSopenharmony_ciconfig GPIO_SNPS_CREG 5373d0407baSopenharmony_ci bool "Synopsys GPIO via CREG (Control REGisters) driver" 5383d0407baSopenharmony_ci depends on ARC || COMPILE_TEST 5393d0407baSopenharmony_ci depends on OF_GPIO 5403d0407baSopenharmony_ci help 5413d0407baSopenharmony_ci This driver supports GPIOs via CREG on various Synopsys SoCs. 5423d0407baSopenharmony_ci This is a single-register MMIO GPIO driver for complex cases 5433d0407baSopenharmony_ci where only several fields in register belong to GPIO lines and 5443d0407baSopenharmony_ci each GPIO line owns a field with different length and on/off value. 5453d0407baSopenharmony_ci 5463d0407baSopenharmony_ciconfig GPIO_SPEAR_SPICS 5473d0407baSopenharmony_ci bool "ST SPEAr13xx SPI Chip Select as GPIO support" 5483d0407baSopenharmony_ci depends on PLAT_SPEAR 5493d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 5503d0407baSopenharmony_ci help 5513d0407baSopenharmony_ci Say yes here to support ST SPEAr SPI Chip Select as GPIO device 5523d0407baSopenharmony_ci 5533d0407baSopenharmony_ciconfig GPIO_SPRD 5543d0407baSopenharmony_ci tristate "Spreadtrum GPIO support" 5553d0407baSopenharmony_ci depends on ARCH_SPRD || COMPILE_TEST 5563d0407baSopenharmony_ci depends on OF_GPIO 5573d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 5583d0407baSopenharmony_ci help 5593d0407baSopenharmony_ci Say yes here to support Spreadtrum GPIO device. 5603d0407baSopenharmony_ci 5613d0407baSopenharmony_ciconfig GPIO_STA2X11 5623d0407baSopenharmony_ci bool "STA2x11/ConneXt GPIO support" 5633d0407baSopenharmony_ci depends on MFD_STA2X11 5643d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 5653d0407baSopenharmony_ci help 5663d0407baSopenharmony_ci Say yes here to support the STA2x11/ConneXt GPIO device. 5673d0407baSopenharmony_ci The GPIO module has 128 GPIO pins with alternate functions. 5683d0407baSopenharmony_ci 5693d0407baSopenharmony_ciconfig GPIO_STP_XWAY 5703d0407baSopenharmony_ci bool "XWAY STP GPIOs" 5713d0407baSopenharmony_ci depends on SOC_XWAY || COMPILE_TEST 5723d0407baSopenharmony_ci depends on OF_GPIO 5733d0407baSopenharmony_ci help 5743d0407baSopenharmony_ci This enables support for the Serial To Parallel (STP) unit found on 5753d0407baSopenharmony_ci XWAY SoC. The STP allows the SoC to drive a shift registers cascade, 5763d0407baSopenharmony_ci that can be up to 24 bit. This peripheral is aimed at driving leds. 5773d0407baSopenharmony_ci Some of the gpios/leds can be auto updated by the soc with dsl and 5783d0407baSopenharmony_ci phy status. 5793d0407baSopenharmony_ci 5803d0407baSopenharmony_ciconfig GPIO_SYSCON 5813d0407baSopenharmony_ci tristate "GPIO based on SYSCON" 5823d0407baSopenharmony_ci depends on MFD_SYSCON && OF 5833d0407baSopenharmony_ci help 5843d0407baSopenharmony_ci Say yes here to support GPIO functionality though SYSCON driver. 5853d0407baSopenharmony_ci 5863d0407baSopenharmony_ciconfig GPIO_TB10X 5873d0407baSopenharmony_ci bool 5883d0407baSopenharmony_ci select GPIO_GENERIC 5893d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 5903d0407baSopenharmony_ci select OF_GPIO 5913d0407baSopenharmony_ci 5923d0407baSopenharmony_ciconfig GPIO_TEGRA 5933d0407baSopenharmony_ci bool "NVIDIA Tegra GPIO support" 5943d0407baSopenharmony_ci default ARCH_TEGRA 5953d0407baSopenharmony_ci depends on ARCH_TEGRA || COMPILE_TEST 5963d0407baSopenharmony_ci depends on OF_GPIO 5973d0407baSopenharmony_ci help 5983d0407baSopenharmony_ci Say yes here to support GPIO pins on NVIDIA Tegra SoCs. 5993d0407baSopenharmony_ci 6003d0407baSopenharmony_ciconfig GPIO_TEGRA186 6013d0407baSopenharmony_ci tristate "NVIDIA Tegra186 GPIO support" 6023d0407baSopenharmony_ci default ARCH_TEGRA_186_SOC || ARCH_TEGRA_194_SOC 6033d0407baSopenharmony_ci depends on ARCH_TEGRA_186_SOC || ARCH_TEGRA_194_SOC || COMPILE_TEST 6043d0407baSopenharmony_ci depends on OF_GPIO 6053d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 6063d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 6073d0407baSopenharmony_ci help 6083d0407baSopenharmony_ci Say yes here to support GPIO pins on NVIDIA Tegra186 SoCs. 6093d0407baSopenharmony_ci 6103d0407baSopenharmony_ciconfig GPIO_TS4800 6113d0407baSopenharmony_ci tristate "TS-4800 DIO blocks and compatibles" 6123d0407baSopenharmony_ci depends on OF_GPIO 6133d0407baSopenharmony_ci depends on SOC_IMX51 || COMPILE_TEST 6143d0407baSopenharmony_ci select GPIO_GENERIC 6153d0407baSopenharmony_ci help 6163d0407baSopenharmony_ci This driver support TS-4800 FPGA GPIO controllers. 6173d0407baSopenharmony_ci 6183d0407baSopenharmony_ciconfig GPIO_THUNDERX 6193d0407baSopenharmony_ci tristate "Cavium ThunderX/OCTEON-TX GPIO" 6203d0407baSopenharmony_ci depends on ARCH_THUNDER || (64BIT && COMPILE_TEST) 6213d0407baSopenharmony_ci depends on PCI_MSI 6223d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 6233d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 6243d0407baSopenharmony_ci select IRQ_FASTEOI_HIERARCHY_HANDLERS 6253d0407baSopenharmony_ci help 6263d0407baSopenharmony_ci Say yes here to support the on-chip GPIO lines on the ThunderX 6273d0407baSopenharmony_ci and OCTEON-TX families of SoCs. 6283d0407baSopenharmony_ci 6293d0407baSopenharmony_ciconfig GPIO_UNIPHIER 6303d0407baSopenharmony_ci tristate "UniPhier GPIO support" 6313d0407baSopenharmony_ci depends on ARCH_UNIPHIER || COMPILE_TEST 6323d0407baSopenharmony_ci depends on OF_GPIO 6333d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 6343d0407baSopenharmony_ci help 6353d0407baSopenharmony_ci Say yes here to support UniPhier GPIOs. 6363d0407baSopenharmony_ci 6373d0407baSopenharmony_ciconfig GPIO_VF610 6383d0407baSopenharmony_ci def_bool y 6393d0407baSopenharmony_ci depends on ARCH_MXC && SOC_VF610 6403d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 6413d0407baSopenharmony_ci help 6423d0407baSopenharmony_ci Say yes here to support Vybrid vf610 GPIOs. 6433d0407baSopenharmony_ci 6443d0407baSopenharmony_ciconfig GPIO_VR41XX 6453d0407baSopenharmony_ci tristate "NEC VR4100 series General-purpose I/O Uint support" 6463d0407baSopenharmony_ci depends on CPU_VR41XX 6473d0407baSopenharmony_ci help 6483d0407baSopenharmony_ci Say yes here to support the NEC VR4100 series General-purpose I/O Uint 6493d0407baSopenharmony_ci 6503d0407baSopenharmony_ciconfig GPIO_VX855 6513d0407baSopenharmony_ci tristate "VIA VX855/VX875 GPIO" 6523d0407baSopenharmony_ci depends on (X86 || COMPILE_TEST) && PCI 6533d0407baSopenharmony_ci select MFD_CORE 6543d0407baSopenharmony_ci select MFD_VX855 6553d0407baSopenharmony_ci help 6563d0407baSopenharmony_ci Support access to the VX855/VX875 GPIO lines through the gpio library. 6573d0407baSopenharmony_ci 6583d0407baSopenharmony_ci This driver provides common support for accessing the device, 6593d0407baSopenharmony_ci additional drivers must be enabled in order to use the 6603d0407baSopenharmony_ci functionality of the device. 6613d0407baSopenharmony_ci 6623d0407baSopenharmony_ciconfig GPIO_WCD934X 6633d0407baSopenharmony_ci tristate "Qualcomm Technologies Inc WCD9340/WCD9341 gpio controller driver" 6643d0407baSopenharmony_ci depends on MFD_WCD934X && OF_GPIO 6653d0407baSopenharmony_ci help 6663d0407baSopenharmony_ci This driver is to supprot GPIO block found on the Qualcomm Technologies 6673d0407baSopenharmony_ci Inc WCD9340/WCD9341 Audio Codec. 6683d0407baSopenharmony_ci 6693d0407baSopenharmony_ciconfig GPIO_XGENE 6703d0407baSopenharmony_ci bool "APM X-Gene GPIO controller support" 6713d0407baSopenharmony_ci depends on ARM64 && OF_GPIO 6723d0407baSopenharmony_ci help 6733d0407baSopenharmony_ci This driver is to support the GPIO block within the APM X-Gene SoC 6743d0407baSopenharmony_ci platform's generic flash controller. The GPIO pins are muxed with 6753d0407baSopenharmony_ci the generic flash controller's address and data pins. Say yes 6763d0407baSopenharmony_ci here to enable the GFC GPIO functionality. 6773d0407baSopenharmony_ci 6783d0407baSopenharmony_ciconfig GPIO_XGENE_SB 6793d0407baSopenharmony_ci tristate "APM X-Gene GPIO standby controller support" 6803d0407baSopenharmony_ci depends on (ARCH_XGENE || COMPILE_TEST) 6813d0407baSopenharmony_ci select GPIO_GENERIC 6823d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 6833d0407baSopenharmony_ci select IRQ_DOMAIN_HIERARCHY 6843d0407baSopenharmony_ci help 6853d0407baSopenharmony_ci This driver supports the GPIO block within the APM X-Gene 6863d0407baSopenharmony_ci Standby Domain. Say yes here to enable the GPIO functionality. 6873d0407baSopenharmony_ci 6883d0407baSopenharmony_ciconfig GPIO_XILINX 6893d0407baSopenharmony_ci tristate "Xilinx GPIO support" 6903d0407baSopenharmony_ci help 6913d0407baSopenharmony_ci Say yes here to support the Xilinx FPGA GPIO device 6923d0407baSopenharmony_ci 6933d0407baSopenharmony_ciconfig GPIO_XLP 6943d0407baSopenharmony_ci tristate "Netlogic XLP GPIO support" 6953d0407baSopenharmony_ci depends on OF_GPIO && (CPU_XLP || ARCH_THUNDER2 || COMPILE_TEST) 6963d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 6973d0407baSopenharmony_ci help 6983d0407baSopenharmony_ci This driver provides support for GPIO interface on Netlogic XLP MIPS64 6993d0407baSopenharmony_ci SoCs. Currently supported XLP variants are XLP8XX, XLP3XX, XLP2XX, 7003d0407baSopenharmony_ci XLP9XX and XLP5XX. The same GPIO controller block is also present in 7013d0407baSopenharmony_ci Cavium's ThunderX2 CN99XX SoCs. 7023d0407baSopenharmony_ci 7033d0407baSopenharmony_ci If unsure, say N. 7043d0407baSopenharmony_ci 7053d0407baSopenharmony_ciconfig GPIO_XTENSA 7063d0407baSopenharmony_ci bool "Xtensa GPIO32 support" 7073d0407baSopenharmony_ci depends on XTENSA 7083d0407baSopenharmony_ci depends on HAVE_XTENSA_GPIO32 7093d0407baSopenharmony_ci depends on !SMP 7103d0407baSopenharmony_ci help 7113d0407baSopenharmony_ci Say yes here to support the Xtensa internal GPIO32 IMPWIRE (input) 7123d0407baSopenharmony_ci and EXPSTATE (output) ports 7133d0407baSopenharmony_ci 7143d0407baSopenharmony_ciconfig GPIO_ZEVIO 7153d0407baSopenharmony_ci bool "LSI ZEVIO SoC memory mapped GPIOs" 7163d0407baSopenharmony_ci depends on ARM && OF_GPIO 7173d0407baSopenharmony_ci help 7183d0407baSopenharmony_ci Say yes here to support the GPIO controller in LSI ZEVIO SoCs. 7193d0407baSopenharmony_ci 7203d0407baSopenharmony_ciconfig GPIO_ZYNQ 7213d0407baSopenharmony_ci tristate "Xilinx Zynq GPIO support" 7223d0407baSopenharmony_ci depends on ARCH_ZYNQ || ARCH_ZYNQMP 7233d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 7243d0407baSopenharmony_ci help 7253d0407baSopenharmony_ci Say yes here to support Xilinx Zynq GPIO controller. 7263d0407baSopenharmony_ci 7273d0407baSopenharmony_ciconfig GPIO_ZX 7283d0407baSopenharmony_ci bool "ZTE ZX GPIO support" 7293d0407baSopenharmony_ci depends on ARCH_ZX || COMPILE_TEST 7303d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 7313d0407baSopenharmony_ci help 7323d0407baSopenharmony_ci Say yes here to support the GPIO device on ZTE ZX SoCs. 7333d0407baSopenharmony_ci 7343d0407baSopenharmony_ciconfig GPIO_LOONGSON1 7353d0407baSopenharmony_ci tristate "Loongson1 GPIO support" 7363d0407baSopenharmony_ci depends on MACH_LOONGSON32 7373d0407baSopenharmony_ci select GPIO_GENERIC 7383d0407baSopenharmony_ci help 7393d0407baSopenharmony_ci Say Y or M here to support GPIO on Loongson1 SoCs. 7403d0407baSopenharmony_ci 7413d0407baSopenharmony_ciconfig GPIO_AMD_FCH 7423d0407baSopenharmony_ci tristate "GPIO support for AMD Fusion Controller Hub (G-series SOCs)" 7433d0407baSopenharmony_ci help 7443d0407baSopenharmony_ci This option enables driver for GPIO on AMDs Fusion Controller Hub, 7453d0407baSopenharmony_ci as found on G-series SOCs (eg. GX-412TC) 7463d0407baSopenharmony_ci 7473d0407baSopenharmony_ci Note: This driver doesn't registers itself automatically, as it 7483d0407baSopenharmony_ci needs to be provided with platform specific configuration. 7493d0407baSopenharmony_ci (See eg. CONFIG_PCENGINES_APU2.) 7503d0407baSopenharmony_ciendmenu 7513d0407baSopenharmony_ci 7523d0407baSopenharmony_cimenu "Port-mapped I/O GPIO drivers" 7533d0407baSopenharmony_ci depends on X86 # Unconditional I/O space access 7543d0407baSopenharmony_ci 7553d0407baSopenharmony_ciconfig GPIO_104_DIO_48E 7563d0407baSopenharmony_ci tristate "ACCES 104-DIO-48E GPIO support" 7573d0407baSopenharmony_ci depends on PC104 7583d0407baSopenharmony_ci select ISA_BUS_API 7593d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 7603d0407baSopenharmony_ci help 7613d0407baSopenharmony_ci Enables GPIO support for the ACCES 104-DIO-48E series (104-DIO-48E, 7623d0407baSopenharmony_ci 104-DIO-24E). The base port addresses for the devices may be 7633d0407baSopenharmony_ci configured via the base module parameter. The interrupt line numbers 7643d0407baSopenharmony_ci for the devices may be configured via the irq module parameter. 7653d0407baSopenharmony_ci 7663d0407baSopenharmony_ciconfig GPIO_104_IDIO_16 7673d0407baSopenharmony_ci tristate "ACCES 104-IDIO-16 GPIO support" 7683d0407baSopenharmony_ci depends on PC104 7693d0407baSopenharmony_ci select ISA_BUS_API 7703d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 7713d0407baSopenharmony_ci help 7723d0407baSopenharmony_ci Enables GPIO support for the ACCES 104-IDIO-16 family (104-IDIO-16, 7733d0407baSopenharmony_ci 104-IDIO-16E, 104-IDO-16, 104-IDIO-8, 104-IDIO-8E, 104-IDO-8). The 7743d0407baSopenharmony_ci base port addresses for the devices may be configured via the base 7753d0407baSopenharmony_ci module parameter. The interrupt line numbers for the devices may be 7763d0407baSopenharmony_ci configured via the irq module parameter. 7773d0407baSopenharmony_ci 7783d0407baSopenharmony_ciconfig GPIO_104_IDI_48 7793d0407baSopenharmony_ci tristate "ACCES 104-IDI-48 GPIO support" 7803d0407baSopenharmony_ci depends on PC104 7813d0407baSopenharmony_ci select ISA_BUS_API 7823d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 7833d0407baSopenharmony_ci help 7843d0407baSopenharmony_ci Enables GPIO support for the ACCES 104-IDI-48 family (104-IDI-48A, 7853d0407baSopenharmony_ci 104-IDI-48AC, 104-IDI-48B, 104-IDI-48BC). The base port addresses for 7863d0407baSopenharmony_ci the devices may be configured via the base module parameter. The 7873d0407baSopenharmony_ci interrupt line numbers for the devices may be configured via the irq 7883d0407baSopenharmony_ci module parameter. 7893d0407baSopenharmony_ci 7903d0407baSopenharmony_ciconfig GPIO_F7188X 7913d0407baSopenharmony_ci tristate "F71869, F71869A, F71882FG, F71889F and F81866 GPIO support" 7923d0407baSopenharmony_ci help 7933d0407baSopenharmony_ci This option enables support for GPIOs found on Fintek Super-I/O 7943d0407baSopenharmony_ci chips F71869, F71869A, F71882FG, F71889F and F81866. 7953d0407baSopenharmony_ci 7963d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 7973d0407baSopenharmony_ci be called f7188x-gpio. 7983d0407baSopenharmony_ci 7993d0407baSopenharmony_ciconfig GPIO_GPIO_MM 8003d0407baSopenharmony_ci tristate "Diamond Systems GPIO-MM GPIO support" 8013d0407baSopenharmony_ci depends on PC104 8023d0407baSopenharmony_ci select ISA_BUS_API 8033d0407baSopenharmony_ci help 8043d0407baSopenharmony_ci Enables GPIO support for the Diamond Systems GPIO-MM and GPIO-MM-12. 8053d0407baSopenharmony_ci 8063d0407baSopenharmony_ci The Diamond Systems GPIO-MM device features 48 lines of digital I/O 8073d0407baSopenharmony_ci via the emulation of dual 82C55A PPI chips. This driver provides GPIO 8083d0407baSopenharmony_ci support for these 48 channels of digital I/O. 8093d0407baSopenharmony_ci 8103d0407baSopenharmony_ci The base port addresses for the devices may be configured via the base 8113d0407baSopenharmony_ci array module parameter. 8123d0407baSopenharmony_ci 8133d0407baSopenharmony_ciconfig GPIO_IT87 8143d0407baSopenharmony_ci tristate "IT87xx GPIO support" 8153d0407baSopenharmony_ci help 8163d0407baSopenharmony_ci Say yes here to support GPIO functionality of IT87xx Super I/O chips. 8173d0407baSopenharmony_ci 8183d0407baSopenharmony_ci This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and 8193d0407baSopenharmony_ci supports the IT8761E, IT8613, IT8620E, and IT8628E Super I/O chips as 8203d0407baSopenharmony_ci well. 8213d0407baSopenharmony_ci 8223d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 8233d0407baSopenharmony_ci be called gpio_it87 8243d0407baSopenharmony_ci 8253d0407baSopenharmony_ciconfig GPIO_SCH 8263d0407baSopenharmony_ci tristate "Intel SCH/TunnelCreek/Centerton/Quark X1000 GPIO" 8273d0407baSopenharmony_ci depends on (X86 || COMPILE_TEST) && PCI 8283d0407baSopenharmony_ci select MFD_CORE 8293d0407baSopenharmony_ci select LPC_SCH 8303d0407baSopenharmony_ci help 8313d0407baSopenharmony_ci Say yes here to support GPIO interface on Intel Poulsbo SCH, 8323d0407baSopenharmony_ci Intel Tunnel Creek processor, Intel Centerton processor or 8333d0407baSopenharmony_ci Intel Quark X1000 SoC. 8343d0407baSopenharmony_ci 8353d0407baSopenharmony_ci The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are 8363d0407baSopenharmony_ci powered by the core power rail and are turned off during sleep 8373d0407baSopenharmony_ci modes (S3 and higher). The remaining four GPIOs are powered by 8383d0407baSopenharmony_ci the Intel SCH suspend power supply. These GPIOs remain 8393d0407baSopenharmony_ci active during S3. The suspend powered GPIOs can be used to wake the 8403d0407baSopenharmony_ci system from the Suspend-to-RAM state. 8413d0407baSopenharmony_ci 8423d0407baSopenharmony_ci The Intel Tunnel Creek processor has 5 GPIOs powered by the 8433d0407baSopenharmony_ci core power rail and 9 from suspend power supply. 8443d0407baSopenharmony_ci 8453d0407baSopenharmony_ci The Intel Centerton processor has a total of 30 GPIO pins. 8463d0407baSopenharmony_ci Twenty-one are powered by the core power rail and 9 from the 8473d0407baSopenharmony_ci suspend power supply. 8483d0407baSopenharmony_ci 8493d0407baSopenharmony_ci The Intel Quark X1000 SoC has 2 GPIOs powered by the core 8503d0407baSopenharmony_ci power well and 6 from the suspend power well. 8513d0407baSopenharmony_ci 8523d0407baSopenharmony_ciconfig GPIO_SCH311X 8533d0407baSopenharmony_ci tristate "SMSC SCH311x SuperI/O GPIO" 8543d0407baSopenharmony_ci help 8553d0407baSopenharmony_ci Driver to enable the GPIOs found on SMSC SMSC SCH3112, SCH3114 and 8563d0407baSopenharmony_ci SCH3116 "Super I/O" chipsets. 8573d0407baSopenharmony_ci 8583d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 8593d0407baSopenharmony_ci be called gpio-sch311x. 8603d0407baSopenharmony_ci 8613d0407baSopenharmony_ciconfig GPIO_TS5500 8623d0407baSopenharmony_ci tristate "TS-5500 DIO blocks and compatibles" 8633d0407baSopenharmony_ci depends on TS5500 || COMPILE_TEST 8643d0407baSopenharmony_ci help 8653d0407baSopenharmony_ci This driver supports Digital I/O exposed by pin blocks found on some 8663d0407baSopenharmony_ci Technologic Systems platforms. It includes, but is not limited to, 3 8673d0407baSopenharmony_ci blocks of the TS-5500: DIO1, DIO2 and the LCD port, and the TS-5600 8683d0407baSopenharmony_ci LCD port. 8693d0407baSopenharmony_ci 8703d0407baSopenharmony_ciconfig GPIO_WINBOND 8713d0407baSopenharmony_ci tristate "Winbond Super I/O GPIO support" 8723d0407baSopenharmony_ci select ISA_BUS_API 8733d0407baSopenharmony_ci help 8743d0407baSopenharmony_ci This option enables support for GPIOs found on Winbond Super I/O 8753d0407baSopenharmony_ci chips. 8763d0407baSopenharmony_ci Currently, only W83627UHG (also known as Nuvoton NCT6627UD) is 8773d0407baSopenharmony_ci supported. 8783d0407baSopenharmony_ci 8793d0407baSopenharmony_ci You will need to provide a module parameter "gpios", or a 8803d0407baSopenharmony_ci boot-time parameter "gpio_winbond.gpios" with a bitmask of GPIO 8813d0407baSopenharmony_ci ports to enable (bit 0 is GPIO1, bit 1 is GPIO2, etc.). 8823d0407baSopenharmony_ci 8833d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 8843d0407baSopenharmony_ci be called gpio-winbond. 8853d0407baSopenharmony_ci 8863d0407baSopenharmony_ciconfig GPIO_WS16C48 8873d0407baSopenharmony_ci tristate "WinSystems WS16C48 GPIO support" 8883d0407baSopenharmony_ci select ISA_BUS_API 8893d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 8903d0407baSopenharmony_ci help 8913d0407baSopenharmony_ci Enables GPIO support for the WinSystems WS16C48. The base port 8923d0407baSopenharmony_ci addresses for the devices may be configured via the base module 8933d0407baSopenharmony_ci parameter. The interrupt line numbers for the devices may be 8943d0407baSopenharmony_ci configured via the irq module parameter. 8953d0407baSopenharmony_ci 8963d0407baSopenharmony_ciendmenu 8973d0407baSopenharmony_ci 8983d0407baSopenharmony_cimenu "I2C GPIO expanders" 8993d0407baSopenharmony_ci depends on I2C 9003d0407baSopenharmony_ci 9013d0407baSopenharmony_ciconfig GPIO_ADP5588 9023d0407baSopenharmony_ci tristate "ADP5588 I2C GPIO expander" 9033d0407baSopenharmony_ci help 9043d0407baSopenharmony_ci This option enables support for 18 GPIOs found 9053d0407baSopenharmony_ci on Analog Devices ADP5588 GPIO Expanders. 9063d0407baSopenharmony_ci 9073d0407baSopenharmony_ciconfig GPIO_ADP5588_IRQ 9083d0407baSopenharmony_ci bool "Interrupt controller support for ADP5588" 9093d0407baSopenharmony_ci depends on GPIO_ADP5588=y 9103d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 9113d0407baSopenharmony_ci help 9123d0407baSopenharmony_ci Say yes here to enable the adp5588 to be used as an interrupt 9133d0407baSopenharmony_ci controller. It requires the driver to be built in the kernel. 9143d0407baSopenharmony_ci 9153d0407baSopenharmony_ciconfig GPIO_ADNP 9163d0407baSopenharmony_ci tristate "Avionic Design N-bit GPIO expander" 9173d0407baSopenharmony_ci depends on OF_GPIO 9183d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 9193d0407baSopenharmony_ci help 9203d0407baSopenharmony_ci This option enables support for N GPIOs found on Avionic Design 9213d0407baSopenharmony_ci I2C GPIO expanders. The register space will be extended by powers 9223d0407baSopenharmony_ci of two, so the controller will need to accommodate for that. For 9233d0407baSopenharmony_ci example: if a controller provides 48 pins, 6 registers will be 9243d0407baSopenharmony_ci enough to represent all pins, but the driver will assume a 9253d0407baSopenharmony_ci register layout for 64 pins (8 registers). 9263d0407baSopenharmony_ci 9273d0407baSopenharmony_ciconfig GPIO_GW_PLD 9283d0407baSopenharmony_ci tristate "Gateworks PLD GPIO Expander" 9293d0407baSopenharmony_ci depends on OF_GPIO 9303d0407baSopenharmony_ci help 9313d0407baSopenharmony_ci Say yes here to provide access to the Gateworks I2C PLD GPIO 9323d0407baSopenharmony_ci Expander. This is used at least on the Cambria GW2358-4. 9333d0407baSopenharmony_ci 9343d0407baSopenharmony_ciconfig GPIO_MAX7300 9353d0407baSopenharmony_ci tristate "Maxim MAX7300 GPIO expander" 9363d0407baSopenharmony_ci select GPIO_MAX730X 9373d0407baSopenharmony_ci help 9383d0407baSopenharmony_ci GPIO driver for Maxim MAX7300 I2C-based GPIO expander. 9393d0407baSopenharmony_ci 9403d0407baSopenharmony_ciconfig GPIO_MAX732X 9413d0407baSopenharmony_ci tristate "MAX7319, MAX7320-7327 I2C Port Expanders" 9423d0407baSopenharmony_ci help 9433d0407baSopenharmony_ci Say yes here to support the MAX7319, MAX7320-7327 series of I2C 9443d0407baSopenharmony_ci Port Expanders. Each IO port on these chips has a fixed role of 9453d0407baSopenharmony_ci Input (designated by 'I'), Push-Pull Output ('O'), or Open-Drain 9463d0407baSopenharmony_ci Input and Output (designed by 'P'). The combinations are listed 9473d0407baSopenharmony_ci below: 9483d0407baSopenharmony_ci 9493d0407baSopenharmony_ci 8 bits: max7319 (8I), max7320 (8O), max7321 (8P), 9503d0407baSopenharmony_ci max7322 (4I4O), max7323 (4P4O) 9513d0407baSopenharmony_ci 9523d0407baSopenharmony_ci 16 bits: max7324 (8I8O), max7325 (8P8O), 9533d0407baSopenharmony_ci max7326 (4I12O), max7327 (4P12O) 9543d0407baSopenharmony_ci 9553d0407baSopenharmony_ci Board setup code must specify the model to use, and the start 9563d0407baSopenharmony_ci number for these GPIOs. 9573d0407baSopenharmony_ci 9583d0407baSopenharmony_ciconfig GPIO_MAX732X_IRQ 9593d0407baSopenharmony_ci bool "Interrupt controller support for MAX732x" 9603d0407baSopenharmony_ci depends on GPIO_MAX732X=y 9613d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 9623d0407baSopenharmony_ci help 9633d0407baSopenharmony_ci Say yes here to enable the max732x to be used as an interrupt 9643d0407baSopenharmony_ci controller. It requires the driver to be built in the kernel. 9653d0407baSopenharmony_ci 9663d0407baSopenharmony_ciconfig GPIO_MC9S08DZ60 9673d0407baSopenharmony_ci bool "MX35 3DS BOARD MC9S08DZ60 GPIO functions" 9683d0407baSopenharmony_ci depends on I2C=y && MACH_MX35_3DS 9693d0407baSopenharmony_ci help 9703d0407baSopenharmony_ci Select this to enable the MC9S08DZ60 GPIO driver 9713d0407baSopenharmony_ci 9723d0407baSopenharmony_ciconfig GPIO_PCA953X 9733d0407baSopenharmony_ci tristate "PCA95[357]x, PCA9698, TCA64xx, and MAX7310 I/O ports" 9743d0407baSopenharmony_ci select REGMAP_I2C 9753d0407baSopenharmony_ci help 9763d0407baSopenharmony_ci Say yes here to provide access to several register-oriented 9773d0407baSopenharmony_ci SMBus I/O expanders, made mostly by NXP or TI. Compatible 9783d0407baSopenharmony_ci models include: 9793d0407baSopenharmony_ci 9803d0407baSopenharmony_ci 4 bits: pca9536, pca9537 9813d0407baSopenharmony_ci 9823d0407baSopenharmony_ci 8 bits: max7310, max7315, pca6107, pca9534, pca9538, pca9554, 9833d0407baSopenharmony_ci pca9556, pca9557, pca9574, tca6408, tca9554, xra1202 9843d0407baSopenharmony_ci 9853d0407baSopenharmony_ci 16 bits: max7312, max7313, pca9535, pca9539, pca9555, pca9575, 9863d0407baSopenharmony_ci tca6416 9873d0407baSopenharmony_ci 9883d0407baSopenharmony_ci 24 bits: tca6424 9893d0407baSopenharmony_ci 9903d0407baSopenharmony_ci 40 bits: pca9505, pca9698 9913d0407baSopenharmony_ci 9923d0407baSopenharmony_ciconfig GPIO_PCA953X_IRQ 9933d0407baSopenharmony_ci bool "Interrupt controller support for PCA953x" 9943d0407baSopenharmony_ci depends on GPIO_PCA953X 9953d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 9963d0407baSopenharmony_ci help 9973d0407baSopenharmony_ci Say yes here to enable the pca953x to be used as an interrupt 9983d0407baSopenharmony_ci controller. It requires the driver to be built in the kernel. 9993d0407baSopenharmony_ci 10003d0407baSopenharmony_ciconfig GPIO_PCA9570 10013d0407baSopenharmony_ci tristate "PCA9570 4-Bit I2C GPO expander" 10023d0407baSopenharmony_ci help 10033d0407baSopenharmony_ci Say yes here to enable the GPO driver for the NXP PCA9570 chip. 10043d0407baSopenharmony_ci 10053d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 10063d0407baSopenharmony_ci be called gpio-pca9570. 10073d0407baSopenharmony_ci 10083d0407baSopenharmony_ciconfig GPIO_PCF857X 10093d0407baSopenharmony_ci tristate "PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders" 10103d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 10113d0407baSopenharmony_ci select IRQ_DOMAIN 10123d0407baSopenharmony_ci help 10133d0407baSopenharmony_ci Say yes here to provide access to most "quasi-bidirectional" I2C 10143d0407baSopenharmony_ci GPIO expanders used for additional digital outputs or inputs. 10153d0407baSopenharmony_ci Most of these parts are from NXP, though TI is a second source for 10163d0407baSopenharmony_ci some of them. Compatible models include: 10173d0407baSopenharmony_ci 10183d0407baSopenharmony_ci 8 bits: pcf8574, pcf8574a, pca8574, pca8574a, 10193d0407baSopenharmony_ci pca9670, pca9672, pca9674, pca9674a, 10203d0407baSopenharmony_ci max7328, max7329 10213d0407baSopenharmony_ci 10223d0407baSopenharmony_ci 16 bits: pcf8575, pcf8575c, pca8575, 10233d0407baSopenharmony_ci pca9671, pca9673, pca9675 10243d0407baSopenharmony_ci 10253d0407baSopenharmony_ci Your board setup code will need to declare the expanders in 10263d0407baSopenharmony_ci use, and assign numbers to the GPIOs they expose. Those GPIOs 10273d0407baSopenharmony_ci can then be used from drivers and other kernel code, just like 10283d0407baSopenharmony_ci other GPIOs, but only accessible from task contexts. 10293d0407baSopenharmony_ci 10303d0407baSopenharmony_ci This driver provides an in-kernel interface to those GPIOs using 10313d0407baSopenharmony_ci platform-neutral GPIO calls. 10323d0407baSopenharmony_ci 10333d0407baSopenharmony_ciconfig GPIO_TPIC2810 10343d0407baSopenharmony_ci tristate "TPIC2810 8-Bit I2C GPO expander" 10353d0407baSopenharmony_ci help 10363d0407baSopenharmony_ci Say yes here to enable the GPO driver for the TI TPIC2810 chip. 10373d0407baSopenharmony_ci 10383d0407baSopenharmony_ci To compile this driver as a module, choose M here: the module will 10393d0407baSopenharmony_ci be called gpio-tpic2810. 10403d0407baSopenharmony_ci 10413d0407baSopenharmony_ciconfig GPIO_TS4900 10423d0407baSopenharmony_ci tristate "Technologic Systems FPGA I2C GPIO" 10433d0407baSopenharmony_ci depends on SOC_IMX6 || COMPILE_TEST 10443d0407baSopenharmony_ci select REGMAP_I2C 10453d0407baSopenharmony_ci help 10463d0407baSopenharmony_ci Say yes here to enabled the GPIO driver for Technologic's FPGA core. 10473d0407baSopenharmony_ci Series supported include TS-4100, TS-4900, TS-7970 and TS-7990. 10483d0407baSopenharmony_ci 10493d0407baSopenharmony_ciendmenu 10503d0407baSopenharmony_ci 10513d0407baSopenharmony_cimenu "MFD GPIO expanders" 10523d0407baSopenharmony_ci 10533d0407baSopenharmony_ciconfig GPIO_ADP5520 10543d0407baSopenharmony_ci tristate "GPIO Support for ADP5520 PMIC" 10553d0407baSopenharmony_ci depends on PMIC_ADP5520 10563d0407baSopenharmony_ci help 10573d0407baSopenharmony_ci This option enables support for on-chip GPIO found 10583d0407baSopenharmony_ci on Analog Devices ADP5520 PMICs. 10593d0407baSopenharmony_ci 10603d0407baSopenharmony_ciconfig GPIO_ALTERA_A10SR 10613d0407baSopenharmony_ci tristate "Altera Arria10 System Resource GPIO" 10623d0407baSopenharmony_ci depends on MFD_ALTERA_A10SR 10633d0407baSopenharmony_ci help 10643d0407baSopenharmony_ci Driver for Arria10 Development Kit GPIO expansion which 10653d0407baSopenharmony_ci includes reads of pushbuttons and DIP switches as well 10663d0407baSopenharmony_ci as writes to LEDs. 10673d0407baSopenharmony_ci 10683d0407baSopenharmony_ciconfig GPIO_ARIZONA 10693d0407baSopenharmony_ci tristate "Wolfson Microelectronics Arizona class devices" 10703d0407baSopenharmony_ci depends on MFD_ARIZONA 10713d0407baSopenharmony_ci help 10723d0407baSopenharmony_ci Support for GPIOs on Wolfson Arizona class devices. 10733d0407baSopenharmony_ci 10743d0407baSopenharmony_ciconfig GPIO_BD70528 10753d0407baSopenharmony_ci tristate "ROHM BD70528 GPIO support" 10763d0407baSopenharmony_ci depends on MFD_ROHM_BD70528 10773d0407baSopenharmony_ci help 10783d0407baSopenharmony_ci Support for GPIOs on ROHM BD70528 PMIC. There are four GPIOs 10793d0407baSopenharmony_ci available on the ROHM PMIC in total. The GPIOs can also 10803d0407baSopenharmony_ci generate interrupts. 10813d0407baSopenharmony_ci 10823d0407baSopenharmony_ci This driver can also be built as a module. If so, the module 10833d0407baSopenharmony_ci will be called gpio-bd70528. 10843d0407baSopenharmony_ci 10853d0407baSopenharmony_ciconfig GPIO_BD71828 10863d0407baSopenharmony_ci tristate "ROHM BD71828 GPIO support" 10873d0407baSopenharmony_ci depends on MFD_ROHM_BD71828 10883d0407baSopenharmony_ci help 10893d0407baSopenharmony_ci Support for GPIOs on ROHM BD71828 PMIC. There are three GPIOs 10903d0407baSopenharmony_ci available on the ROHM PMIC in total. The GPIOs are limited to 10913d0407baSopenharmony_ci outputs only and pins must be configured to GPIO outputs by 10923d0407baSopenharmony_ci OTP. Enable this only if you want to use these pins as outputs. 10933d0407baSopenharmony_ci 10943d0407baSopenharmony_ci This driver can also be built as a module. If so, the module 10953d0407baSopenharmony_ci will be called gpio-bd71828. 10963d0407baSopenharmony_ci 10973d0407baSopenharmony_ciconfig GPIO_BD9571MWV 10983d0407baSopenharmony_ci tristate "ROHM BD9571 GPIO support" 10993d0407baSopenharmony_ci depends on MFD_BD9571MWV 11003d0407baSopenharmony_ci help 11013d0407baSopenharmony_ci Support for GPIOs on ROHM BD9571 PMIC. There are two GPIOs 11023d0407baSopenharmony_ci available on the ROHM PMIC in total, both of which can also 11033d0407baSopenharmony_ci generate interrupts. 11043d0407baSopenharmony_ci 11053d0407baSopenharmony_ci This driver can also be built as a module. If so, the module 11063d0407baSopenharmony_ci will be called gpio-bd9571mwv. 11073d0407baSopenharmony_ci 11083d0407baSopenharmony_ciconfig GPIO_CRYSTAL_COVE 11093d0407baSopenharmony_ci tristate "GPIO support for Crystal Cove PMIC" 11103d0407baSopenharmony_ci depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC 11113d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 11123d0407baSopenharmony_ci help 11133d0407baSopenharmony_ci Support for GPIO pins on Crystal Cove PMIC. 11143d0407baSopenharmony_ci 11153d0407baSopenharmony_ci Say Yes if you have a Intel SoC based tablet with Crystal Cove PMIC 11163d0407baSopenharmony_ci inside. 11173d0407baSopenharmony_ci 11183d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 11193d0407baSopenharmony_ci called gpio-crystalcove. 11203d0407baSopenharmony_ci 11213d0407baSopenharmony_ciconfig GPIO_CS5535 11223d0407baSopenharmony_ci tristate "AMD CS5535/CS5536 GPIO support" 11233d0407baSopenharmony_ci depends on X86 || MIPS || COMPILE_TEST 11243d0407baSopenharmony_ci depends on MFD_CS5535 11253d0407baSopenharmony_ci help 11263d0407baSopenharmony_ci The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that 11273d0407baSopenharmony_ci can be used for quite a number of things. The CS5535/6 is found on 11283d0407baSopenharmony_ci AMD Geode and Lemote Yeeloong devices. 11293d0407baSopenharmony_ci 11303d0407baSopenharmony_ci If unsure, say N. 11313d0407baSopenharmony_ci 11323d0407baSopenharmony_ciconfig GPIO_DA9052 11333d0407baSopenharmony_ci tristate "Dialog DA9052 GPIO" 11343d0407baSopenharmony_ci depends on PMIC_DA9052 11353d0407baSopenharmony_ci help 11363d0407baSopenharmony_ci Say yes here to enable the GPIO driver for the DA9052 chip. 11373d0407baSopenharmony_ci 11383d0407baSopenharmony_ciconfig GPIO_DA9055 11393d0407baSopenharmony_ci tristate "Dialog Semiconductor DA9055 GPIO" 11403d0407baSopenharmony_ci depends on MFD_DA9055 11413d0407baSopenharmony_ci help 11423d0407baSopenharmony_ci Say yes here to enable the GPIO driver for the DA9055 chip. 11433d0407baSopenharmony_ci 11443d0407baSopenharmony_ci The Dialog DA9055 PMIC chip has 3 GPIO pins that can be 11453d0407baSopenharmony_ci be controller by this driver. 11463d0407baSopenharmony_ci 11473d0407baSopenharmony_ci If driver is built as a module it will be called gpio-da9055. 11483d0407baSopenharmony_ci 11493d0407baSopenharmony_ciconfig GPIO_DLN2 11503d0407baSopenharmony_ci tristate "Diolan DLN2 GPIO support" 11513d0407baSopenharmony_ci depends on MFD_DLN2 11523d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 11533d0407baSopenharmony_ci 11543d0407baSopenharmony_ci help 11553d0407baSopenharmony_ci Select this option to enable GPIO driver for the Diolan DLN2 11563d0407baSopenharmony_ci board. 11573d0407baSopenharmony_ci 11583d0407baSopenharmony_ci This driver can also be built as a module. If so, the module 11593d0407baSopenharmony_ci will be called gpio-dln2. 11603d0407baSopenharmony_ci 11613d0407baSopenharmony_ciconfig HTC_EGPIO 11623d0407baSopenharmony_ci bool "HTC EGPIO support" 11633d0407baSopenharmony_ci depends on ARM 11643d0407baSopenharmony_ci help 11653d0407baSopenharmony_ci This driver supports the CPLD egpio chip present on 11663d0407baSopenharmony_ci several HTC phones. It provides basic support for input 11673d0407baSopenharmony_ci pins, output pins, and irqs. 11683d0407baSopenharmony_ci 11693d0407baSopenharmony_ciconfig GPIO_JANZ_TTL 11703d0407baSopenharmony_ci tristate "Janz VMOD-TTL Digital IO Module" 11713d0407baSopenharmony_ci depends on MFD_JANZ_CMODIO 11723d0407baSopenharmony_ci help 11733d0407baSopenharmony_ci This enables support for the Janz VMOD-TTL Digital IO module. 11743d0407baSopenharmony_ci This driver provides support for driving the pins in output 11753d0407baSopenharmony_ci mode only. Input mode is not supported. 11763d0407baSopenharmony_ci 11773d0407baSopenharmony_ciconfig GPIO_KEMPLD 11783d0407baSopenharmony_ci tristate "Kontron ETX / COMexpress GPIO" 11793d0407baSopenharmony_ci depends on MFD_KEMPLD 11803d0407baSopenharmony_ci help 11813d0407baSopenharmony_ci This enables support for the PLD GPIO interface on some Kontron ETX 11823d0407baSopenharmony_ci and COMexpress (ETXexpress) modules. 11833d0407baSopenharmony_ci 11843d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 11853d0407baSopenharmony_ci called gpio-kempld. 11863d0407baSopenharmony_ci 11873d0407baSopenharmony_ciconfig GPIO_LP3943 11883d0407baSopenharmony_ci tristate "TI/National Semiconductor LP3943 GPIO expander" 11893d0407baSopenharmony_ci depends on MFD_LP3943 11903d0407baSopenharmony_ci help 11913d0407baSopenharmony_ci GPIO driver for LP3943 MFD. 11923d0407baSopenharmony_ci LP3943 can be used as a GPIO expander which provides up to 16 GPIOs. 11933d0407baSopenharmony_ci Open drain outputs are required for this usage. 11943d0407baSopenharmony_ci 11953d0407baSopenharmony_ciconfig GPIO_LP873X 11963d0407baSopenharmony_ci tristate "TI LP873X GPO" 11973d0407baSopenharmony_ci depends on MFD_TI_LP873X 11983d0407baSopenharmony_ci help 11993d0407baSopenharmony_ci This driver supports the GPO on TI Lp873x PMICs. 2 GPOs are present 12003d0407baSopenharmony_ci on LP873X PMICs. 12013d0407baSopenharmony_ci 12023d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 12033d0407baSopenharmony_ci called gpio-lp873x. 12043d0407baSopenharmony_ci 12053d0407baSopenharmony_ciconfig GPIO_LP87565 12063d0407baSopenharmony_ci tristate "TI LP87565 GPIO" 12073d0407baSopenharmony_ci depends on MFD_TI_LP87565 12083d0407baSopenharmony_ci help 12093d0407baSopenharmony_ci This driver supports the GPIO on TI Lp873565 PMICs. 3 GPIOs are present 12103d0407baSopenharmony_ci on LP87565 PMICs. 12113d0407baSopenharmony_ci 12123d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 12133d0407baSopenharmony_ci called gpio-lp87565. 12143d0407baSopenharmony_ci 12153d0407baSopenharmony_ciconfig GPIO_MADERA 12163d0407baSopenharmony_ci tristate "Cirrus Logic Madera class codecs" 12173d0407baSopenharmony_ci depends on PINCTRL_MADERA 12183d0407baSopenharmony_ci help 12193d0407baSopenharmony_ci Support for GPIOs on Cirrus Logic Madera class codecs. 12203d0407baSopenharmony_ci 12213d0407baSopenharmony_ciconfig GPIO_MAX77620 12223d0407baSopenharmony_ci tristate "GPIO support for PMIC MAX77620 and MAX20024" 12233d0407baSopenharmony_ci depends on MFD_MAX77620 12243d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 12253d0407baSopenharmony_ci help 12263d0407baSopenharmony_ci GPIO driver for MAX77620 and MAX20024 PMIC from Maxim Semiconductor. 12273d0407baSopenharmony_ci MAX77620 PMIC has 8 pins that can be configured as GPIOs. The 12283d0407baSopenharmony_ci driver also provides interrupt support for each of the gpios. 12293d0407baSopenharmony_ci Say yes here to enable the max77620 to be used as gpio controller. 12303d0407baSopenharmony_ci 12313d0407baSopenharmony_ciconfig GPIO_MAX77650 12323d0407baSopenharmony_ci tristate "Maxim MAX77650/77651 GPIO support" 12333d0407baSopenharmony_ci depends on MFD_MAX77650 12343d0407baSopenharmony_ci help 12353d0407baSopenharmony_ci GPIO driver for MAX77650/77651 PMIC from Maxim Semiconductor. 12363d0407baSopenharmony_ci These chips have a single pin that can be configured as GPIO. 12373d0407baSopenharmony_ci 12383d0407baSopenharmony_ciconfig GPIO_MSIC 12393d0407baSopenharmony_ci bool "Intel MSIC mixed signal gpio support" 12403d0407baSopenharmony_ci depends on (X86 || COMPILE_TEST) && MFD_INTEL_MSIC 12413d0407baSopenharmony_ci help 12423d0407baSopenharmony_ci Enable support for GPIO on intel MSIC controllers found in 12433d0407baSopenharmony_ci intel MID devices 12443d0407baSopenharmony_ci 12453d0407baSopenharmony_ciconfig GPIO_PALMAS 12463d0407baSopenharmony_ci bool "TI PALMAS series PMICs GPIO" 12473d0407baSopenharmony_ci depends on MFD_PALMAS 12483d0407baSopenharmony_ci help 12493d0407baSopenharmony_ci Select this option to enable GPIO driver for the TI PALMAS 12503d0407baSopenharmony_ci series chip family. 12513d0407baSopenharmony_ci 12523d0407baSopenharmony_ciconfig GPIO_RC5T583 12533d0407baSopenharmony_ci bool "RICOH RC5T583 GPIO" 12543d0407baSopenharmony_ci depends on MFD_RC5T583 12553d0407baSopenharmony_ci help 12563d0407baSopenharmony_ci Select this option to enable GPIO driver for the Ricoh RC5T583 12573d0407baSopenharmony_ci chip family. 12583d0407baSopenharmony_ci This driver provides the support for driving/reading the gpio pins 12593d0407baSopenharmony_ci of RC5T583 device through standard gpio library. 12603d0407baSopenharmony_ci 12613d0407baSopenharmony_ciconfig GPIO_SL28CPLD 12623d0407baSopenharmony_ci tristate "Kontron sl28cpld GPIO support" 12633d0407baSopenharmony_ci depends on MFD_SL28CPLD || COMPILE_TEST 12643d0407baSopenharmony_ci select GPIO_REGMAP 12653d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 12663d0407baSopenharmony_ci select REGMAP_IRQ 12673d0407baSopenharmony_ci help 12683d0407baSopenharmony_ci This enables support for the GPIOs found on the Kontron sl28 CPLD. 12693d0407baSopenharmony_ci 12703d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 12713d0407baSopenharmony_ci called gpio-sl28cpld. 12723d0407baSopenharmony_ci 12733d0407baSopenharmony_ciconfig GPIO_STMPE 12743d0407baSopenharmony_ci bool "STMPE GPIOs" 12753d0407baSopenharmony_ci depends on MFD_STMPE 12763d0407baSopenharmony_ci depends on OF_GPIO 12773d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 12783d0407baSopenharmony_ci help 12793d0407baSopenharmony_ci This enables support for the GPIOs found on the STMPE I/O 12803d0407baSopenharmony_ci Expanders. 12813d0407baSopenharmony_ci 12823d0407baSopenharmony_ciconfig GPIO_TC3589X 12833d0407baSopenharmony_ci bool "TC3589X GPIOs" 12843d0407baSopenharmony_ci depends on MFD_TC3589X 12853d0407baSopenharmony_ci depends on OF_GPIO 12863d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 12873d0407baSopenharmony_ci help 12883d0407baSopenharmony_ci This enables support for the GPIOs found on the TC3589X 12893d0407baSopenharmony_ci I/O Expander. 12903d0407baSopenharmony_ci 12913d0407baSopenharmony_ciconfig GPIO_TIMBERDALE 12923d0407baSopenharmony_ci bool "Support for timberdale GPIO IP" 12933d0407baSopenharmony_ci depends on MFD_TIMBERDALE 12943d0407baSopenharmony_ci help 12953d0407baSopenharmony_ci Add support for the GPIO IP in the timberdale FPGA. 12963d0407baSopenharmony_ci 12973d0407baSopenharmony_ciconfig GPIO_TPS65086 12983d0407baSopenharmony_ci tristate "TI TPS65086 GPO" 12993d0407baSopenharmony_ci depends on MFD_TPS65086 13003d0407baSopenharmony_ci help 13013d0407baSopenharmony_ci This driver supports the GPO on TI TPS65086x PMICs. 13023d0407baSopenharmony_ci 13033d0407baSopenharmony_ciconfig GPIO_TPS65218 13043d0407baSopenharmony_ci tristate "TPS65218 GPIO" 13053d0407baSopenharmony_ci depends on MFD_TPS65218 13063d0407baSopenharmony_ci help 13073d0407baSopenharmony_ci Select this option to enable GPIO driver for the TPS65218 13083d0407baSopenharmony_ci chip family. 13093d0407baSopenharmony_ci 13103d0407baSopenharmony_ciconfig GPIO_TPS6586X 13113d0407baSopenharmony_ci bool "TPS6586X GPIO" 13123d0407baSopenharmony_ci depends on MFD_TPS6586X 13133d0407baSopenharmony_ci help 13143d0407baSopenharmony_ci Select this option to enable GPIO driver for the TPS6586X 13153d0407baSopenharmony_ci chip family. 13163d0407baSopenharmony_ci 13173d0407baSopenharmony_ciconfig GPIO_TPS65910 13183d0407baSopenharmony_ci bool "TPS65910 GPIO" 13193d0407baSopenharmony_ci depends on MFD_TPS65910 13203d0407baSopenharmony_ci help 13213d0407baSopenharmony_ci Select this option to enable GPIO driver for the TPS65910 13223d0407baSopenharmony_ci chip family. 13233d0407baSopenharmony_ci 13243d0407baSopenharmony_ciconfig GPIO_TPS65912 13253d0407baSopenharmony_ci tristate "TI TPS65912 GPIO" 13263d0407baSopenharmony_ci depends on MFD_TPS65912 13273d0407baSopenharmony_ci help 13283d0407baSopenharmony_ci This driver supports TPS65912 gpio chip 13293d0407baSopenharmony_ci 13303d0407baSopenharmony_ciconfig GPIO_TPS68470 13313d0407baSopenharmony_ci bool "TPS68470 GPIO" 13323d0407baSopenharmony_ci depends on MFD_TPS68470 13333d0407baSopenharmony_ci help 13343d0407baSopenharmony_ci Select this option to enable GPIO driver for the TPS68470 13353d0407baSopenharmony_ci chip family. 13363d0407baSopenharmony_ci There are 7 GPIOs and few sensor related GPIOs supported 13373d0407baSopenharmony_ci by the TPS68470. While the 7 GPIOs can be configured as 13383d0407baSopenharmony_ci input or output as appropriate, the sensor related GPIOs 13393d0407baSopenharmony_ci are "output only" GPIOs. 13403d0407baSopenharmony_ci 13413d0407baSopenharmony_ci This driver config is bool, as the GPIO functionality 13423d0407baSopenharmony_ci of the TPS68470 must be available before dependent 13433d0407baSopenharmony_ci drivers are loaded. 13443d0407baSopenharmony_ci 13453d0407baSopenharmony_ciconfig GPIO_TQMX86 13463d0407baSopenharmony_ci tristate "TQ-Systems QTMX86 GPIO" 13473d0407baSopenharmony_ci depends on MFD_TQMX86 || COMPILE_TEST 13483d0407baSopenharmony_ci depends on HAS_IOPORT_MAP 13493d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 13503d0407baSopenharmony_ci help 13513d0407baSopenharmony_ci This driver supports GPIO on the TQMX86 IO controller. 13523d0407baSopenharmony_ci 13533d0407baSopenharmony_ciconfig GPIO_TWL4030 13543d0407baSopenharmony_ci tristate "TWL4030, TWL5030, and TPS659x0 GPIOs" 13553d0407baSopenharmony_ci depends on TWL4030_CORE 13563d0407baSopenharmony_ci help 13573d0407baSopenharmony_ci Say yes here to access the GPIO signals of various multi-function 13583d0407baSopenharmony_ci power management chips from Texas Instruments. 13593d0407baSopenharmony_ci 13603d0407baSopenharmony_ciconfig GPIO_TWL6040 13613d0407baSopenharmony_ci tristate "TWL6040 GPO" 13623d0407baSopenharmony_ci depends on TWL6040_CORE 13633d0407baSopenharmony_ci help 13643d0407baSopenharmony_ci Say yes here to access the GPO signals of twl6040 13653d0407baSopenharmony_ci audio chip from Texas Instruments. 13663d0407baSopenharmony_ci 13673d0407baSopenharmony_ciconfig GPIO_UCB1400 13683d0407baSopenharmony_ci tristate "Philips UCB1400 GPIO" 13693d0407baSopenharmony_ci depends on UCB1400_CORE 13703d0407baSopenharmony_ci help 13713d0407baSopenharmony_ci This enables support for the Philips UCB1400 GPIO pins. 13723d0407baSopenharmony_ci The UCB1400 is an AC97 audio codec. 13733d0407baSopenharmony_ci 13743d0407baSopenharmony_ciconfig GPIO_WHISKEY_COVE 13753d0407baSopenharmony_ci tristate "GPIO support for Whiskey Cove PMIC" 13763d0407baSopenharmony_ci depends on (X86 || COMPILE_TEST) && INTEL_SOC_PMIC_BXTWC 13773d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 13783d0407baSopenharmony_ci help 13793d0407baSopenharmony_ci Support for GPIO pins on Whiskey Cove PMIC. 13803d0407baSopenharmony_ci 13813d0407baSopenharmony_ci Say Yes if you have a Intel SoC based tablet with Whiskey Cove PMIC 13823d0407baSopenharmony_ci inside. 13833d0407baSopenharmony_ci 13843d0407baSopenharmony_ci This driver can also be built as a module. If so, the module will be 13853d0407baSopenharmony_ci called gpio-wcove. 13863d0407baSopenharmony_ci 13873d0407baSopenharmony_ciconfig GPIO_WM831X 13883d0407baSopenharmony_ci tristate "WM831x GPIOs" 13893d0407baSopenharmony_ci depends on MFD_WM831X 13903d0407baSopenharmony_ci help 13913d0407baSopenharmony_ci Say yes here to access the GPIO signals of WM831x power management 13923d0407baSopenharmony_ci chips from Wolfson Microelectronics. 13933d0407baSopenharmony_ci 13943d0407baSopenharmony_ciconfig GPIO_WM8350 13953d0407baSopenharmony_ci tristate "WM8350 GPIOs" 13963d0407baSopenharmony_ci depends on MFD_WM8350 13973d0407baSopenharmony_ci help 13983d0407baSopenharmony_ci Say yes here to access the GPIO signals of WM8350 power management 13993d0407baSopenharmony_ci chips from Wolfson Microelectronics. 14003d0407baSopenharmony_ci 14013d0407baSopenharmony_ciconfig GPIO_WM8994 14023d0407baSopenharmony_ci tristate "WM8994 GPIOs" 14033d0407baSopenharmony_ci depends on MFD_WM8994 14043d0407baSopenharmony_ci help 14053d0407baSopenharmony_ci Say yes here to access the GPIO signals of WM8994 audio hub 14063d0407baSopenharmony_ci CODECs from Wolfson Microelectronics. 14073d0407baSopenharmony_ci 14083d0407baSopenharmony_ciendmenu 14093d0407baSopenharmony_ci 14103d0407baSopenharmony_cimenu "PCI GPIO expanders" 14113d0407baSopenharmony_ci depends on PCI 14123d0407baSopenharmony_ci 14133d0407baSopenharmony_ciconfig GPIO_AMD8111 14143d0407baSopenharmony_ci tristate "AMD 8111 GPIO driver" 14153d0407baSopenharmony_ci depends on X86 || COMPILE_TEST 14163d0407baSopenharmony_ci depends on HAS_IOPORT_MAP 14173d0407baSopenharmony_ci help 14183d0407baSopenharmony_ci The AMD 8111 south bridge contains 32 GPIO pins which can be used. 14193d0407baSopenharmony_ci 14203d0407baSopenharmony_ci Note, that usually system firmware/ACPI handles GPIO pins on their 14213d0407baSopenharmony_ci own and users might easily break their systems with uncarefull usage 14223d0407baSopenharmony_ci of this driver! 14233d0407baSopenharmony_ci 14243d0407baSopenharmony_ci If unsure, say N 14253d0407baSopenharmony_ci 14263d0407baSopenharmony_ciconfig GPIO_BT8XX 14273d0407baSopenharmony_ci tristate "BT8XX GPIO abuser" 14283d0407baSopenharmony_ci depends on VIDEO_BT848=n 14293d0407baSopenharmony_ci help 14303d0407baSopenharmony_ci The BT8xx frame grabber chip has 24 GPIO pins that can be abused 14313d0407baSopenharmony_ci as a cheap PCI GPIO card. 14323d0407baSopenharmony_ci 14333d0407baSopenharmony_ci This chip can be found on Miro, Hauppauge and STB TV-cards. 14343d0407baSopenharmony_ci 14353d0407baSopenharmony_ci The card needs to be physically altered for using it as a 14363d0407baSopenharmony_ci GPIO card. For more information on how to build a GPIO card 14373d0407baSopenharmony_ci from a BT8xx TV card, see the documentation file at 14383d0407baSopenharmony_ci Documentation/driver-api/gpio/bt8xxgpio.rst 14393d0407baSopenharmony_ci 14403d0407baSopenharmony_ci If unsure, say N. 14413d0407baSopenharmony_ci 14423d0407baSopenharmony_ciconfig GPIO_INTEL_MID 14433d0407baSopenharmony_ci bool "Intel MID GPIO support" 14443d0407baSopenharmony_ci depends on X86_INTEL_MID 14453d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 14463d0407baSopenharmony_ci help 14473d0407baSopenharmony_ci Say Y here to support Intel MID GPIO. 14483d0407baSopenharmony_ci 14493d0407baSopenharmony_ciconfig GPIO_MERRIFIELD 14503d0407baSopenharmony_ci tristate "Intel Merrifield GPIO support" 14513d0407baSopenharmony_ci depends on X86_INTEL_MID 14523d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 14533d0407baSopenharmony_ci help 14543d0407baSopenharmony_ci Say Y here to support Intel Merrifield GPIO. 14553d0407baSopenharmony_ci 14563d0407baSopenharmony_ciconfig GPIO_MLXBF 14573d0407baSopenharmony_ci tristate "Mellanox BlueField SoC GPIO" 14583d0407baSopenharmony_ci depends on (MELLANOX_PLATFORM && ARM64 && ACPI) || (64BIT && COMPILE_TEST) 14593d0407baSopenharmony_ci select GPIO_GENERIC 14603d0407baSopenharmony_ci help 14613d0407baSopenharmony_ci Say Y here if you want GPIO support on Mellanox BlueField SoC. 14623d0407baSopenharmony_ci 14633d0407baSopenharmony_ciconfig GPIO_MLXBF2 14643d0407baSopenharmony_ci tristate "Mellanox BlueField 2 SoC GPIO" 14653d0407baSopenharmony_ci depends on (MELLANOX_PLATFORM && ARM64 && ACPI) || (64BIT && COMPILE_TEST) 14663d0407baSopenharmony_ci select GPIO_GENERIC 14673d0407baSopenharmony_ci help 14683d0407baSopenharmony_ci Say Y here if you want GPIO support on Mellanox BlueField 2 SoC. 14693d0407baSopenharmony_ci 14703d0407baSopenharmony_ciconfig GPIO_ML_IOH 14713d0407baSopenharmony_ci tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support" 14723d0407baSopenharmony_ci depends on X86 || COMPILE_TEST 14733d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 14743d0407baSopenharmony_ci help 14753d0407baSopenharmony_ci ML7213 is companion chip for Intel Atom E6xx series. 14763d0407baSopenharmony_ci This driver can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/Output 14773d0407baSopenharmony_ci Hub) which is for IVI(In-Vehicle Infotainment) use. 14783d0407baSopenharmony_ci This driver can access the IOH's GPIO device. 14793d0407baSopenharmony_ci 14803d0407baSopenharmony_ciconfig GPIO_PCH 14813d0407baSopenharmony_ci tristate "Intel EG20T PCH/LAPIS Semiconductor IOH(ML7223/ML7831) GPIO" 14823d0407baSopenharmony_ci depends on X86_32 || MIPS || COMPILE_TEST 14833d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 14843d0407baSopenharmony_ci help 14853d0407baSopenharmony_ci This driver is for PCH(Platform controller Hub) GPIO of Intel Topcliff 14863d0407baSopenharmony_ci which is an IOH(Input/Output Hub) for x86 embedded processor. 14873d0407baSopenharmony_ci This driver can access PCH GPIO device. 14883d0407baSopenharmony_ci 14893d0407baSopenharmony_ci This driver also can be used for LAPIS Semiconductor IOH(Input/ 14903d0407baSopenharmony_ci Output Hub), ML7223 and ML7831. 14913d0407baSopenharmony_ci ML7223 IOH is for MP(Media Phone) use. 14923d0407baSopenharmony_ci ML7831 IOH is for general purpose use. 14933d0407baSopenharmony_ci ML7223/ML7831 is companion chip for Intel Atom E6xx series. 14943d0407baSopenharmony_ci ML7223/ML7831 is completely compatible for Intel EG20T PCH. 14953d0407baSopenharmony_ci 14963d0407baSopenharmony_ciconfig GPIO_PCI_IDIO_16 14973d0407baSopenharmony_ci tristate "ACCES PCI-IDIO-16 GPIO support" 14983d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 14993d0407baSopenharmony_ci help 15003d0407baSopenharmony_ci Enables GPIO support for the ACCES PCI-IDIO-16. An interrupt is 15013d0407baSopenharmony_ci generated when any of the inputs change state (low to high or high to 15023d0407baSopenharmony_ci low). Input filter control is not supported by this driver, and the 15033d0407baSopenharmony_ci input filters are deactivated by this driver. 15043d0407baSopenharmony_ci 15053d0407baSopenharmony_ciconfig GPIO_PCIE_IDIO_24 15063d0407baSopenharmony_ci tristate "ACCES PCIe-IDIO-24 GPIO support" 15073d0407baSopenharmony_ci select GPIOLIB_IRQCHIP 15083d0407baSopenharmony_ci help 15093d0407baSopenharmony_ci Enables GPIO support for the ACCES PCIe-IDIO-24 family (PCIe-IDIO-24, 15103d0407baSopenharmony_ci PCIe-IDI-24, PCIe-IDO-24, PCIe-IDIO-12). An interrupt is generated 15113d0407baSopenharmony_ci when any of the inputs change state (low to high or high to low). 15123d0407baSopenharmony_ci Input filter control is not supported by this driver, and the input 15133d0407baSopenharmony_ci filters are deactivated by this driver. 15143d0407baSopenharmony_ci 15153d0407baSopenharmony_ciconfig GPIO_RDC321X 15163d0407baSopenharmony_ci tristate "RDC R-321x GPIO support" 15173d0407baSopenharmony_ci select MFD_CORE 15183d0407baSopenharmony_ci select MFD_RDC321X 15193d0407baSopenharmony_ci help 15203d0407baSopenharmony_ci Support for the RDC R321x SoC GPIOs over southbridge 15213d0407baSopenharmony_ci PCI configuration space. 15223d0407baSopenharmony_ci 15233d0407baSopenharmony_ciconfig GPIO_SODAVILLE 15243d0407baSopenharmony_ci bool "Intel Sodaville GPIO support" 15253d0407baSopenharmony_ci depends on X86 && OF 15263d0407baSopenharmony_ci select GPIO_GENERIC 15273d0407baSopenharmony_ci select GENERIC_IRQ_CHIP 15283d0407baSopenharmony_ci help 15293d0407baSopenharmony_ci Say Y here to support Intel Sodaville GPIO. 15303d0407baSopenharmony_ci 15313d0407baSopenharmony_ciendmenu 15323d0407baSopenharmony_ci 15333d0407baSopenharmony_cimenu "SPI GPIO expanders" 15343d0407baSopenharmony_ci depends on SPI_MASTER 15353d0407baSopenharmony_ci 15363d0407baSopenharmony_ciconfig GPIO_74X164 15373d0407baSopenharmony_ci tristate "74x164 serial-in/parallel-out 8-bits shift register" 15383d0407baSopenharmony_ci depends on OF_GPIO 15393d0407baSopenharmony_ci help 15403d0407baSopenharmony_ci Driver for 74x164 compatible serial-in/parallel-out 8-outputs 15413d0407baSopenharmony_ci shift registers. This driver can be used to provide access 15423d0407baSopenharmony_ci to more gpio outputs. 15433d0407baSopenharmony_ci 15443d0407baSopenharmony_ciconfig GPIO_MAX3191X 15453d0407baSopenharmony_ci tristate "Maxim MAX3191x industrial serializer" 15463d0407baSopenharmony_ci select CRC8 15473d0407baSopenharmony_ci help 15483d0407baSopenharmony_ci GPIO driver for Maxim MAX31910, MAX31911, MAX31912, MAX31913, 15493d0407baSopenharmony_ci MAX31953 and MAX31963 industrial serializer, a daisy-chainable 15503d0407baSopenharmony_ci chip to make 8 digital 24V inputs available via SPI. Supports 15513d0407baSopenharmony_ci CRC checksums to guard against electromagnetic interference, 15523d0407baSopenharmony_ci as well as undervoltage and overtemperature detection. 15533d0407baSopenharmony_ci 15543d0407baSopenharmony_ciconfig GPIO_MAX7301 15553d0407baSopenharmony_ci tristate "Maxim MAX7301 GPIO expander" 15563d0407baSopenharmony_ci select GPIO_MAX730X 15573d0407baSopenharmony_ci help 15583d0407baSopenharmony_ci GPIO driver for Maxim MAX7301 SPI-based GPIO expander. 15593d0407baSopenharmony_ci 15603d0407baSopenharmony_ciconfig GPIO_MC33880 15613d0407baSopenharmony_ci tristate "Freescale MC33880 high-side/low-side switch" 15623d0407baSopenharmony_ci help 15633d0407baSopenharmony_ci SPI driver for Freescale MC33880 high-side/low-side switch. 15643d0407baSopenharmony_ci This provides GPIO interface supporting inputs and outputs. 15653d0407baSopenharmony_ci 15663d0407baSopenharmony_ciconfig GPIO_PISOSR 15673d0407baSopenharmony_ci tristate "Generic parallel-in/serial-out shift register" 15683d0407baSopenharmony_ci help 15693d0407baSopenharmony_ci GPIO driver for SPI compatible parallel-in/serial-out shift 15703d0407baSopenharmony_ci registers. These are input only devices. 15713d0407baSopenharmony_ci 15723d0407baSopenharmony_ciconfig GPIO_XRA1403 15733d0407baSopenharmony_ci tristate "EXAR XRA1403 16-bit GPIO expander" 15743d0407baSopenharmony_ci select REGMAP_SPI 15753d0407baSopenharmony_ci help 15763d0407baSopenharmony_ci GPIO driver for EXAR XRA1403 16-bit SPI-based GPIO expander. 15773d0407baSopenharmony_ci 15783d0407baSopenharmony_ciconfig GPIO_MOXTET 15793d0407baSopenharmony_ci tristate "Turris Mox Moxtet bus GPIO expander" 15803d0407baSopenharmony_ci depends on MOXTET 15813d0407baSopenharmony_ci help 15823d0407baSopenharmony_ci Say yes here if you are building for the Turris Mox router. 15833d0407baSopenharmony_ci This is the driver needed for configuring the GPIOs via the Moxtet 15843d0407baSopenharmony_ci bus. For example the Mox module with SFP cage needs this driver 15853d0407baSopenharmony_ci so that phylink can use corresponding GPIOs. 15863d0407baSopenharmony_ci 15873d0407baSopenharmony_ciendmenu 15883d0407baSopenharmony_ci 15893d0407baSopenharmony_cimenu "USB GPIO expanders" 15903d0407baSopenharmony_ci depends on USB 15913d0407baSopenharmony_ci 15923d0407baSopenharmony_ciconfig GPIO_VIPERBOARD 15933d0407baSopenharmony_ci tristate "Viperboard GPIO a & b support" 15943d0407baSopenharmony_ci depends on MFD_VIPERBOARD 15953d0407baSopenharmony_ci help 15963d0407baSopenharmony_ci Say yes here to access the GPIO signals of Nano River 15973d0407baSopenharmony_ci Technologies Viperboard. There are two GPIO chips on the 15983d0407baSopenharmony_ci board: gpioa and gpiob. 15993d0407baSopenharmony_ci See viperboard API specification and Nano 16003d0407baSopenharmony_ci River Tech's viperboard.h for detailed meaning 16013d0407baSopenharmony_ci of the module parameters. 16023d0407baSopenharmony_ci 16033d0407baSopenharmony_ciendmenu 16043d0407baSopenharmony_ci 16053d0407baSopenharmony_ciconfig GPIO_AGGREGATOR 16063d0407baSopenharmony_ci tristate "GPIO Aggregator" 16073d0407baSopenharmony_ci help 16083d0407baSopenharmony_ci Say yes here to enable the GPIO Aggregator, which provides a way to 16093d0407baSopenharmony_ci aggregate existing GPIO lines into a new virtual GPIO chip. 16103d0407baSopenharmony_ci This can serve the following purposes: 16113d0407baSopenharmony_ci - Assign permissions for a collection of GPIO lines to a user, 16123d0407baSopenharmony_ci - Export a collection of GPIO lines to a virtual machine, 16133d0407baSopenharmony_ci - Provide a generic driver for a GPIO-operated device in an 16143d0407baSopenharmony_ci industrial control context, to be operated from userspace using 16153d0407baSopenharmony_ci the GPIO chardev interface. 16163d0407baSopenharmony_ci 16173d0407baSopenharmony_ciconfig GPIO_MOCKUP 16183d0407baSopenharmony_ci tristate "GPIO Testing Driver" 16193d0407baSopenharmony_ci select IRQ_SIM 16203d0407baSopenharmony_ci help 16213d0407baSopenharmony_ci This enables GPIO Testing driver, which provides a way to test GPIO 16223d0407baSopenharmony_ci subsystem through sysfs(or char device) and debugfs. GPIO_SYSFS 16233d0407baSopenharmony_ci must be selected for this test. 16243d0407baSopenharmony_ci User could use it through the script in 16253d0407baSopenharmony_ci tools/testing/selftests/gpio/gpio-mockup.sh. Reference the usage in 16263d0407baSopenharmony_ci it. 16273d0407baSopenharmony_ci 16283d0407baSopenharmony_ciendif 1629