12744e8afSLinus Walleij# 22744e8afSLinus Walleij# PINCTRL infrastructure and drivers 32744e8afSLinus Walleij# 42744e8afSLinus Walleij 545f034efSLinus Walleijconfig PINCTRL 645f034efSLinus Walleij bool 72744e8afSLinus Walleij 82744e8afSLinus Walleijif PINCTRL 92744e8afSLinus Walleij 1045f034efSLinus Walleijmenu "Pin controllers" 1145f034efSLinus Walleij depends on PINCTRL 1245f034efSLinus Walleij 132744e8afSLinus Walleijconfig PINMUX 14ae6b4d85SLinus Walleij bool "Support pin multiplexing controllers" 15ae6b4d85SLinus Walleij 16ae6b4d85SLinus Walleijconfig PINCONF 17ae6b4d85SLinus Walleij bool "Support pin configuration controllers" 182744e8afSLinus Walleij 19394349f7SLinus Walleijconfig GENERIC_PINCONF 20394349f7SLinus Walleij bool 21394349f7SLinus Walleij select PINCONF 22394349f7SLinus Walleij 232744e8afSLinus Walleijconfig DEBUG_PINCTRL 242744e8afSLinus Walleij bool "Debug PINCTRL calls" 252744e8afSLinus Walleij depends on DEBUG_KERNEL 262744e8afSLinus Walleij help 272744e8afSLinus Walleij Say Y here to add some extra checks and diagnostics to PINCTRL calls. 282744e8afSLinus Walleij 290493e649SPatrice Chotardconfig PINCTRL_ABX500 300493e649SPatrice Chotard bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions" 310493e649SPatrice Chotard depends on AB8500_CORE 320493e649SPatrice Chotard select GENERIC_PINCONF 330493e649SPatrice Chotard help 340493e649SPatrice Chotard Select this to enable the ABx500 family IC GPIO driver 350493e649SPatrice Chotard 363c937993SPatrice Chotardconfig PINCTRL_AB8500 373c937993SPatrice Chotard bool "AB8500 pin controller driver" 383c937993SPatrice Chotard depends on PINCTRL_ABX500 && ARCH_U8500 393c937993SPatrice Chotard 40a8f96e41SPatrice Chotardconfig PINCTRL_AB8540 41a8f96e41SPatrice Chotard bool "AB8540 pin controller driver" 42a8f96e41SPatrice Chotard depends on PINCTRL_ABX500 && ARCH_U8500 43a8f96e41SPatrice Chotard 4409dbec3fSPatrice Chotardconfig PINCTRL_AB9540 4509dbec3fSPatrice Chotard bool "AB9540 pin controller driver" 4609dbec3fSPatrice Chotard depends on PINCTRL_ABX500 && ARCH_U8500 4709dbec3fSPatrice Chotard 481aa2d8d4SPatrice Chotardconfig PINCTRL_AB8505 491aa2d8d4SPatrice Chotard bool "AB8505 pin controller driver" 501aa2d8d4SPatrice Chotard depends on PINCTRL_ABX500 && ARCH_U8500 511aa2d8d4SPatrice Chotard 526732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91 536732ae5cSJean-Christophe PLAGNIOL-VILLARD bool "AT91 pinctrl driver" 546732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on OF 556732ae5cSJean-Christophe PLAGNIOL-VILLARD depends on ARCH_AT91 566732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINMUX 576732ae5cSJean-Christophe PLAGNIOL-VILLARD select PINCONF 586732ae5cSJean-Christophe PLAGNIOL-VILLARD help 596732ae5cSJean-Christophe PLAGNIOL-VILLARD Say Y here to enable the at91 pinctrl driver 606732ae5cSJean-Christophe PLAGNIOL-VILLARD 61e1b2dc70SSimon Arlottconfig PINCTRL_BCM2835 62e1b2dc70SSimon Arlott bool 63e1b2dc70SSimon Arlott select PINMUX 64e1b2dc70SSimon Arlott select PINCONF 65e1b2dc70SSimon Arlott 66ae75ff81SDong Aishengconfig PINCTRL_IMX 67ae75ff81SDong Aisheng bool 68ae75ff81SDong Aisheng select PINMUX 69ae75ff81SDong Aisheng select PINCONF 70ae75ff81SDong Aisheng 71b9aa8f13SUwe Kleine-Königconfig PINCTRL_IMX35 72b9aa8f13SUwe Kleine-König bool "IMX35 pinctrl driver" 73b9aa8f13SUwe Kleine-König depends on OF 74b9aa8f13SUwe Kleine-König depends on SOC_IMX35 75b9aa8f13SUwe Kleine-König select PINCTRL_IMX 76b9aa8f13SUwe Kleine-König help 77b9aa8f13SUwe Kleine-König Say Y here to enable the imx35 pinctrl driver 78b9aa8f13SUwe Kleine-König 794f6a16bfSDong Aishengconfig PINCTRL_IMX51 804f6a16bfSDong Aisheng bool "IMX51 pinctrl driver" 814f6a16bfSDong Aisheng depends on OF 824f6a16bfSDong Aisheng depends on SOC_IMX51 834f6a16bfSDong Aisheng select PINCTRL_IMX 844f6a16bfSDong Aisheng help 854f6a16bfSDong Aisheng Say Y here to enable the imx51 pinctrl driver 864f6a16bfSDong Aisheng 8793fbd3c0SDong Aishengconfig PINCTRL_IMX53 8893fbd3c0SDong Aisheng bool "IMX53 pinctrl driver" 8993fbd3c0SDong Aisheng depends on OF 9093fbd3c0SDong Aisheng depends on SOC_IMX53 9193fbd3c0SDong Aisheng select PINCTRL_IMX 9293fbd3c0SDong Aisheng help 9393fbd3c0SDong Aisheng Say Y here to enable the imx53 pinctrl driver 9493fbd3c0SDong Aisheng 95d8fe3572SDong Aishengconfig PINCTRL_IMX6Q 963f551d6aSShawn Guo bool "IMX6Q/DL pinctrl driver" 97d8fe3572SDong Aisheng depends on OF 98d8fe3572SDong Aisheng depends on SOC_IMX6Q 99d8fe3572SDong Aisheng select PINCTRL_IMX 100d8fe3572SDong Aisheng help 1013f551d6aSShawn Guo Say Y here to enable the imx6q/dl pinctrl driver 102d8fe3572SDong Aisheng 103*21e59123SShawn Guoconfig PINCTRL_IMX6SL 104*21e59123SShawn Guo bool "IMX6SL pinctrl driver" 105*21e59123SShawn Guo depends on OF 106*21e59123SShawn Guo depends on SOC_IMX6SL 107*21e59123SShawn Guo select PINCTRL_IMX 108*21e59123SShawn Guo help 109*21e59123SShawn Guo Say Y here to enable the imx6sl pinctrl driver 110*21e59123SShawn Guo 1113f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ 1123f8c50c9SJohn Crispin bool 1133f8c50c9SJohn Crispin depends on LANTIQ 1143f8c50c9SJohn Crispin select PINMUX 1153f8c50c9SJohn Crispin select PINCONF 1163f8c50c9SJohn Crispin 117f4e66983SHaojian Zhuangconfig PINCTRL_PXA3xx 118f4e66983SHaojian Zhuang bool 119f4e66983SHaojian Zhuang select PINMUX 120f4e66983SHaojian Zhuang 121e316cb2bSJohn Crispinconfig PINCTRL_FALCON 122e316cb2bSJohn Crispin bool 123e316cb2bSJohn Crispin depends on SOC_FALCON 124e316cb2bSJohn Crispin depends on PINCTRL_LANTIQ 125e316cb2bSJohn Crispin 126f4e66983SHaojian Zhuangconfig PINCTRL_MMP2 127f4e66983SHaojian Zhuang bool "MMP2 pin controller driver" 128f4e66983SHaojian Zhuang depends on ARCH_MMP 129f4e66983SHaojian Zhuang select PINCTRL_PXA3xx 130f4e66983SHaojian Zhuang 13117723111SShawn Guoconfig PINCTRL_MXS 13217723111SShawn Guo bool 13390db8a14SAxel Lin select PINMUX 13490db8a14SAxel Lin select PINCONF 13517723111SShawn Guo 13617723111SShawn Guoconfig PINCTRL_IMX23 13717723111SShawn Guo bool 13817723111SShawn Guo select PINCTRL_MXS 13917723111SShawn Guo 14017723111SShawn Guoconfig PINCTRL_IMX28 14117723111SShawn Guo bool 14217723111SShawn Guo select PINCTRL_MXS 14317723111SShawn Guo 144e98ea774SLinus Walleijconfig PINCTRL_NOMADIK 145e98ea774SLinus Walleij bool "Nomadik pin controller driver" 1460fa7be40SArnd Bergmann depends on ARCH_U8500 || ARCH_NOMADIK 147dbfe8ca2SLinus Walleij select PINMUX 148d41af627SLinus Walleij select PINCONF 149e98ea774SLinus Walleij 150f79c5ed9SLinus Walleijconfig PINCTRL_STN8815 151f79c5ed9SLinus Walleij bool "STN8815 pin controller driver" 152f79c5ed9SLinus Walleij depends on PINCTRL_NOMADIK && ARCH_NOMADIK 153f79c5ed9SLinus Walleij 154e98ea774SLinus Walleijconfig PINCTRL_DB8500 155e98ea774SLinus Walleij bool "DB8500 pin controller driver" 156e98ea774SLinus Walleij depends on PINCTRL_NOMADIK && ARCH_U8500 157e98ea774SLinus Walleij 15845a1b531SPatrice Chotardconfig PINCTRL_DB8540 15945a1b531SPatrice Chotard bool "DB8540 pin controller driver" 16045a1b531SPatrice Chotard depends on PINCTRL_NOMADIK && ARCH_U8500 16145a1b531SPatrice Chotard 162f4e66983SHaojian Zhuangconfig PINCTRL_PXA168 163f4e66983SHaojian Zhuang bool "PXA168 pin controller driver" 164f4e66983SHaojian Zhuang depends on ARCH_MMP 165f4e66983SHaojian Zhuang select PINCTRL_PXA3xx 166f4e66983SHaojian Zhuang 167f4e66983SHaojian Zhuangconfig PINCTRL_PXA910 168f4e66983SHaojian Zhuang bool "PXA910 pin controller driver" 169f4e66983SHaojian Zhuang depends on ARCH_MMP 170f4e66983SHaojian Zhuang select PINCTRL_PXA3xx 171f4e66983SHaojian Zhuang 1728b8b091bSTony Lindgrenconfig PINCTRL_SINGLE 1738b8b091bSTony Lindgren tristate "One-register-per-pin type device tree based pinctrl driver" 1748b8b091bSTony Lindgren depends on OF 1758b8b091bSTony Lindgren select PINMUX 1768b8b091bSTony Lindgren select PINCONF 1778b8b091bSTony Lindgren help 1788b8b091bSTony Lindgren This selects the device tree based generic pinctrl driver. 1798b8b091bSTony Lindgren 1803bece55aSLinus Walleijconfig PINCTRL_SIRF 181d3e26f2fSBarry Song bool "CSR SiRFprimaII/SiRFmarco pin controller driver" 182d3e26f2fSBarry Song depends on ARCH_SIRF 183393daa81SRongjun Ying select PINMUX 184393daa81SRongjun Ying 1850e37f88dSMaxime Ripardconfig PINCTRL_SUNXI 1860e37f88dSMaxime Ripard bool 1870e37f88dSMaxime Ripard select PINMUX 1880e37f88dSMaxime Ripard select GENERIC_PINCONF 1890e37f88dSMaxime Ripard 190971dac71SStephen Warrenconfig PINCTRL_TEGRA 191971dac71SStephen Warren bool 192507ccdbfSAxel Lin select PINMUX 193507ccdbfSAxel Lin select PINCONF 194971dac71SStephen Warren 195971dac71SStephen Warrenconfig PINCTRL_TEGRA20 196971dac71SStephen Warren bool 197971dac71SStephen Warren select PINCTRL_TEGRA 198971dac71SStephen Warren 199971dac71SStephen Warrenconfig PINCTRL_TEGRA30 200971dac71SStephen Warren bool 201971dac71SStephen Warren select PINCTRL_TEGRA 202971dac71SStephen Warren 203b6ae7a26SPritesh Raithathaconfig PINCTRL_TEGRA114 204b6ae7a26SPritesh Raithatha bool 205b6ae7a26SPritesh Raithatha select PINCTRL_TEGRA 206b6ae7a26SPritesh Raithatha 2073bece55aSLinus Walleijconfig PINCTRL_U300 2083bece55aSLinus Walleij bool "U300 pin controller driver" 20998da3529SLinus Walleij depends on ARCH_U300 21098da3529SLinus Walleij select PINMUX 211dc0b1aa3SLinus Walleij select GENERIC_PINCONF 21245f034efSLinus Walleij 213ca402d37SLinus Walleijconfig PINCTRL_COH901 214ca402d37SLinus Walleij bool "ST-Ericsson U300 COH 901 335/571 GPIO" 2153c94d1bbSLinus Walleij depends on GPIOLIB && ARCH_U300 && PINCTRL_U300 216ca402d37SLinus Walleij help 217ca402d37SLinus Walleij Say yes here to support GPIO interface on ST-Ericsson U300. 218ca402d37SLinus Walleij The names of the two IP block variants supported are 219ca402d37SLinus Walleij COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 220ca402d37SLinus Walleij ports of 8 GPIO pins each. 221ca402d37SLinus Walleij 22230574f0dSThomas Abrahamconfig PINCTRL_SAMSUNG 223cbc351abSArnd Bergmann bool 22430574f0dSThomas Abraham select PINMUX 22530574f0dSThomas Abraham select PINCONF 22630574f0dSThomas Abraham 227a1ed2670SKukjin Kimconfig PINCTRL_EXYNOS 228a1ed2670SKukjin Kim bool "Pinctrl driver data for Samsung EXYNOS SoCs" 229924da314SAxel Lin depends on OF && GPIOLIB 23043b169dbSThomas Abraham select PINCTRL_SAMSUNG 23143b169dbSThomas Abraham 232f0b9a7e5SThomas Abrahamconfig PINCTRL_EXYNOS5440 233f0b9a7e5SThomas Abraham bool "Samsung EXYNOS5440 SoC pinctrl driver" 234f0b9a7e5SThomas Abraham select PINMUX 235f0b9a7e5SThomas Abraham select PINCONF 236f0b9a7e5SThomas Abraham 23706763c74SThomas Petazzonisource "drivers/pinctrl/mvebu/Kconfig" 2386e54d8d2SLaurent Pinchartsource "drivers/pinctrl/sh-pfc/Kconfig" 239deda8287SViresh Kumarsource "drivers/pinctrl/spear/Kconfig" 240deda8287SViresh Kumar 2413f8c50c9SJohn Crispinconfig PINCTRL_XWAY 2423f8c50c9SJohn Crispin bool 2433f8c50c9SJohn Crispin depends on SOC_TYPE_XWAY 2443f8c50c9SJohn Crispin depends on PINCTRL_LANTIQ 2453f8c50c9SJohn Crispin 24645f034efSLinus Walleijendmenu 24798da3529SLinus Walleij 2482744e8afSLinus Walleijendif 249