12744e8afSLinus Walleij# 22744e8afSLinus Walleij# PINCTRL infrastructure and drivers 32744e8afSLinus Walleij# 42744e8afSLinus Walleij 545f034efSLinus Walleijconfig PINCTRL 645f034efSLinus Walleij bool 72744e8afSLinus Walleij 845f034efSLinus Walleijmenu "Pin controllers" 945f034efSLinus Walleij depends on PINCTRL 1045f034efSLinus Walleij 112744e8afSLinus Walleijconfig PINMUX 12244e95a7SUwe Kleine-König bool "Support pin multiplexing controllers" if COMPILE_TEST 13ae6b4d85SLinus Walleij 14ae6b4d85SLinus Walleijconfig PINCONF 15244e95a7SUwe Kleine-König bool "Support pin configuration controllers" if COMPILE_TEST 162744e8afSLinus Walleij 17394349f7SLinus Walleijconfig GENERIC_PINCONF 18394349f7SLinus Walleij bool 19394349f7SLinus Walleij select PINCONF 20394349f7SLinus Walleij 212744e8afSLinus Walleijconfig DEBUG_PINCTRL 222744e8afSLinus Walleij bool "Debug PINCTRL calls" 232744e8afSLinus Walleij depends on DEBUG_KERNEL 242744e8afSLinus Walleij help 252744e8afSLinus Walleij Say Y here to add some extra checks and diagnostics to PINCTRL calls. 262744e8afSLinus Walleij 27e9a03addSSonic Zhangconfig PINCTRL_ADI2 28e9a03addSSonic Zhang bool "ADI pin controller driver" 299d7278d0SSonic Zhang depends on BLACKFIN 30e9a03addSSonic Zhang select PINMUX 31e9a03addSSonic Zhang select IRQ_DOMAIN 32e9a03addSSonic Zhang help 33e9a03addSSonic Zhang This is the pin controller and gpio driver for ADI BF54x, BF60x and 34e9a03addSSonic Zhang future processors. This option is selected automatically when specific 35e9a03addSSonic Zhang machine and arch are selected to build. 36e9a03addSSonic Zhang 37c8ce8782SLaxman Dewanganconfig PINCTRL_AS3722 389385f35dSPaul Gortmaker tristate "Pinctrl and GPIO driver for ams AS3722 PMIC" 39c8ce8782SLaxman Dewangan depends on MFD_AS3722 && GPIOLIB 40c8ce8782SLaxman Dewangan select PINMUX 41c8ce8782SLaxman Dewangan select GENERIC_PINCONF 42c8ce8782SLaxman Dewangan help 43c8ce8782SLaxman Dewangan AS3722 device supports the configuration of GPIO pins for different 44c8ce8782SLaxman Dewangan functionality. This driver supports the pinmux, push-pull and 45c8ce8782SLaxman Dewangan open drain configuration for the GPIO pins of AS3722 devices. It also 46c8ce8782SLaxman Dewangan supports the GPIO functionality through gpiolib. 47c8ce8782SLaxman Dewangan 48e9a03addSSonic Zhangconfig PINCTRL_BF54x 49e9a03addSSonic Zhang def_bool y if BF54x 50e9a03addSSonic Zhang select PINCTRL_ADI2 51e9a03addSSonic Zhang 52e9a03addSSonic Zhangconfig PINCTRL_BF60x 53e9a03addSSonic Zhang def_bool y if BF60x 54e9a03addSSonic Zhang select PINCTRL_ADI2 55e9a03addSSonic Zhang 566732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91 576732ae5cSJean-Christophe PLAGNIOL-VILLARD bool "AT91 pinctrl driver" 586732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on OF 596732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on ARCH_AT91 606732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINMUX 616732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINCONF 6280cc3732SAlexander Stein select GPIOLIB 6380cc3732SAlexander Stein select OF_GPIO 6480cc3732SAlexander Stein select GPIOLIB_IRQCHIP 656732ae5cSJean-Christophe PLAGNIOL-VILLARD help 666732ae5cSJean-Christophe PLAGNIOL-VILLARD Say Y here to enable the at91 pinctrl driver 676732ae5cSJean-Christophe PLAGNIOL-VILLARD 6877618084SLudovic Desrochesconfig PINCTRL_AT91PIO4 6977618084SLudovic Desroches bool "AT91 PIO4 pinctrl driver" 7077618084SLudovic Desroches depends on OF 7177618084SLudovic Desroches depends on ARCH_AT91 7277618084SLudovic Desroches select PINMUX 7377618084SLudovic Desroches select GENERIC_PINCONF 7477618084SLudovic Desroches select GPIOLIB 7577618084SLudovic Desroches select GPIOLIB_IRQCHIP 7677618084SLudovic Desroches select OF_GPIO 7777618084SLudovic Desroches help 7877618084SLudovic Desroches Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4 7977618084SLudovic Desroches controller available on sama5d2 SoC. 8077618084SLudovic Desroches 81dbad75ddSKen Xueconfig PINCTRL_AMD 82337ea0fbSJean Delvare tristate "AMD GPIO pin control" 83dbad75ddSKen Xue depends on GPIOLIB 84dbad75ddSKen Xue select GPIOLIB_IRQCHIP 85dbad75ddSKen Xue select PINCONF 86dbad75ddSKen Xue select GENERIC_PINCONF 87dbad75ddSKen Xue help 88dbad75ddSKen Xue driver for memory mapped GPIO functionality on AMD platforms 89dbad75ddSKen Xue (x86 or arm).Most pins are usually muxed to some other 90dbad75ddSKen Xue functionality by firmware,so only a small amount is available 91dbad75ddSKen Xue for gpio use. 92dbad75ddSKen Xue 93dbad75ddSKen Xue Requires ACPI/FDT device enumeration code to set up a platform 94dbad75ddSKen Xue device. 95dbad75ddSKen Xue 9638b0e507SBaruch Siachconfig PINCTRL_DIGICOLOR 9738b0e507SBaruch Siach bool 9838b0e507SBaruch Siach depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST) 9938b0e507SBaruch Siach select PINMUX 10038b0e507SBaruch Siach select GENERIC_PINCONF 10138b0e507SBaruch Siach 1023f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ 1033f8c50c9SJohn Crispin bool 1043f8c50c9SJohn Crispin depends on LANTIQ 1053f8c50c9SJohn Crispin select PINMUX 1063f8c50c9SJohn Crispin select PINCONF 1073f8c50c9SJohn Crispin 1082f77ac93SJoachim Eastwoodconfig PINCTRL_LPC18XX 1092f77ac93SJoachim Eastwood bool "NXP LPC18XX/43XX SCU pinctrl driver" 1102f77ac93SJoachim Eastwood depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 1112f77ac93SJoachim Eastwood default ARCH_LPC18XX 1122f77ac93SJoachim Eastwood select PINMUX 1132f77ac93SJoachim Eastwood select GENERIC_PINCONF 1142f77ac93SJoachim Eastwood help 1152f77ac93SJoachim Eastwood Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU). 1162f77ac93SJoachim Eastwood 117e316cb2bSJohn Crispinconfig PINCTRL_FALCON 118e316cb2bSJohn Crispin bool 119e316cb2bSJohn Crispin depends on SOC_FALCON 120e316cb2bSJohn Crispin depends on PINCTRL_LANTIQ 121e316cb2bSJohn Crispin 1226ac73095SBeniamino Galvaniconfig PINCTRL_MESON 1236ac73095SBeniamino Galvani bool 124b99e6fb8SLinus Walleij depends on OF 1256ac73095SBeniamino Galvani select PINMUX 1266ac73095SBeniamino Galvani select PINCONF 1276ac73095SBeniamino Galvani select GENERIC_PINCONF 128b99e6fb8SLinus Walleij select GPIOLIB 1296ac73095SBeniamino Galvani select OF_GPIO 1306ac73095SBeniamino Galvani select REGMAP_MMIO 1316ac73095SBeniamino Galvani 132611dac1eSNeil Armstrongconfig PINCTRL_OXNAS 133611dac1eSNeil Armstrong bool 134611dac1eSNeil Armstrong depends on OF 135611dac1eSNeil Armstrong select PINMUX 136611dac1eSNeil Armstrong select PINCONF 137611dac1eSNeil Armstrong select GENERIC_PINCONF 138611dac1eSNeil Armstrong select GPIOLIB 139611dac1eSNeil Armstrong select OF_GPIO 140611dac1eSNeil Armstrong select GPIOLIB_IRQCHIP 141611dac1eSNeil Armstrong select MFD_SYSCON 142611dac1eSNeil Armstrong 143d3e51161SHeiko Stübnerconfig PINCTRL_ROCKCHIP 144d3e51161SHeiko Stübner bool 145d3e51161SHeiko Stübner select PINMUX 146d3e51161SHeiko Stübner select GENERIC_PINCONF 147d3e51161SHeiko Stübner select GENERIC_IRQ_CHIP 148751a99abSHeiko Stübner select MFD_SYSCON 149d3e51161SHeiko Stübner 1508b8b091bSTony Lindgrenconfig PINCTRL_SINGLE 1518b8b091bSTony Lindgren tristate "One-register-per-pin type device tree based pinctrl driver" 1528b8b091bSTony Lindgren depends on OF 1538b8b091bSTony Lindgren select PINMUX 1548b8b091bSTony Lindgren select PINCONF 1559dddb4dfSHaojian Zhuang select GENERIC_PINCONF 1568b8b091bSTony Lindgren help 1578b8b091bSTony Lindgren This selects the device tree based generic pinctrl driver. 1588b8b091bSTony Lindgren 1593bece55aSLinus Walleijconfig PINCTRL_SIRF 160a17272a4SBarry Song bool "CSR SiRFprimaII pin controller driver" 161d3e26f2fSBarry Song depends on ARCH_SIRF 162393daa81SRongjun Ying select PINMUX 163f9367793SWei Chen select PINCONF 164f9367793SWei Chen select GENERIC_PINCONF 1657420d2d0SLinus Walleij select GPIOLIB_IRQCHIP 166393daa81SRongjun Ying 167cefc03e5SAndrew Brestickerconfig PINCTRL_PISTACHIO 168cefc03e5SAndrew Bresticker def_bool y if MACH_PISTACHIO 169cefc03e5SAndrew Bresticker depends on GPIOLIB 170cefc03e5SAndrew Bresticker select PINMUX 171cefc03e5SAndrew Bresticker select GENERIC_PINCONF 172cefc03e5SAndrew Bresticker select GPIOLIB_IRQCHIP 173cefc03e5SAndrew Bresticker select OF_GPIO 174cefc03e5SAndrew Bresticker 175701016c0SSrinivas KANDAGATLAconfig PINCTRL_ST 176701016c0SSrinivas KANDAGATLA bool 177701016c0SSrinivas KANDAGATLA depends on OF 178701016c0SSrinivas KANDAGATLA select PINMUX 179701016c0SSrinivas KANDAGATLA select PINCONF 180130cbe30SLinus Walleij select GPIOLIB_IRQCHIP 181701016c0SSrinivas KANDAGATLA 182d5025f9fSJames Hoganconfig PINCTRL_TZ1090 183d5025f9fSJames Hogan bool "Toumaz Xenif TZ1090 pin control driver" 184d5025f9fSJames Hogan depends on SOC_TZ1090 185d5025f9fSJames Hogan select PINMUX 186d5025f9fSJames Hogan select GENERIC_PINCONF 187d5025f9fSJames Hogan 188b58f0273SJames Hoganconfig PINCTRL_TZ1090_PDC 189b58f0273SJames Hogan bool "Toumaz Xenif TZ1090 PDC pin control driver" 190b58f0273SJames Hogan depends on SOC_TZ1090 191b58f0273SJames Hogan select PINMUX 192b58f0273SJames Hogan select PINCONF 193b58f0273SJames Hogan 1943bece55aSLinus Walleijconfig PINCTRL_U300 1953bece55aSLinus Walleij bool "U300 pin controller driver" 19698da3529SLinus Walleij depends on ARCH_U300 19798da3529SLinus Walleij select PINMUX 198dc0b1aa3SLinus Walleij select GENERIC_PINCONF 19945f034efSLinus Walleij 200ca402d37SLinus Walleijconfig PINCTRL_COH901 201ca402d37SLinus Walleij bool "ST-Ericsson U300 COH 901 335/571 GPIO" 2023c94d1bbSLinus Walleij depends on GPIOLIB && ARCH_U300 && PINCTRL_U300 203523dcce7SLinus Walleij select GPIOLIB_IRQCHIP 204ca402d37SLinus Walleij help 205ca402d37SLinus Walleij Say yes here to support GPIO interface on ST-Ericsson U300. 206ca402d37SLinus Walleij The names of the two IP block variants supported are 207ca402d37SLinus Walleij COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 208ca402d37SLinus Walleij ports of 8 GPIO pins each. 209ca402d37SLinus Walleij 2102df723d4SLaxman Dewanganconfig PINCTRL_MAX77620 2112df723d4SLaxman Dewangan tristate "MAX77620/MAX20024 Pincontrol support" 2122df723d4SLaxman Dewangan depends on MFD_MAX77620 21379f28b9fSArnd Bergmann select PINMUX 2142df723d4SLaxman Dewangan select GENERIC_PINCONF 2152df723d4SLaxman Dewangan help 2162df723d4SLaxman Dewangan Say Yes here to enable Pin control support for Maxim PMIC MAX77620. 2172df723d4SLaxman Dewangan This PMIC has 8 GPIO pins that work as GPIO as well as special 2182df723d4SLaxman Dewangan function in alternate mode. This driver also configure push-pull, 2192df723d4SLaxman Dewangan open drain, FPS slots etc. 2202df723d4SLaxman Dewangan 2210a8d3e24SLaxman Dewanganconfig PINCTRL_PALMAS 222767b8ce3SPaul Gortmaker tristate "Pinctrl driver for the PALMAS Series MFD devices" 2230a8d3e24SLaxman Dewangan depends on OF && MFD_PALMAS 22463ca8db7SAxel Lin select PINMUX 2250a8d3e24SLaxman Dewangan select GENERIC_PINCONF 2260a8d3e24SLaxman Dewangan help 2270a8d3e24SLaxman Dewangan Palmas device supports the configuration of pins for different 2280a8d3e24SLaxman Dewangan functionality. This driver supports the pinmux, push-pull and 2290a8d3e24SLaxman Dewangan open drain configuration for the Palmas series devices like 2300a8d3e24SLaxman Dewangan TPS65913, TPS80036 etc. 2310a8d3e24SLaxman Dewangan 2322ba384e6SJoshua Hendersonconfig PINCTRL_PIC32 2332ba384e6SJoshua Henderson bool "Microchip PIC32 pin controller driver" 2342ba384e6SJoshua Henderson depends on OF 2352ba384e6SJoshua Henderson depends on MACH_PIC32 2362ba384e6SJoshua Henderson select PINMUX 2372ba384e6SJoshua Henderson select GENERIC_PINCONF 2382ba384e6SJoshua Henderson select GPIOLIB_IRQCHIP 2392ba384e6SJoshua Henderson select OF_GPIO 2402ba384e6SJoshua Henderson help 2412ba384e6SJoshua Henderson This is the pin controller and gpio driver for Microchip PIC32 2422ba384e6SJoshua Henderson microcontrollers. This option is selected automatically when specific 2432ba384e6SJoshua Henderson machine and arch are selected to build. 2442ba384e6SJoshua Henderson 2452ba384e6SJoshua Hendersonconfig PINCTRL_PIC32MZDA 2462ba384e6SJoshua Henderson def_bool y if PIC32MZDA 2472ba384e6SJoshua Henderson select PINCTRL_PIC32 2482ba384e6SJoshua Henderson 249add958ceSSoren Brinkmannconfig PINCTRL_ZYNQ 250add958ceSSoren Brinkmann bool "Pinctrl driver for Xilinx Zynq" 251add958ceSSoren Brinkmann depends on ARCH_ZYNQ 252add958ceSSoren Brinkmann select PINMUX 253add958ceSSoren Brinkmann select GENERIC_PINCONF 254add958ceSSoren Brinkmann help 255485dba27SMasahiro Yamada This selects the pinctrl driver for Xilinx Zynq. 256add958ceSSoren Brinkmann 257*4d3d0e42SAndrew Jefferysource "drivers/pinctrl/aspeed/Kconfig" 258b17f2f9bSRay Juisource "drivers/pinctrl/bcm/Kconfig" 2593de68d33SAntoine Tenartsource "drivers/pinctrl/berlin/Kconfig" 260edad3b2aSLinus Walleijsource "drivers/pinctrl/freescale/Kconfig" 2615fae8b86SMika Westerbergsource "drivers/pinctrl/intel/Kconfig" 26206763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig" 2633a198059SLinus Walleijsource "drivers/pinctrl/nomadik/Kconfig" 2644b15ec9dSRobert Jarzmiksource "drivers/pinctrl/pxa/Kconfig" 26569b78b8dSLinus Walleijsource "drivers/pinctrl/qcom/Kconfig" 266ebe629a3SSachin Kamatsource "drivers/pinctrl/samsung/Kconfig" 2676e54d8d2SLaurent Pinchartsource "drivers/pinctrl/sh-pfc/Kconfig" 268deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig" 269aceb16dcSMaxime Coquelinsource "drivers/pinctrl/stm32/Kconfig" 2705f910777SMaxime Ripardsource "drivers/pinctrl/sunxi/Kconfig" 27125cbac77SMasahiro Yamadasource "drivers/pinctrl/tegra/Kconfig" 2726e908892SMasahiro Yamadasource "drivers/pinctrl/uniphier/Kconfig" 273170c6152STony Prisksource "drivers/pinctrl/vt8500/Kconfig" 274a6df410dSHongzhou Yangsource "drivers/pinctrl/mediatek/Kconfig" 275deda8287SViresh Kumar 2763f8c50c9SJohn Crispinconfig PINCTRL_XWAY 2773f8c50c9SJohn Crispin bool 2783f8c50c9SJohn Crispin depends on SOC_TYPE_XWAY 2793f8c50c9SJohn Crispin depends on PINCTRL_LANTIQ 2803f8c50c9SJohn Crispin 2815aad0db1SChristian Ruppertconfig PINCTRL_TB10X 2825aad0db1SChristian Ruppert bool 283b99e6fb8SLinus Walleij depends on OF && ARC_PLAT_TB10X 284b99e6fb8SLinus Walleij select GPIOLIB 2855aad0db1SChristian Ruppert 28645f034efSLinus Walleijendmenu 287