162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# PINCTRL infrastructure and drivers 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_cimenuconfig PINCTRL 762306a36Sopenharmony_ci bool "Pin controllers" 862306a36Sopenharmony_ci 962306a36Sopenharmony_ciif PINCTRL 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ciconfig GENERIC_PINCTRL_GROUPS 1262306a36Sopenharmony_ci bool 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_ciconfig PINMUX 1562306a36Sopenharmony_ci bool "Support pin multiplexing controllers" if COMPILE_TEST 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciconfig GENERIC_PINMUX_FUNCTIONS 1862306a36Sopenharmony_ci bool 1962306a36Sopenharmony_ci select PINMUX 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ciconfig PINCONF 2262306a36Sopenharmony_ci bool "Support pin configuration controllers" if COMPILE_TEST 2362306a36Sopenharmony_ci 2462306a36Sopenharmony_ciconfig GENERIC_PINCONF 2562306a36Sopenharmony_ci bool 2662306a36Sopenharmony_ci select PINCONF 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ciconfig DEBUG_PINCTRL 2962306a36Sopenharmony_ci bool "Debug PINCTRL calls" 3062306a36Sopenharmony_ci depends on DEBUG_KERNEL 3162306a36Sopenharmony_ci help 3262306a36Sopenharmony_ci Say Y here to add some extra checks and diagnostics to PINCTRL calls. 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciconfig PINCTRL_AMD 3562306a36Sopenharmony_ci bool "AMD GPIO pin control" 3662306a36Sopenharmony_ci depends on HAS_IOMEM 3762306a36Sopenharmony_ci depends on ACPI || COMPILE_TEST 3862306a36Sopenharmony_ci select GPIOLIB 3962306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 4062306a36Sopenharmony_ci select PINMUX 4162306a36Sopenharmony_ci select PINCONF 4262306a36Sopenharmony_ci select GENERIC_PINCONF 4362306a36Sopenharmony_ci help 4462306a36Sopenharmony_ci The driver for memory mapped GPIO functionality on AMD platforms 4562306a36Sopenharmony_ci (x86 or arm). Most of the pins are usually muxed to some other 4662306a36Sopenharmony_ci functionality by firmware, so only a small amount is available 4762306a36Sopenharmony_ci for GPIO use. 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci Requires ACPI/FDT device enumeration code to set up a platform 5062306a36Sopenharmony_ci device. 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciconfig PINCTRL_APPLE_GPIO 5362306a36Sopenharmony_ci tristate "Apple SoC GPIO pin controller driver" 5462306a36Sopenharmony_ci depends on ARCH_APPLE 5562306a36Sopenharmony_ci select PINMUX 5662306a36Sopenharmony_ci select GPIOLIB 5762306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 5862306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 5962306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 6062306a36Sopenharmony_ci select OF_GPIO 6162306a36Sopenharmony_ci help 6262306a36Sopenharmony_ci This is the driver for the GPIO controller found on Apple ARM SoCs, 6362306a36Sopenharmony_ci including M1. 6462306a36Sopenharmony_ci 6562306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 6662306a36Sopenharmony_ci will be called pinctrl-apple-gpio. 6762306a36Sopenharmony_ci 6862306a36Sopenharmony_ciconfig PINCTRL_ARTPEC6 6962306a36Sopenharmony_ci bool "Axis ARTPEC-6 pin controller driver" 7062306a36Sopenharmony_ci depends on MACH_ARTPEC6 7162306a36Sopenharmony_ci select PINMUX 7262306a36Sopenharmony_ci select GENERIC_PINCONF 7362306a36Sopenharmony_ci help 7462306a36Sopenharmony_ci This is the driver for the Axis ARTPEC-6 pin controller. This driver 7562306a36Sopenharmony_ci supports pin function multiplexing as well as pin bias and drive 7662306a36Sopenharmony_ci strength configuration. Device tree integration instructions can be 7762306a36Sopenharmony_ci found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ciconfig PINCTRL_AS3722 8062306a36Sopenharmony_ci tristate "Pinctrl and GPIO driver for ams AS3722 PMIC" 8162306a36Sopenharmony_ci depends on MFD_AS3722 && GPIOLIB 8262306a36Sopenharmony_ci select PINMUX 8362306a36Sopenharmony_ci select GENERIC_PINCONF 8462306a36Sopenharmony_ci help 8562306a36Sopenharmony_ci AS3722 device supports the configuration of GPIO pins for different 8662306a36Sopenharmony_ci functionality. This driver supports the pinmux, push-pull and 8762306a36Sopenharmony_ci open drain configuration for the GPIO pins of AS3722 devices. It also 8862306a36Sopenharmony_ci supports the GPIO functionality through gpiolib. 8962306a36Sopenharmony_ci 9062306a36Sopenharmony_ciconfig PINCTRL_AT91 9162306a36Sopenharmony_ci bool "AT91 pinctrl driver" 9262306a36Sopenharmony_ci depends on OF 9362306a36Sopenharmony_ci depends on ARCH_AT91 9462306a36Sopenharmony_ci select PINMUX 9562306a36Sopenharmony_ci select PINCONF 9662306a36Sopenharmony_ci select GPIOLIB 9762306a36Sopenharmony_ci select OF_GPIO 9862306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 9962306a36Sopenharmony_ci help 10062306a36Sopenharmony_ci Say Y here to enable the at91 pinctrl driver 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_ciconfig PINCTRL_AT91PIO4 10362306a36Sopenharmony_ci bool "AT91 PIO4 pinctrl driver" 10462306a36Sopenharmony_ci depends on OF 10562306a36Sopenharmony_ci depends on HAS_IOMEM 10662306a36Sopenharmony_ci depends on ARCH_AT91 || COMPILE_TEST 10762306a36Sopenharmony_ci select PINMUX 10862306a36Sopenharmony_ci select GENERIC_PINCONF 10962306a36Sopenharmony_ci select GPIOLIB 11062306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 11162306a36Sopenharmony_ci select OF_GPIO 11262306a36Sopenharmony_ci help 11362306a36Sopenharmony_ci Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4 11462306a36Sopenharmony_ci controller available on sama5d2 SoC. 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_ciconfig PINCTRL_AXP209 11762306a36Sopenharmony_ci tristate "X-Powers AXP209 PMIC pinctrl and GPIO Support" 11862306a36Sopenharmony_ci depends on MFD_AXP20X 11962306a36Sopenharmony_ci depends on OF 12062306a36Sopenharmony_ci select PINMUX 12162306a36Sopenharmony_ci select GENERIC_PINCONF 12262306a36Sopenharmony_ci select GPIOLIB 12362306a36Sopenharmony_ci help 12462306a36Sopenharmony_ci AXP PMICs provides multiple GPIOs that can be muxed for different 12562306a36Sopenharmony_ci functions. This driver bundles a pinctrl driver to select the function 12662306a36Sopenharmony_ci muxing and a GPIO driver to handle the GPIO when the GPIO function is 12762306a36Sopenharmony_ci selected. 12862306a36Sopenharmony_ci Say Y to enable pinctrl and GPIO support for the AXP209 PMIC. 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_ciconfig PINCTRL_BM1880 13162306a36Sopenharmony_ci bool "Bitmain BM1880 Pinctrl driver" 13262306a36Sopenharmony_ci depends on OF && (ARCH_BITMAIN || COMPILE_TEST) 13362306a36Sopenharmony_ci default ARCH_BITMAIN 13462306a36Sopenharmony_ci select PINMUX 13562306a36Sopenharmony_ci help 13662306a36Sopenharmony_ci Pinctrl driver for Bitmain BM1880 SoC. 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_ciconfig PINCTRL_CY8C95X0 13962306a36Sopenharmony_ci tristate "Cypress CY8C95X0 I2C pinctrl and GPIO driver" 14062306a36Sopenharmony_ci depends on I2C 14162306a36Sopenharmony_ci select GPIOLIB 14262306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 14362306a36Sopenharmony_ci select PINMUX 14462306a36Sopenharmony_ci select PINCONF 14562306a36Sopenharmony_ci select GENERIC_PINCONF 14662306a36Sopenharmony_ci select REGMAP_I2C 14762306a36Sopenharmony_ci help 14862306a36Sopenharmony_ci Support for 20/40/60 pin Cypress Cy8C95x0 pinctrl/gpio I2C expander. 14962306a36Sopenharmony_ci This driver can also be built as a module. If so, the module will be 15062306a36Sopenharmony_ci called pinctrl-cy8c95x0. 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ciconfig PINCTRL_DA850_PUPD 15362306a36Sopenharmony_ci tristate "TI DA850/OMAP-L138/AM18XX pull-up and pull-down groups" 15462306a36Sopenharmony_ci depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) 15562306a36Sopenharmony_ci select PINCONF 15662306a36Sopenharmony_ci select GENERIC_PINCONF 15762306a36Sopenharmony_ci help 15862306a36Sopenharmony_ci Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control 15962306a36Sopenharmony_ci pull-up and pull-down pin groups. 16062306a36Sopenharmony_ci 16162306a36Sopenharmony_ciconfig PINCTRL_DA9062 16262306a36Sopenharmony_ci tristate "Dialog Semiconductor DA9062 PMIC pinctrl and GPIO Support" 16362306a36Sopenharmony_ci depends on MFD_DA9062 16462306a36Sopenharmony_ci select GPIOLIB 16562306a36Sopenharmony_ci help 16662306a36Sopenharmony_ci The Dialog DA9062 PMIC provides multiple GPIOs that can be muxed for 16762306a36Sopenharmony_ci different functions. This driver bundles a pinctrl driver to select the 16862306a36Sopenharmony_ci function muxing and a GPIO driver to handle the GPIO when the GPIO 16962306a36Sopenharmony_ci function is selected. 17062306a36Sopenharmony_ci 17162306a36Sopenharmony_ci Say Y to enable pinctrl and GPIO support for the DA9062 PMIC. 17262306a36Sopenharmony_ci 17362306a36Sopenharmony_ciconfig PINCTRL_DIGICOLOR 17462306a36Sopenharmony_ci bool 17562306a36Sopenharmony_ci depends on ARCH_DIGICOLOR || COMPILE_TEST 17662306a36Sopenharmony_ci select PINMUX 17762306a36Sopenharmony_ci select GENERIC_PINCONF 17862306a36Sopenharmony_ci 17962306a36Sopenharmony_ciconfig PINCTRL_EQUILIBRIUM 18062306a36Sopenharmony_ci tristate "Generic pinctrl and GPIO driver for Intel Lightning Mountain SoC" 18162306a36Sopenharmony_ci depends on OF && HAS_IOMEM 18262306a36Sopenharmony_ci depends on X86 || COMPILE_TEST 18362306a36Sopenharmony_ci select PINMUX 18462306a36Sopenharmony_ci select PINCONF 18562306a36Sopenharmony_ci select GPIOLIB 18662306a36Sopenharmony_ci select GPIO_GENERIC 18762306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 18862306a36Sopenharmony_ci select GENERIC_PINCONF 18962306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 19062306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 19162306a36Sopenharmony_ci help 19262306a36Sopenharmony_ci Equilibrium driver is a pinctrl and GPIO driver for Intel Lightning 19362306a36Sopenharmony_ci Mountain network processor SoC that supports both the GPIO and pin 19462306a36Sopenharmony_ci control frameworks. It provides interfaces to setup pin muxing, assign 19562306a36Sopenharmony_ci desired pin functions, configure GPIO attributes for LGM SoC pins. 19662306a36Sopenharmony_ci Pin muxing and pin config settings are retrieved from device tree. 19762306a36Sopenharmony_ci 19862306a36Sopenharmony_ciconfig PINCTRL_GEMINI 19962306a36Sopenharmony_ci bool 20062306a36Sopenharmony_ci depends on ARCH_GEMINI 20162306a36Sopenharmony_ci default ARCH_GEMINI 20262306a36Sopenharmony_ci select PINMUX 20362306a36Sopenharmony_ci select GENERIC_PINCONF 20462306a36Sopenharmony_ci select MFD_SYSCON 20562306a36Sopenharmony_ci 20662306a36Sopenharmony_ciconfig PINCTRL_INGENIC 20762306a36Sopenharmony_ci bool "Pinctrl driver for the Ingenic JZ47xx SoCs" 20862306a36Sopenharmony_ci default MACH_INGENIC 20962306a36Sopenharmony_ci depends on OF 21062306a36Sopenharmony_ci depends on MIPS || COMPILE_TEST 21162306a36Sopenharmony_ci select GENERIC_PINCONF 21262306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 21362306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 21462306a36Sopenharmony_ci select GPIOLIB 21562306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 21662306a36Sopenharmony_ci select REGMAP_MMIO 21762306a36Sopenharmony_ci 21862306a36Sopenharmony_ciconfig PINCTRL_K210 21962306a36Sopenharmony_ci bool "Pinctrl driver for the Canaan Kendryte K210 SoC" 22062306a36Sopenharmony_ci depends on RISCV && SOC_CANAAN && OF 22162306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 22262306a36Sopenharmony_ci select GENERIC_PINCONF 22362306a36Sopenharmony_ci select GPIOLIB 22462306a36Sopenharmony_ci select OF_GPIO 22562306a36Sopenharmony_ci select REGMAP_MMIO 22662306a36Sopenharmony_ci default SOC_CANAAN 22762306a36Sopenharmony_ci help 22862306a36Sopenharmony_ci Add support for the Canaan Kendryte K210 RISC-V SOC Field 22962306a36Sopenharmony_ci Programmable IO Array (FPIOA) controller. 23062306a36Sopenharmony_ci 23162306a36Sopenharmony_ciconfig PINCTRL_KEEMBAY 23262306a36Sopenharmony_ci tristate "Pinctrl driver for Intel Keem Bay SoC" 23362306a36Sopenharmony_ci depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST) 23462306a36Sopenharmony_ci depends on HAS_IOMEM 23562306a36Sopenharmony_ci select PINMUX 23662306a36Sopenharmony_ci select PINCONF 23762306a36Sopenharmony_ci select GENERIC_PINCONF 23862306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 23962306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 24062306a36Sopenharmony_ci select GPIOLIB 24162306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 24262306a36Sopenharmony_ci select GPIO_GENERIC 24362306a36Sopenharmony_ci help 24462306a36Sopenharmony_ci This selects pin control driver for the Intel Keem Bay SoC. 24562306a36Sopenharmony_ci It provides pin config functions such as pull-up, pull-down, 24662306a36Sopenharmony_ci interrupt, drive strength, sec lock, Schmitt trigger, slew 24762306a36Sopenharmony_ci rate control and direction control. This module will be 24862306a36Sopenharmony_ci called as pinctrl-keembay. 24962306a36Sopenharmony_ci 25062306a36Sopenharmony_ciconfig PINCTRL_LANTIQ 25162306a36Sopenharmony_ci bool 25262306a36Sopenharmony_ci depends on LANTIQ 25362306a36Sopenharmony_ci select PINMUX 25462306a36Sopenharmony_ci select PINCONF 25562306a36Sopenharmony_ci 25662306a36Sopenharmony_ciconfig PINCTRL_FALCON 25762306a36Sopenharmony_ci bool 25862306a36Sopenharmony_ci depends on SOC_FALCON 25962306a36Sopenharmony_ci depends on PINCTRL_LANTIQ 26062306a36Sopenharmony_ci 26162306a36Sopenharmony_ciconfig PINCTRL_LOONGSON2 26262306a36Sopenharmony_ci tristate "Pinctrl driver for the Loongson-2 SoC" 26362306a36Sopenharmony_ci depends on OF && (LOONGARCH || COMPILE_TEST) 26462306a36Sopenharmony_ci select PINMUX 26562306a36Sopenharmony_ci select GENERIC_PINCONF 26662306a36Sopenharmony_ci help 26762306a36Sopenharmony_ci This selects pin control driver for the Loongson-2 SoC. It 26862306a36Sopenharmony_ci provides pin config functions multiplexing. GPIO pin pull-up, 26962306a36Sopenharmony_ci pull-down functions are not supported. Say yes to enable 27062306a36Sopenharmony_ci pinctrl for Loongson-2 SoC. 27162306a36Sopenharmony_ci 27262306a36Sopenharmony_ciconfig PINCTRL_XWAY 27362306a36Sopenharmony_ci bool 27462306a36Sopenharmony_ci depends on SOC_TYPE_XWAY 27562306a36Sopenharmony_ci depends on PINCTRL_LANTIQ 27662306a36Sopenharmony_ci 27762306a36Sopenharmony_ciconfig PINCTRL_LPC18XX 27862306a36Sopenharmony_ci bool "NXP LPC18XX/43XX SCU pinctrl driver" 27962306a36Sopenharmony_ci depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 28062306a36Sopenharmony_ci default ARCH_LPC18XX 28162306a36Sopenharmony_ci select PINMUX 28262306a36Sopenharmony_ci select GENERIC_PINCONF 28362306a36Sopenharmony_ci help 28462306a36Sopenharmony_ci Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU). 28562306a36Sopenharmony_ci 28662306a36Sopenharmony_ciconfig PINCTRL_MAX77620 28762306a36Sopenharmony_ci tristate "MAX77620/MAX20024 Pincontrol support" 28862306a36Sopenharmony_ci depends on MFD_MAX77620 && OF 28962306a36Sopenharmony_ci select PINMUX 29062306a36Sopenharmony_ci select GENERIC_PINCONF 29162306a36Sopenharmony_ci help 29262306a36Sopenharmony_ci Say Y here to enable Pin control support for Maxim MAX77620 PMIC. 29362306a36Sopenharmony_ci This PMIC has 8 GPIO pins that work as GPIO as well as special 29462306a36Sopenharmony_ci function in alternate mode. This driver also configure push-pull, 29562306a36Sopenharmony_ci open drain, FPS slots etc. 29662306a36Sopenharmony_ci 29762306a36Sopenharmony_ciconfig PINCTRL_MCP23S08_I2C 29862306a36Sopenharmony_ci tristate 29962306a36Sopenharmony_ci select REGMAP_I2C 30062306a36Sopenharmony_ci 30162306a36Sopenharmony_ciconfig PINCTRL_MCP23S08_SPI 30262306a36Sopenharmony_ci tristate 30362306a36Sopenharmony_ci select REGMAP_SPI 30462306a36Sopenharmony_ci 30562306a36Sopenharmony_ciconfig PINCTRL_MCP23S08 30662306a36Sopenharmony_ci tristate "Microchip MCP23xxx I/O expander" 30762306a36Sopenharmony_ci depends on SPI_MASTER || I2C 30862306a36Sopenharmony_ci select GPIOLIB 30962306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 31062306a36Sopenharmony_ci select GENERIC_PINCONF 31162306a36Sopenharmony_ci select PINCTRL_MCP23S08_I2C if I2C 31262306a36Sopenharmony_ci select PINCTRL_MCP23S08_SPI if SPI_MASTER 31362306a36Sopenharmony_ci help 31462306a36Sopenharmony_ci SPI/I2C driver for Microchip MCP23S08 / MCP23S17 / MCP23S18 / 31562306a36Sopenharmony_ci MCP23008 / MCP23017 / MCP23018 I/O expanders. 31662306a36Sopenharmony_ci This provides a GPIO interface supporting inputs and outputs and a 31762306a36Sopenharmony_ci corresponding interrupt-controller. 31862306a36Sopenharmony_ci 31962306a36Sopenharmony_ciconfig PINCTRL_MICROCHIP_SGPIO 32062306a36Sopenharmony_ci tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO" 32162306a36Sopenharmony_ci depends on OF 32262306a36Sopenharmony_ci depends on HAS_IOMEM 32362306a36Sopenharmony_ci select GPIOLIB 32462306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 32562306a36Sopenharmony_ci select GENERIC_PINCONF 32662306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 32762306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 32862306a36Sopenharmony_ci select OF_GPIO 32962306a36Sopenharmony_ci help 33062306a36Sopenharmony_ci Support for the serial GPIO interface used on Microsemi and 33162306a36Sopenharmony_ci Microchip SoCs. By using a serial interface, the SIO 33262306a36Sopenharmony_ci controller significantly extends the number of available 33362306a36Sopenharmony_ci GPIOs with a minimum number of additional pins on the 33462306a36Sopenharmony_ci device. The primary purpose of the SIO controller is to 33562306a36Sopenharmony_ci connect control signals from SFP modules and to act as an 33662306a36Sopenharmony_ci LED controller. 33762306a36Sopenharmony_ci 33862306a36Sopenharmony_ci If compiled as a module, the module name will be 33962306a36Sopenharmony_ci pinctrl-microchip-sgpio. 34062306a36Sopenharmony_ci 34162306a36Sopenharmony_ciconfig PINCTRL_OCELOT 34262306a36Sopenharmony_ci tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" 34362306a36Sopenharmony_ci depends on OF 34462306a36Sopenharmony_ci depends on HAS_IOMEM 34562306a36Sopenharmony_ci select GPIOLIB 34662306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 34762306a36Sopenharmony_ci select GENERIC_PINCONF 34862306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 34962306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 35062306a36Sopenharmony_ci select OF_GPIO 35162306a36Sopenharmony_ci select REGMAP_MMIO 35262306a36Sopenharmony_ci help 35362306a36Sopenharmony_ci Support for the internal GPIO interfaces on Microsemi Ocelot and 35462306a36Sopenharmony_ci Jaguar2 SoCs. 35562306a36Sopenharmony_ci 35662306a36Sopenharmony_ci If conpiled as a module, the module name will be pinctrl-ocelot. 35762306a36Sopenharmony_ci 35862306a36Sopenharmony_ciconfig PINCTRL_PALMAS 35962306a36Sopenharmony_ci tristate "Pinctrl driver for the PALMAS Series MFD devices" 36062306a36Sopenharmony_ci depends on OF && MFD_PALMAS 36162306a36Sopenharmony_ci select PINMUX 36262306a36Sopenharmony_ci select GENERIC_PINCONF 36362306a36Sopenharmony_ci help 36462306a36Sopenharmony_ci Palmas device supports the configuration of pins for different 36562306a36Sopenharmony_ci functionality. This driver supports the pinmux, push-pull and 36662306a36Sopenharmony_ci open drain configuration for the Palmas series devices like 36762306a36Sopenharmony_ci TPS65913, TPS80036 etc. 36862306a36Sopenharmony_ci 36962306a36Sopenharmony_ciconfig PINCTRL_PIC32 37062306a36Sopenharmony_ci bool "Microchip PIC32 pin controller driver" 37162306a36Sopenharmony_ci depends on OF 37262306a36Sopenharmony_ci depends on MACH_PIC32 37362306a36Sopenharmony_ci select PINMUX 37462306a36Sopenharmony_ci select GENERIC_PINCONF 37562306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 37662306a36Sopenharmony_ci select OF_GPIO 37762306a36Sopenharmony_ci help 37862306a36Sopenharmony_ci This is the pin controller and gpio driver for Microchip PIC32 37962306a36Sopenharmony_ci microcontrollers. This option is selected automatically when specific 38062306a36Sopenharmony_ci machine and arch are selected to build. 38162306a36Sopenharmony_ci 38262306a36Sopenharmony_ciconfig PINCTRL_PIC32MZDA 38362306a36Sopenharmony_ci def_bool y if PIC32MZDA 38462306a36Sopenharmony_ci select PINCTRL_PIC32 38562306a36Sopenharmony_ci 38662306a36Sopenharmony_ciconfig PINCTRL_PISTACHIO 38762306a36Sopenharmony_ci bool "IMG Pistachio SoC pinctrl driver" 38862306a36Sopenharmony_ci depends on OF && (MIPS || COMPILE_TEST) 38962306a36Sopenharmony_ci depends on GPIOLIB 39062306a36Sopenharmony_ci select PINMUX 39162306a36Sopenharmony_ci select GENERIC_PINCONF 39262306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 39362306a36Sopenharmony_ci select OF_GPIO 39462306a36Sopenharmony_ci help 39562306a36Sopenharmony_ci This support pinctrl and GPIO driver for IMG Pistachio SoC. 39662306a36Sopenharmony_ci 39762306a36Sopenharmony_ciconfig PINCTRL_RK805 39862306a36Sopenharmony_ci tristate "Pinctrl and GPIO driver for RK805 PMIC" 39962306a36Sopenharmony_ci depends on MFD_RK8XX 40062306a36Sopenharmony_ci select GPIOLIB 40162306a36Sopenharmony_ci select PINMUX 40262306a36Sopenharmony_ci select GENERIC_PINCONF 40362306a36Sopenharmony_ci help 40462306a36Sopenharmony_ci This selects the pinctrl driver for RK805. 40562306a36Sopenharmony_ci 40662306a36Sopenharmony_ciconfig PINCTRL_ROCKCHIP 40762306a36Sopenharmony_ci tristate "Rockchip gpio and pinctrl driver" 40862306a36Sopenharmony_ci depends on ARCH_ROCKCHIP || COMPILE_TEST 40962306a36Sopenharmony_ci depends on OF 41062306a36Sopenharmony_ci select GPIOLIB 41162306a36Sopenharmony_ci select PINMUX 41262306a36Sopenharmony_ci select GENERIC_PINCONF 41362306a36Sopenharmony_ci select GENERIC_IRQ_CHIP 41462306a36Sopenharmony_ci select MFD_SYSCON 41562306a36Sopenharmony_ci select OF_GPIO 41662306a36Sopenharmony_ci default ARCH_ROCKCHIP 41762306a36Sopenharmony_ci help 41862306a36Sopenharmony_ci This support pinctrl and GPIO driver for Rockchip SoCs. 41962306a36Sopenharmony_ci 42062306a36Sopenharmony_ciconfig PINCTRL_SINGLE 42162306a36Sopenharmony_ci tristate "One-register-per-pin type device tree based pinctrl driver" 42262306a36Sopenharmony_ci depends on OF 42362306a36Sopenharmony_ci depends on HAS_IOMEM 42462306a36Sopenharmony_ci select GENERIC_PINCTRL_GROUPS 42562306a36Sopenharmony_ci select GENERIC_PINMUX_FUNCTIONS 42662306a36Sopenharmony_ci select GENERIC_PINCONF 42762306a36Sopenharmony_ci help 42862306a36Sopenharmony_ci This selects the device tree based generic pinctrl driver. 42962306a36Sopenharmony_ci 43062306a36Sopenharmony_ciconfig PINCTRL_ST 43162306a36Sopenharmony_ci bool 43262306a36Sopenharmony_ci depends on OF 43362306a36Sopenharmony_ci select PINMUX 43462306a36Sopenharmony_ci select PINCONF 43562306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 43662306a36Sopenharmony_ci 43762306a36Sopenharmony_ciconfig PINCTRL_STMFX 43862306a36Sopenharmony_ci tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" 43962306a36Sopenharmony_ci depends on I2C 44062306a36Sopenharmony_ci depends on OF_GPIO 44162306a36Sopenharmony_ci select GENERIC_PINCONF 44262306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 44362306a36Sopenharmony_ci select MFD_STMFX 44462306a36Sopenharmony_ci help 44562306a36Sopenharmony_ci Driver for STMicroelectronics Multi-Function eXpander (STMFX) 44662306a36Sopenharmony_ci GPIO expander. 44762306a36Sopenharmony_ci This provides a GPIO interface supporting inputs and outputs, 44862306a36Sopenharmony_ci and configuring push-pull, open-drain, and can also be used as 44962306a36Sopenharmony_ci interrupt-controller. 45062306a36Sopenharmony_ci 45162306a36Sopenharmony_ciconfig PINCTRL_SX150X 45262306a36Sopenharmony_ci bool "Semtech SX150x I2C GPIO expander pinctrl driver" 45362306a36Sopenharmony_ci depends on I2C=y 45462306a36Sopenharmony_ci select PINMUX 45562306a36Sopenharmony_ci select PINCONF 45662306a36Sopenharmony_ci select GENERIC_PINCONF 45762306a36Sopenharmony_ci select GPIOLIB 45862306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 45962306a36Sopenharmony_ci select REGMAP 46062306a36Sopenharmony_ci help 46162306a36Sopenharmony_ci Say Y here to provide support for Semtech SX150x-series I2C 46262306a36Sopenharmony_ci GPIO expanders as pinctrl module. 46362306a36Sopenharmony_ci Compatible models include: 46462306a36Sopenharmony_ci - 8 bits: sx1508q, sx1502q 46562306a36Sopenharmony_ci - 16 bits: sx1509q, sx1506q 46662306a36Sopenharmony_ci 46762306a36Sopenharmony_ciconfig PINCTRL_TB10X 46862306a36Sopenharmony_ci bool 46962306a36Sopenharmony_ci depends on OF && ARC_PLAT_TB10X 47062306a36Sopenharmony_ci select GPIOLIB 47162306a36Sopenharmony_ci 47262306a36Sopenharmony_ciconfig PINCTRL_ZYNQ 47362306a36Sopenharmony_ci bool "Pinctrl driver for Xilinx Zynq" 47462306a36Sopenharmony_ci depends on ARCH_ZYNQ 47562306a36Sopenharmony_ci select PINMUX 47662306a36Sopenharmony_ci select GENERIC_PINCONF 47762306a36Sopenharmony_ci help 47862306a36Sopenharmony_ci This selects the pinctrl driver for Xilinx Zynq. 47962306a36Sopenharmony_ci 48062306a36Sopenharmony_ciconfig PINCTRL_ZYNQMP 48162306a36Sopenharmony_ci tristate "Pinctrl driver for Xilinx ZynqMP" 48262306a36Sopenharmony_ci depends on ZYNQMP_FIRMWARE 48362306a36Sopenharmony_ci select PINMUX 48462306a36Sopenharmony_ci select GENERIC_PINCONF 48562306a36Sopenharmony_ci default ZYNQMP_FIRMWARE 48662306a36Sopenharmony_ci help 48762306a36Sopenharmony_ci This selects the pinctrl driver for Xilinx ZynqMP platform. 48862306a36Sopenharmony_ci This driver will query the pin information from the firmware 48962306a36Sopenharmony_ci and allow configuring the pins. 49062306a36Sopenharmony_ci Configuration can include the mux function to select on those 49162306a36Sopenharmony_ci pin(s)/group(s), and various pin configuration parameters 49262306a36Sopenharmony_ci such as pull-up, slew rate, etc. 49362306a36Sopenharmony_ci This driver can also be built as a module. If so, the module 49462306a36Sopenharmony_ci will be called pinctrl-zynqmp. 49562306a36Sopenharmony_ci 49662306a36Sopenharmony_ciconfig PINCTRL_MLXBF3 49762306a36Sopenharmony_ci tristate "NVIDIA BlueField-3 SoC Pinctrl driver" 49862306a36Sopenharmony_ci depends on (MELLANOX_PLATFORM && ARM64) || COMPILE_TEST 49962306a36Sopenharmony_ci select PINMUX 50062306a36Sopenharmony_ci select GPIOLIB 50162306a36Sopenharmony_ci select GPIOLIB_IRQCHIP 50262306a36Sopenharmony_ci help 50362306a36Sopenharmony_ci Say Y to select the pinctrl driver for BlueField-3 SoCs. 50462306a36Sopenharmony_ci This pin controller allows selecting the mux function for 50562306a36Sopenharmony_ci each pin. This driver can also be built as a module called 50662306a36Sopenharmony_ci pinctrl-mlxbf3. 50762306a36Sopenharmony_ci 50862306a36Sopenharmony_cisource "drivers/pinctrl/actions/Kconfig" 50962306a36Sopenharmony_cisource "drivers/pinctrl/aspeed/Kconfig" 51062306a36Sopenharmony_cisource "drivers/pinctrl/bcm/Kconfig" 51162306a36Sopenharmony_cisource "drivers/pinctrl/berlin/Kconfig" 51262306a36Sopenharmony_cisource "drivers/pinctrl/cirrus/Kconfig" 51362306a36Sopenharmony_cisource "drivers/pinctrl/freescale/Kconfig" 51462306a36Sopenharmony_cisource "drivers/pinctrl/intel/Kconfig" 51562306a36Sopenharmony_cisource "drivers/pinctrl/mediatek/Kconfig" 51662306a36Sopenharmony_cisource "drivers/pinctrl/meson/Kconfig" 51762306a36Sopenharmony_cisource "drivers/pinctrl/mvebu/Kconfig" 51862306a36Sopenharmony_cisource "drivers/pinctrl/nomadik/Kconfig" 51962306a36Sopenharmony_cisource "drivers/pinctrl/nuvoton/Kconfig" 52062306a36Sopenharmony_cisource "drivers/pinctrl/nxp/Kconfig" 52162306a36Sopenharmony_cisource "drivers/pinctrl/pxa/Kconfig" 52262306a36Sopenharmony_cisource "drivers/pinctrl/qcom/Kconfig" 52362306a36Sopenharmony_cisource "drivers/pinctrl/renesas/Kconfig" 52462306a36Sopenharmony_cisource "drivers/pinctrl/samsung/Kconfig" 52562306a36Sopenharmony_cisource "drivers/pinctrl/spear/Kconfig" 52662306a36Sopenharmony_cisource "drivers/pinctrl/sprd/Kconfig" 52762306a36Sopenharmony_cisource "drivers/pinctrl/starfive/Kconfig" 52862306a36Sopenharmony_cisource "drivers/pinctrl/stm32/Kconfig" 52962306a36Sopenharmony_cisource "drivers/pinctrl/sunplus/Kconfig" 53062306a36Sopenharmony_cisource "drivers/pinctrl/sunxi/Kconfig" 53162306a36Sopenharmony_cisource "drivers/pinctrl/tegra/Kconfig" 53262306a36Sopenharmony_cisource "drivers/pinctrl/ti/Kconfig" 53362306a36Sopenharmony_cisource "drivers/pinctrl/uniphier/Kconfig" 53462306a36Sopenharmony_cisource "drivers/pinctrl/visconti/Kconfig" 53562306a36Sopenharmony_cisource "drivers/pinctrl/vt8500/Kconfig" 53662306a36Sopenharmony_ci 53762306a36Sopenharmony_ciendif 538