1# 2# PINCTRL infrastructure and drivers 3# 4 5config PINCTRL 6 bool 7 8if PINCTRL 9 10menu "Pin controllers" 11 depends on PINCTRL 12 13config PINMUX 14 bool "Support pin multiplexing controllers" 15 16config PINCONF 17 bool "Support pin configuration controllers" 18 19config GENERIC_PINCONF 20 bool 21 select PINCONF 22 23config DEBUG_PINCTRL 24 bool "Debug PINCTRL calls" 25 depends on DEBUG_KERNEL 26 help 27 Say Y here to add some extra checks and diagnostics to PINCTRL calls. 28 29config PINCTRL_ABX500 30 bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions" 31 depends on AB8500_CORE 32 select GENERIC_PINCONF 33 help 34 Select this to enable the ABx500 family IC GPIO driver 35 36config PINCTRL_AB8500 37 bool "AB8500 pin controller driver" 38 depends on PINCTRL_ABX500 && ARCH_U8500 39 40config PINCTRL_AB8540 41 bool "AB8540 pin controller driver" 42 depends on PINCTRL_ABX500 && ARCH_U8500 43 44config PINCTRL_AB9540 45 bool "AB9540 pin controller driver" 46 depends on PINCTRL_ABX500 && ARCH_U8500 47 48config PINCTRL_AB8505 49 bool "AB8505 pin controller driver" 50 depends on PINCTRL_ABX500 && ARCH_U8500 51 52config PINCTRL_ADI2 53 bool "ADI pin controller driver" 54 depends on BLACKFIN 55 select PINMUX 56 select IRQ_DOMAIN 57 help 58 This is the pin controller and gpio driver for ADI BF54x, BF60x and 59 future processors. This option is selected automatically when specific 60 machine and arch are selected to build. 61 62config PINCTRL_AS3722 63 bool "Pinctrl and GPIO driver for ams AS3722 PMIC" 64 depends on MFD_AS3722 && GPIOLIB 65 select PINMUX 66 select GENERIC_PINCONF 67 help 68 AS3722 device supports the configuration of GPIO pins for different 69 functionality. This driver supports the pinmux, push-pull and 70 open drain configuration for the GPIO pins of AS3722 devices. It also 71 supports the GPIO functionality through gpiolib. 72 73config PINCTRL_BF54x 74 def_bool y if BF54x 75 select PINCTRL_ADI2 76 77config PINCTRL_BF60x 78 def_bool y if BF60x 79 select PINCTRL_ADI2 80 81config PINCTRL_AT91 82 bool "AT91 pinctrl driver" 83 depends on OF 84 depends on ARCH_AT91 85 select PINMUX 86 select PINCONF 87 help 88 Say Y here to enable the at91 pinctrl driver 89 90config PINCTRL_BAYTRAIL 91 bool "Intel Baytrail GPIO pin control" 92 depends on GPIOLIB && ACPI && X86 93 select IRQ_DOMAIN 94 help 95 driver for memory mapped GPIO functionality on Intel Baytrail 96 platforms. Supports 3 banks with 102, 28 and 44 gpios. 97 Most pins are usually muxed to some other functionality by firmware, 98 so only a small amount is available for gpio use. 99 100 Requires ACPI device enumeration code to set up a platform device. 101 102config PINCTRL_BCM2835 103 bool 104 select PINMUX 105 select PINCONF 106 107config PINCTRL_CAPRI 108 bool "Broadcom Capri pinctrl driver" 109 depends on OF 110 select PINMUX 111 select PINCONF 112 select GENERIC_PINCONF 113 select REGMAP_MMIO 114 help 115 Say Y here to support Broadcom Capri pinctrl driver, which is used for 116 the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351, 117 BCM28145, and BCM28155 SoCs. This driver requires the pinctrl 118 framework. GPIO is provided by a separate GPIO driver. 119 120config PINCTRL_IMX 121 bool 122 select PINMUX 123 select PINCONF 124 125config PINCTRL_IMX1_CORE 126 bool 127 select PINMUX 128 select PINCONF 129 130config PINCTRL_IMX27 131 bool "IMX27 pinctrl driver" 132 depends on SOC_IMX27 133 select PINCTRL_IMX1_CORE 134 help 135 Say Y here to enable the imx27 pinctrl driver 136 137 138config PINCTRL_IMX25 139 bool "IMX25 pinctrl driver" 140 depends on OF 141 depends on SOC_IMX25 142 select PINCTRL_IMX 143 help 144 Say Y here to enable the imx25 pinctrl driver 145 146config PINCTRL_IMX35 147 bool "IMX35 pinctrl driver" 148 depends on SOC_IMX35 149 select PINCTRL_IMX 150 help 151 Say Y here to enable the imx35 pinctrl driver 152 153config PINCTRL_IMX50 154 bool "IMX50 pinctrl driver" 155 depends on SOC_IMX50 156 select PINCTRL_IMX 157 help 158 Say Y here to enable the imx50 pinctrl driver 159 160config PINCTRL_IMX51 161 bool "IMX51 pinctrl driver" 162 depends on SOC_IMX51 163 select PINCTRL_IMX 164 help 165 Say Y here to enable the imx51 pinctrl driver 166 167config PINCTRL_IMX53 168 bool "IMX53 pinctrl driver" 169 depends on SOC_IMX53 170 select PINCTRL_IMX 171 help 172 Say Y here to enable the imx53 pinctrl driver 173 174config PINCTRL_IMX6Q 175 bool "IMX6Q/DL pinctrl driver" 176 depends on SOC_IMX6Q 177 select PINCTRL_IMX 178 help 179 Say Y here to enable the imx6q/dl pinctrl driver 180 181config PINCTRL_IMX6SL 182 bool "IMX6SL pinctrl driver" 183 depends on SOC_IMX6SL 184 select PINCTRL_IMX 185 help 186 Say Y here to enable the imx6sl pinctrl driver 187 188config PINCTRL_VF610 189 bool "Freescale Vybrid VF610 pinctrl driver" 190 depends on SOC_VF610 191 select PINCTRL_IMX 192 help 193 Say Y here to enable the Freescale Vybrid VF610 pinctrl driver 194 195config PINCTRL_LANTIQ 196 bool 197 depends on LANTIQ 198 select PINMUX 199 select PINCONF 200 201config PINCTRL_FALCON 202 bool 203 depends on SOC_FALCON 204 depends on PINCTRL_LANTIQ 205 206config PINCTRL_MXS 207 bool 208 select PINMUX 209 select PINCONF 210 211config PINCTRL_IMX23 212 bool 213 select PINCTRL_MXS 214 215config PINCTRL_IMX28 216 bool 217 select PINCTRL_MXS 218 219config PINCTRL_MSM 220 tristate 221 select PINMUX 222 select PINCONF 223 select GENERIC_PINCONF 224 225config PINCTRL_MSM8X74 226 tristate "Qualcomm 8x74 pin controller driver" 227 depends on GPIOLIB && OF && OF_IRQ 228 select PINCTRL_MSM 229 help 230 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 231 Qualcomm TLMM block found in the Qualcomm 8974 platform. 232 233config PINCTRL_NOMADIK 234 bool "Nomadik pin controller driver" 235 depends on ARCH_U8500 || ARCH_NOMADIK 236 select PINMUX 237 select PINCONF 238 239config PINCTRL_STN8815 240 bool "STN8815 pin controller driver" 241 depends on PINCTRL_NOMADIK && ARCH_NOMADIK 242 243config PINCTRL_DB8500 244 bool "DB8500 pin controller driver" 245 depends on PINCTRL_NOMADIK && ARCH_U8500 246 247config PINCTRL_DB8540 248 bool "DB8540 pin controller driver" 249 depends on PINCTRL_NOMADIK && ARCH_U8500 250 251config PINCTRL_ROCKCHIP 252 bool 253 select PINMUX 254 select GENERIC_PINCONF 255 select GENERIC_IRQ_CHIP 256 257config PINCTRL_SINGLE 258 tristate "One-register-per-pin type device tree based pinctrl driver" 259 depends on OF 260 select PINMUX 261 select PINCONF 262 select GENERIC_PINCONF 263 help 264 This selects the device tree based generic pinctrl driver. 265 266config PINCTRL_SIRF 267 bool "CSR SiRFprimaII/SiRFmarco pin controller driver" 268 depends on ARCH_SIRF 269 select PINMUX 270 271config PINCTRL_SUNXI 272 bool 273 select PINMUX 274 select GENERIC_PINCONF 275 276config PINCTRL_ST 277 bool 278 depends on OF 279 select PINMUX 280 select PINCONF 281 282config PINCTRL_TEGRA 283 bool 284 select PINMUX 285 select PINCONF 286 287config PINCTRL_TEGRA20 288 bool 289 select PINCTRL_TEGRA 290 291config PINCTRL_TEGRA30 292 bool 293 select PINCTRL_TEGRA 294 295config PINCTRL_TEGRA114 296 bool 297 select PINCTRL_TEGRA 298 299config PINCTRL_TEGRA124 300 bool 301 select PINCTRL_TEGRA 302 303config PINCTRL_TZ1090 304 bool "Toumaz Xenif TZ1090 pin control driver" 305 depends on SOC_TZ1090 306 select PINMUX 307 select GENERIC_PINCONF 308 309config PINCTRL_TZ1090_PDC 310 bool "Toumaz Xenif TZ1090 PDC pin control driver" 311 depends on SOC_TZ1090 312 select PINMUX 313 select PINCONF 314 315config PINCTRL_U300 316 bool "U300 pin controller driver" 317 depends on ARCH_U300 318 select PINMUX 319 select GENERIC_PINCONF 320 321config PINCTRL_COH901 322 bool "ST-Ericsson U300 COH 901 335/571 GPIO" 323 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300 324 help 325 Say yes here to support GPIO interface on ST-Ericsson U300. 326 The names of the two IP block variants supported are 327 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 328 ports of 8 GPIO pins each. 329 330config PINCTRL_SAMSUNG 331 bool 332 select PINMUX 333 select PINCONF 334 335config PINCTRL_EXYNOS 336 bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440" 337 depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210) 338 select PINCTRL_SAMSUNG 339 340config PINCTRL_EXYNOS5440 341 bool "Samsung EXYNOS5440 SoC pinctrl driver" 342 depends on SOC_EXYNOS5440 343 select PINMUX 344 select PINCONF 345 346config PINCTRL_PALMAS 347 bool "Pinctrl driver for the PALMAS Series MFD devices" 348 depends on OF && MFD_PALMAS 349 select PINMUX 350 select GENERIC_PINCONF 351 help 352 Palmas device supports the configuration of pins for different 353 functionality. This driver supports the pinmux, push-pull and 354 open drain configuration for the Palmas series devices like 355 TPS65913, TPS80036 etc. 356 357config PINCTRL_S3C24XX 358 bool "Samsung S3C24XX SoC pinctrl driver" 359 depends on ARCH_S3C24XX 360 select PINCTRL_SAMSUNG 361 362config PINCTRL_S3C64XX 363 bool "Samsung S3C64XX SoC pinctrl driver" 364 depends on ARCH_S3C64XX 365 select PINCTRL_SAMSUNG 366 367source "drivers/pinctrl/mvebu/Kconfig" 368source "drivers/pinctrl/sh-pfc/Kconfig" 369source "drivers/pinctrl/spear/Kconfig" 370source "drivers/pinctrl/vt8500/Kconfig" 371 372config PINCTRL_XWAY 373 bool 374 depends on SOC_TYPE_XWAY 375 depends on PINCTRL_LANTIQ 376 377config PINCTRL_TB10X 378 bool 379 depends on ARC_PLAT_TB10X 380 381endmenu 382 383endif 384