1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 22744e8afSLinus Walleij# 32744e8afSLinus Walleij# PINCTRL infrastructure and drivers 42744e8afSLinus Walleij# 52744e8afSLinus Walleij 6d219b924SPhil Reidmenuconfig PINCTRL 7d219b924SPhil Reid bool "Pin controllers" 82744e8afSLinus Walleij 9d219b924SPhil Reidif PINCTRL 1045f034efSLinus Walleij 11c033a718SLinus Walleijconfig GENERIC_PINCTRL_GROUPS 12c7059c5aSTony Lindgren bool 13c7059c5aSTony Lindgren 142744e8afSLinus Walleijconfig PINMUX 15244e95a7SUwe Kleine-König bool "Support pin multiplexing controllers" if COMPILE_TEST 16ae6b4d85SLinus Walleij 17a76edc89STony Lindgrenconfig GENERIC_PINMUX_FUNCTIONS 18a76edc89STony Lindgren bool 19a76edc89STony Lindgren select PINMUX 20a76edc89STony Lindgren 21ae6b4d85SLinus Walleijconfig PINCONF 22244e95a7SUwe Kleine-König bool "Support pin configuration controllers" if COMPILE_TEST 232744e8afSLinus Walleij 24394349f7SLinus Walleijconfig GENERIC_PINCONF 25394349f7SLinus Walleij bool 26394349f7SLinus Walleij select PINCONF 27394349f7SLinus Walleij 282744e8afSLinus Walleijconfig DEBUG_PINCTRL 292744e8afSLinus Walleij bool "Debug PINCTRL calls" 302744e8afSLinus Walleij depends on DEBUG_KERNEL 312744e8afSLinus Walleij help 322744e8afSLinus Walleij Say Y here to add some extra checks and diagnostics to PINCTRL calls. 332744e8afSLinus Walleij 3400df0582SJesper Nilssonconfig PINCTRL_ARTPEC6 3500df0582SJesper Nilsson bool "Axis ARTPEC-6 pin controller driver" 3600df0582SJesper Nilsson depends on MACH_ARTPEC6 3700df0582SJesper Nilsson select PINMUX 3800df0582SJesper Nilsson select GENERIC_PINCONF 3900df0582SJesper Nilsson help 4000df0582SJesper Nilsson This is the driver for the Axis ARTPEC-6 pin controller. This driver 4100df0582SJesper Nilsson supports pin function multiplexing as well as pin bias and drive 4200df0582SJesper Nilsson strength configuration. Device tree integration instructions can be 4300df0582SJesper Nilsson found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt 4400df0582SJesper Nilsson 45c8ce8782SLaxman Dewanganconfig PINCTRL_AS3722 469385f35dSPaul Gortmaker tristate "Pinctrl and GPIO driver for ams AS3722 PMIC" 47c8ce8782SLaxman Dewangan depends on MFD_AS3722 && GPIOLIB 48c8ce8782SLaxman Dewangan select PINMUX 49c8ce8782SLaxman Dewangan select GENERIC_PINCONF 50c8ce8782SLaxman Dewangan help 51c8ce8782SLaxman Dewangan AS3722 device supports the configuration of GPIO pins for different 52c8ce8782SLaxman Dewangan functionality. This driver supports the pinmux, push-pull and 53c8ce8782SLaxman Dewangan open drain configuration for the GPIO pins of AS3722 devices. It also 54c8ce8782SLaxman Dewangan supports the GPIO functionality through gpiolib. 55c8ce8782SLaxman Dewangan 56449317a8SQuentin Schulzconfig PINCTRL_AXP209 57449317a8SQuentin Schulz tristate "X-Powers AXP209 PMIC pinctrl and GPIO Support" 58449317a8SQuentin Schulz depends on MFD_AXP20X 59971f1b38SQuentin Schulz depends on OF 60971f1b38SQuentin Schulz select PINMUX 61971f1b38SQuentin Schulz select GENERIC_PINCONF 62971f1b38SQuentin Schulz select GPIOLIB 63449317a8SQuentin Schulz help 64449317a8SQuentin Schulz AXP PMICs provides multiple GPIOs that can be muxed for different 65449317a8SQuentin Schulz functions. This driver bundles a pinctrl driver to select the function 66449317a8SQuentin Schulz muxing and a GPIO driver to handle the GPIO when the GPIO function is 67449317a8SQuentin Schulz selected. 68449317a8SQuentin Schulz Say yes to enable pinctrl and GPIO support for the AXP209 PMIC 69449317a8SQuentin Schulz 706732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91 716732ae5cSJean-Christophe PLAGNIOL-VILLARD bool "AT91 pinctrl driver" 726732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on OF 736732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on ARCH_AT91 746732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINMUX 756732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINCONF 7680cc3732SAlexander Stein select GPIOLIB 7780cc3732SAlexander Stein select OF_GPIO 7880cc3732SAlexander Stein select GPIOLIB_IRQCHIP 796732ae5cSJean-Christophe PLAGNIOL-VILLARD help 806732ae5cSJean-Christophe PLAGNIOL-VILLARD Say Y here to enable the at91 pinctrl driver 816732ae5cSJean-Christophe PLAGNIOL-VILLARD 8277618084SLudovic Desrochesconfig PINCTRL_AT91PIO4 8377618084SLudovic Desroches bool "AT91 PIO4 pinctrl driver" 8477618084SLudovic Desroches depends on OF 850a03658dSTiezhu Yang depends on HAS_IOMEM 86e682fcc7STiezhu Yang depends on ARCH_AT91 || COMPILE_TEST 8777618084SLudovic Desroches select PINMUX 8877618084SLudovic Desroches select GENERIC_PINCONF 8977618084SLudovic Desroches select GPIOLIB 9077618084SLudovic Desroches select GPIOLIB_IRQCHIP 9177618084SLudovic Desroches select OF_GPIO 9277618084SLudovic Desroches help 9377618084SLudovic Desroches Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4 9477618084SLudovic Desroches controller available on sama5d2 SoC. 9577618084SLudovic Desroches 96dbad75ddSKen Xueconfig PINCTRL_AMD 97337ea0fbSJean Delvare tristate "AMD GPIO pin control" 98fd35b202SLinus Walleij depends on HAS_IOMEM 9947fa5c97SGeert Uytterhoeven depends on ACPI || COMPILE_TEST 100e2a021d4SLinus Walleij select GPIOLIB 101dbad75ddSKen Xue select GPIOLIB_IRQCHIP 10283b31c2aSPetr Mladek select PINMUX 103dbad75ddSKen Xue select PINCONF 104dbad75ddSKen Xue select GENERIC_PINCONF 105dbad75ddSKen Xue help 106dbad75ddSKen Xue driver for memory mapped GPIO functionality on AMD platforms 107dbad75ddSKen Xue (x86 or arm).Most pins are usually muxed to some other 108dbad75ddSKen Xue functionality by firmware,so only a small amount is available 109dbad75ddSKen Xue for gpio use. 110dbad75ddSKen Xue 111dbad75ddSKen Xue Requires ACPI/FDT device enumeration code to set up a platform 112dbad75ddSKen Xue device. 113dbad75ddSKen Xue 1148f3f0246SManivannan Sadhasivamconfig PINCTRL_BM1880 1158f3f0246SManivannan Sadhasivam bool "Bitmain BM1880 Pinctrl driver" 1168293b3c6SManivannan Sadhasivam depends on OF && (ARCH_BITMAIN || COMPILE_TEST) 1178293b3c6SManivannan Sadhasivam default ARCH_BITMAIN 1188f3f0246SManivannan Sadhasivam select PINMUX 1198f3f0246SManivannan Sadhasivam help 1208f3f0246SManivannan Sadhasivam Pinctrl driver for Bitmain BM1880 SoC. 1218f3f0246SManivannan Sadhasivam 1221ff91f0aSDavid Lechnerconfig PINCTRL_DA850_PUPD 1231ff91f0aSDavid Lechner tristate "TI DA850/OMAP-L138/AM18XX pullup/pulldown groups" 1241ff91f0aSDavid Lechner depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) 1251ff91f0aSDavid Lechner select PINCONF 1261ff91f0aSDavid Lechner select GENERIC_PINCONF 1271ff91f0aSDavid Lechner help 1281ff91f0aSDavid Lechner Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control 1291ff91f0aSDavid Lechner pullup/pulldown pin groups. 1301ff91f0aSDavid Lechner 13156cc3af4SMarco Felschconfig PINCTRL_DA9062 13256cc3af4SMarco Felsch tristate "Dialog Semiconductor DA9062 PMIC pinctrl and GPIO Support" 13356cc3af4SMarco Felsch depends on MFD_DA9062 13456cc3af4SMarco Felsch select GPIOLIB 13556cc3af4SMarco Felsch help 13656cc3af4SMarco Felsch The Dialog DA9062 PMIC provides multiple GPIOs that can be muxed for 13756cc3af4SMarco Felsch different functions. This driver bundles a pinctrl driver to select the 13856cc3af4SMarco Felsch function muxing and a GPIO driver to handle the GPIO when the GPIO 13956cc3af4SMarco Felsch function is selected. 14056cc3af4SMarco Felsch 14156cc3af4SMarco Felsch Say yes to enable pinctrl and GPIO support for the DA9062 PMIC. 14256cc3af4SMarco Felsch 14338b0e507SBaruch Siachconfig PINCTRL_DIGICOLOR 14438b0e507SBaruch Siach bool 14538b0e507SBaruch Siach depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST) 14638b0e507SBaruch Siach select PINMUX 14738b0e507SBaruch Siach select GENERIC_PINCONF 14838b0e507SBaruch Siach 1493f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ 1503f8c50c9SJohn Crispin bool 1513f8c50c9SJohn Crispin depends on LANTIQ 1523f8c50c9SJohn Crispin select PINMUX 1533f8c50c9SJohn Crispin select PINCONF 1543f8c50c9SJohn Crispin 1552f77ac93SJoachim Eastwoodconfig PINCTRL_LPC18XX 1562f77ac93SJoachim Eastwood bool "NXP LPC18XX/43XX SCU pinctrl driver" 1572f77ac93SJoachim Eastwood depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 1582f77ac93SJoachim Eastwood default ARCH_LPC18XX 1592f77ac93SJoachim Eastwood select PINMUX 1602f77ac93SJoachim Eastwood select GENERIC_PINCONF 1612f77ac93SJoachim Eastwood help 1622f77ac93SJoachim Eastwood Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU). 1632f77ac93SJoachim Eastwood 164e316cb2bSJohn Crispinconfig PINCTRL_FALCON 165e316cb2bSJohn Crispin bool 166e316cb2bSJohn Crispin depends on SOC_FALCON 167e316cb2bSJohn Crispin depends on PINCTRL_LANTIQ 168e316cb2bSJohn Crispin 16906351d13SLinus Walleijconfig PINCTRL_GEMINI 17006351d13SLinus Walleij bool 17106351d13SLinus Walleij depends on ARCH_GEMINI 17206351d13SLinus Walleij default ARCH_GEMINI 17306351d13SLinus Walleij select PINMUX 1741c5b7f3cSLinus Walleij select GENERIC_PINCONF 17506351d13SLinus Walleij select MFD_SYSCON 17606351d13SLinus Walleij 1770f04a817SAndy Shevchenkoconfig PINCTRL_MCP23S08_I2C 1780f04a817SAndy Shevchenko tristate 1790f04a817SAndy Shevchenko select REGMAP_I2C 1800f04a817SAndy Shevchenko 1810f04a817SAndy Shevchenkoconfig PINCTRL_MCP23S08_SPI 1820f04a817SAndy Shevchenko tristate 1830f04a817SAndy Shevchenko select REGMAP_SPI 1840f04a817SAndy Shevchenko 18564ac43e6SSebastian Reichelconfig PINCTRL_MCP23S08 18664ac43e6SSebastian Reichel tristate "Microchip MCP23xxx I/O expander" 18764ac43e6SSebastian Reichel depends on SPI_MASTER || I2C 188e2a021d4SLinus Walleij select GPIOLIB 18964ac43e6SSebastian Reichel select GPIOLIB_IRQCHIP 19082039d24SSebastian Reichel select GENERIC_PINCONF 1910f04a817SAndy Shevchenko select PINCTRL_MCP23S08_I2C if I2C 1920f04a817SAndy Shevchenko select PINCTRL_MCP23S08_SPI if SPI_MASTER 19364ac43e6SSebastian Reichel help 1946ff45566SJan Kundrát SPI/I2C driver for Microchip MCP23S08 / MCP23S17 / MCP23S18 / 1956ff45566SJan Kundrát MCP23008 / MCP23017 / MCP23018 I/O expanders. 1966ff45566SJan Kundrát This provides a GPIO interface supporting inputs and outputs and a 1976ff45566SJan Kundrát corresponding interrupt-controller. 19864ac43e6SSebastian Reichel 199611dac1eSNeil Armstrongconfig PINCTRL_OXNAS 200611dac1eSNeil Armstrong bool 201611dac1eSNeil Armstrong depends on OF 202611dac1eSNeil Armstrong select PINMUX 203611dac1eSNeil Armstrong select PINCONF 204611dac1eSNeil Armstrong select GENERIC_PINCONF 205611dac1eSNeil Armstrong select GPIOLIB 206611dac1eSNeil Armstrong select OF_GPIO 207611dac1eSNeil Armstrong select GPIOLIB_IRQCHIP 208611dac1eSNeil Armstrong select MFD_SYSCON 209611dac1eSNeil Armstrong 210d3e51161SHeiko Stübnerconfig PINCTRL_ROCKCHIP 211d3e51161SHeiko Stübner bool 2120662e4a1SHeiko Stuebner depends on OF 213*25fda51cSJianqun Xu select GPIOLIB 214d3e51161SHeiko Stübner select PINMUX 215d3e51161SHeiko Stübner select GENERIC_PINCONF 216d3e51161SHeiko Stübner select GENERIC_IRQ_CHIP 217751a99abSHeiko Stübner select MFD_SYSCON 2180662e4a1SHeiko Stuebner select OF_GPIO 219*25fda51cSJianqun Xu default ARCH_ROCKCHIP 220*25fda51cSJianqun Xu help 221*25fda51cSJianqun Xu This support pinctrl and gpio driver for Rockchip SoCs. 222d3e51161SHeiko Stübner 2238b8b091bSTony Lindgrenconfig PINCTRL_SINGLE 2248b8b091bSTony Lindgren tristate "One-register-per-pin type device tree based pinctrl driver" 2258b8b091bSTony Lindgren depends on OF 226fd35b202SLinus Walleij depends on HAS_IOMEM 227caeb774eSTony Lindgren select GENERIC_PINCTRL_GROUPS 228571aec4dSTony Lindgren select GENERIC_PINMUX_FUNCTIONS 2299dddb4dfSHaojian Zhuang select GENERIC_PINCONF 2308b8b091bSTony Lindgren help 2318b8b091bSTony Lindgren This selects the device tree based generic pinctrl driver. 2328b8b091bSTony Lindgren 2339e80f906SNeil Armstrongconfig PINCTRL_SX150X 2349e80f906SNeil Armstrong bool "Semtech SX150x I2C GPIO expander pinctrl driver" 235e2a021d4SLinus Walleij depends on I2C=y 2369e80f906SNeil Armstrong select PINMUX 2379e80f906SNeil Armstrong select PINCONF 2389e80f906SNeil Armstrong select GENERIC_PINCONF 239e2a021d4SLinus Walleij select GPIOLIB 2409e80f906SNeil Armstrong select GPIOLIB_IRQCHIP 2410db0f26cSAndrey Smirnov select REGMAP 2429e80f906SNeil Armstrong help 2439e80f906SNeil Armstrong Say yes here to provide support for Semtech SX150x-series I2C 2449e80f906SNeil Armstrong GPIO expanders as pinctrl module. 2459e80f906SNeil Armstrong Compatible models include: 2469e80f906SNeil Armstrong - 8 bits: sx1508q, sx1502q 2479e80f906SNeil Armstrong - 16 bits: sx1509q, sx1506q 2489e80f906SNeil Armstrong 249cefc03e5SAndrew Brestickerconfig PINCTRL_PISTACHIO 250cefc03e5SAndrew Bresticker def_bool y if MACH_PISTACHIO 251cefc03e5SAndrew Bresticker depends on GPIOLIB 252cefc03e5SAndrew Bresticker select PINMUX 253cefc03e5SAndrew Bresticker select GENERIC_PINCONF 254cefc03e5SAndrew Bresticker select GPIOLIB_IRQCHIP 255cefc03e5SAndrew Bresticker select OF_GPIO 256cefc03e5SAndrew Bresticker 257701016c0SSrinivas KANDAGATLAconfig PINCTRL_ST 258701016c0SSrinivas KANDAGATLA bool 259701016c0SSrinivas KANDAGATLA depends on OF 260701016c0SSrinivas KANDAGATLA select PINMUX 261701016c0SSrinivas KANDAGATLA select PINCONF 262130cbe30SLinus Walleij select GPIOLIB_IRQCHIP 263701016c0SSrinivas KANDAGATLA 2641490d9f8SAmelie Delaunayconfig PINCTRL_STMFX 2651490d9f8SAmelie Delaunay tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" 2669af2de76SAmelie Delaunay depends on I2C 267ec2e0f4fSAmelie Delaunay depends on OF_GPIO 2681490d9f8SAmelie Delaunay select GENERIC_PINCONF 2691490d9f8SAmelie Delaunay select GPIOLIB_IRQCHIP 2701490d9f8SAmelie Delaunay select MFD_STMFX 2711490d9f8SAmelie Delaunay help 2721490d9f8SAmelie Delaunay Driver for STMicroelectronics Multi-Function eXpander (STMFX) 2731490d9f8SAmelie Delaunay GPIO expander. 2741490d9f8SAmelie Delaunay This provides a GPIO interface supporting inputs and outputs, 2751490d9f8SAmelie Delaunay and configuring push-pull, open-drain, and can also be used as 2761490d9f8SAmelie Delaunay interrupt-controller. 2771490d9f8SAmelie Delaunay 2782df723d4SLaxman Dewanganconfig PINCTRL_MAX77620 2792df723d4SLaxman Dewangan tristate "MAX77620/MAX20024 Pincontrol support" 28024d6a91cSArnd Bergmann depends on MFD_MAX77620 && OF 28179f28b9fSArnd Bergmann select PINMUX 2822df723d4SLaxman Dewangan select GENERIC_PINCONF 2832df723d4SLaxman Dewangan help 2842df723d4SLaxman Dewangan Say Yes here to enable Pin control support for Maxim PMIC MAX77620. 2852df723d4SLaxman Dewangan This PMIC has 8 GPIO pins that work as GPIO as well as special 2862df723d4SLaxman Dewangan function in alternate mode. This driver also configure push-pull, 2872df723d4SLaxman Dewangan open drain, FPS slots etc. 2882df723d4SLaxman Dewangan 2890a8d3e24SLaxman Dewanganconfig PINCTRL_PALMAS 290767b8ce3SPaul Gortmaker tristate "Pinctrl driver for the PALMAS Series MFD devices" 2910a8d3e24SLaxman Dewangan depends on OF && MFD_PALMAS 29263ca8db7SAxel Lin select PINMUX 2930a8d3e24SLaxman Dewangan select GENERIC_PINCONF 2940a8d3e24SLaxman Dewangan help 2950a8d3e24SLaxman Dewangan Palmas device supports the configuration of pins for different 2960a8d3e24SLaxman Dewangan functionality. This driver supports the pinmux, push-pull and 2970a8d3e24SLaxman Dewangan open drain configuration for the Palmas series devices like 2980a8d3e24SLaxman Dewangan TPS65913, TPS80036 etc. 2990a8d3e24SLaxman Dewangan 3002ba384e6SJoshua Hendersonconfig PINCTRL_PIC32 3012ba384e6SJoshua Henderson bool "Microchip PIC32 pin controller driver" 3022ba384e6SJoshua Henderson depends on OF 3032ba384e6SJoshua Henderson depends on MACH_PIC32 3042ba384e6SJoshua Henderson select PINMUX 3052ba384e6SJoshua Henderson select GENERIC_PINCONF 3062ba384e6SJoshua Henderson select GPIOLIB_IRQCHIP 3072ba384e6SJoshua Henderson select OF_GPIO 3082ba384e6SJoshua Henderson help 3092ba384e6SJoshua Henderson This is the pin controller and gpio driver for Microchip PIC32 3102ba384e6SJoshua Henderson microcontrollers. This option is selected automatically when specific 3112ba384e6SJoshua Henderson machine and arch are selected to build. 3122ba384e6SJoshua Henderson 3132ba384e6SJoshua Hendersonconfig PINCTRL_PIC32MZDA 3142ba384e6SJoshua Henderson def_bool y if PIC32MZDA 3152ba384e6SJoshua Henderson select PINCTRL_PIC32 3162ba384e6SJoshua Henderson 317add958ceSSoren Brinkmannconfig PINCTRL_ZYNQ 318add958ceSSoren Brinkmann bool "Pinctrl driver for Xilinx Zynq" 319add958ceSSoren Brinkmann depends on ARCH_ZYNQ 320add958ceSSoren Brinkmann select PINMUX 321add958ceSSoren Brinkmann select GENERIC_PINCONF 322add958ceSSoren Brinkmann help 323485dba27SMasahiro Yamada This selects the pinctrl driver for Xilinx Zynq. 324add958ceSSoren Brinkmann 325b5c23aa4SPaul Cercueilconfig PINCTRL_INGENIC 326b5c23aa4SPaul Cercueil bool "Pinctrl driver for the Ingenic JZ47xx SoCs" 327635c20a1SPaul Cercueil default MACH_INGENIC 328c504985eSLinus Walleij depends on OF 329635c20a1SPaul Cercueil depends on MIPS || COMPILE_TEST 330b5c23aa4SPaul Cercueil select GENERIC_PINCONF 331b5c23aa4SPaul Cercueil select GENERIC_PINCTRL_GROUPS 332b5c23aa4SPaul Cercueil select GENERIC_PINMUX_FUNCTIONS 333e72394e2SPaul Cercueil select GPIOLIB 334e72394e2SPaul Cercueil select GPIOLIB_IRQCHIP 335b5c23aa4SPaul Cercueil select REGMAP_MMIO 336b5c23aa4SPaul Cercueil 337ea479996SJoseph Chenconfig PINCTRL_RK805 338ea479996SJoseph Chen tristate "Pinctrl and GPIO driver for RK805 PMIC" 339ea479996SJoseph Chen depends on MFD_RK808 340ea479996SJoseph Chen select GPIOLIB 341ea479996SJoseph Chen select PINMUX 342ea479996SJoseph Chen select GENERIC_PINCONF 343ea479996SJoseph Chen help 344ea479996SJoseph Chen This selects the pinctrl driver for RK805. 345ea479996SJoseph Chen 346ce8dc094SAlexandre Belloniconfig PINCTRL_OCELOT 347da801ab5SAlexandre Belloni bool "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" 348ce8dc094SAlexandre Belloni depends on OF 3492dab3dd1SLinus Walleij depends on HAS_IOMEM 350ce8dc094SAlexandre Belloni select GPIOLIB 351be36abb7SQuentin Schulz select GPIOLIB_IRQCHIP 352ce8dc094SAlexandre Belloni select GENERIC_PINCONF 353ce8dc094SAlexandre Belloni select GENERIC_PINCTRL_GROUPS 354ce8dc094SAlexandre Belloni select GENERIC_PINMUX_FUNCTIONS 355da801ab5SAlexandre Belloni select OF_GPIO 356ce8dc094SAlexandre Belloni select REGMAP_MMIO 357ce8dc094SAlexandre Belloni 3587e5ea974SLars Povlsenconfig PINCTRL_MICROCHIP_SGPIO 3597e5ea974SLars Povlsen bool "Pinctrl driver for Microsemi/Microchip Serial GPIO" 360552a9cc0SLars Povlsen depends on OF 3617e5ea974SLars Povlsen depends on HAS_IOMEM 3627e5ea974SLars Povlsen select GPIOLIB 363be2dc859SLars Povlsen select GPIOLIB_IRQCHIP 3647e5ea974SLars Povlsen select GENERIC_PINCONF 3657e5ea974SLars Povlsen select GENERIC_PINCTRL_GROUPS 3667e5ea974SLars Povlsen select GENERIC_PINMUX_FUNCTIONS 367552a9cc0SLars Povlsen select OF_GPIO 3687e5ea974SLars Povlsen help 3697e5ea974SLars Povlsen Support for the serial GPIO interface used on Microsemi and 3707e5ea974SLars Povlsen Microchip SoC's. By using a serial interface, the SIO 3717e5ea974SLars Povlsen controller significantly extends the number of available 3727e5ea974SLars Povlsen GPIOs with a minimum number of additional pins on the 3737e5ea974SLars Povlsen device. The primary purpose of the SIO controller is to 3747e5ea974SLars Povlsen connect control signals from SFP modules and to act as an 3757e5ea974SLars Povlsen LED controller. 3767e5ea974SLars Povlsen 377d4c34d09SDamien Le Moalconfig PINCTRL_K210 378d4c34d09SDamien Le Moal bool "Pinctrl driver for the Canaan Kendryte K210 SoC" 379d4c34d09SDamien Le Moal depends on RISCV && SOC_CANAAN && OF 380d4c34d09SDamien Le Moal select GENERIC_PINMUX_FUNCTIONS 381d4c34d09SDamien Le Moal select GENERIC_PINCONF 382d4c34d09SDamien Le Moal select GPIOLIB 383d4c34d09SDamien Le Moal select OF_GPIO 384d4c34d09SDamien Le Moal select REGMAP_MMIO 385d4c34d09SDamien Le Moal default SOC_CANAAN 386d4c34d09SDamien Le Moal help 387d4c34d09SDamien Le Moal Add support for the Canaan Kendryte K210 RISC-V SOC Field 388d4c34d09SDamien Le Moal Programmable IO Array (FPIOA) controller. 389d4c34d09SDamien Le Moal 3902242ddfbSManivannan Sadhasivamsource "drivers/pinctrl/actions/Kconfig" 3914d3d0e42SAndrew Jefferysource "drivers/pinctrl/aspeed/Kconfig" 392b17f2f9bSRay Juisource "drivers/pinctrl/bcm/Kconfig" 3933de68d33SAntoine Tenartsource "drivers/pinctrl/berlin/Kconfig" 394edad3b2aSLinus Walleijsource "drivers/pinctrl/freescale/Kconfig" 3955fae8b86SMika Westerbergsource "drivers/pinctrl/intel/Kconfig" 39606763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig" 3973a198059SLinus Walleijsource "drivers/pinctrl/nomadik/Kconfig" 3983b588e43STomer Maimonsource "drivers/pinctrl/nuvoton/Kconfig" 3994b15ec9dSRobert Jarzmiksource "drivers/pinctrl/pxa/Kconfig" 40069b78b8dSLinus Walleijsource "drivers/pinctrl/qcom/Kconfig" 401518b466aSSergio Paracuellossource "drivers/pinctrl/ralink/Kconfig" 402077365a9SGeert Uytterhoevensource "drivers/pinctrl/renesas/Kconfig" 403ebe629a3SSachin Kamatsource "drivers/pinctrl/samsung/Kconfig" 404deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig" 40541d32cfcSBaolin Wangsource "drivers/pinctrl/sprd/Kconfig" 406aceb16dcSMaxime Coquelinsource "drivers/pinctrl/stm32/Kconfig" 4075f910777SMaxime Ripardsource "drivers/pinctrl/sunxi/Kconfig" 40825cbac77SMasahiro Yamadasource "drivers/pinctrl/tegra/Kconfig" 409003910ebSNishanth Menonsource "drivers/pinctrl/ti/Kconfig" 4106e908892SMasahiro Yamadasource "drivers/pinctrl/uniphier/Kconfig" 411170c6152STony Prisksource "drivers/pinctrl/vt8500/Kconfig" 412a6df410dSHongzhou Yangsource "drivers/pinctrl/mediatek/Kconfig" 413277d14ebSJerome Brunetsource "drivers/pinctrl/meson/Kconfig" 414218d72a7SRichard Fitzgeraldsource "drivers/pinctrl/cirrus/Kconfig" 415a68a7844SNobuhiro Iwamatsusource "drivers/pinctrl/visconti/Kconfig" 416deda8287SViresh Kumar 4173f8c50c9SJohn Crispinconfig PINCTRL_XWAY 4183f8c50c9SJohn Crispin bool 4193f8c50c9SJohn Crispin depends on SOC_TYPE_XWAY 4203f8c50c9SJohn Crispin depends on PINCTRL_LANTIQ 4213f8c50c9SJohn Crispin 4225aad0db1SChristian Ruppertconfig PINCTRL_TB10X 4235aad0db1SChristian Ruppert bool 424b99e6fb8SLinus Walleij depends on OF && ARC_PLAT_TB10X 425b99e6fb8SLinus Walleij select GPIOLIB 4265aad0db1SChristian Ruppert 4271948d5c5SRahul Tanwarconfig PINCTRL_EQUILIBRIUM 4281948d5c5SRahul Tanwar tristate "Generic pinctrl and GPIO driver for Intel Lightning Mountain SoC" 4299e65527aSPaul Cercueil depends on OF && HAS_IOMEM 43080691a8aSGeert Uytterhoeven depends on X86 || COMPILE_TEST 4311948d5c5SRahul Tanwar select PINMUX 4321948d5c5SRahul Tanwar select PINCONF 4331948d5c5SRahul Tanwar select GPIOLIB 4341948d5c5SRahul Tanwar select GPIO_GENERIC 4351948d5c5SRahul Tanwar select GPIOLIB_IRQCHIP 4361948d5c5SRahul Tanwar select GENERIC_PINCONF 4371948d5c5SRahul Tanwar select GENERIC_PINCTRL_GROUPS 4381948d5c5SRahul Tanwar select GENERIC_PINMUX_FUNCTIONS 4391948d5c5SRahul Tanwar 4401948d5c5SRahul Tanwar help 4411948d5c5SRahul Tanwar Equilibrium pinctrl driver is a pinctrl & GPIO driver for Intel Lightning 4421948d5c5SRahul Tanwar Mountain network processor SoC that supports both the linux GPIO and pin 4431948d5c5SRahul Tanwar control frameworks. It provides interfaces to setup pinmux, assign desired 4441948d5c5SRahul Tanwar pin functions, configure GPIO attributes for LGM SoC pins. Pinmux and 4451948d5c5SRahul Tanwar pinconf settings are retrieved from device tree. 4461948d5c5SRahul Tanwar 447d219b924SPhil Reidendif 448