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 select GPIOLIB 88 select OF_GPIO 89 select GPIOLIB_IRQCHIP 90 help 91 Say Y here to enable the at91 pinctrl driver 92 93config PINCTRL_BAYTRAIL 94 bool "Intel Baytrail GPIO pin control" 95 depends on GPIOLIB && ACPI && X86 96 select IRQ_DOMAIN 97 help 98 driver for memory mapped GPIO functionality on Intel Baytrail 99 platforms. Supports 3 banks with 102, 28 and 44 gpios. 100 Most pins are usually muxed to some other functionality by firmware, 101 so only a small amount is available for gpio use. 102 103 Requires ACPI device enumeration code to set up a platform device. 104 105config PINCTRL_BCM2835 106 bool 107 select PINMUX 108 select PINCONF 109 110config PINCTRL_BCM281XX 111 bool "Broadcom BCM281xx pinctrl driver" 112 depends on OF 113 select PINMUX 114 select PINCONF 115 select GENERIC_PINCONF 116 select REGMAP_MMIO 117 help 118 Say Y here to support Broadcom BCM281xx pinctrl driver, which is used 119 for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351, 120 BCM28145, and BCM28155 SoCs. This driver requires the pinctrl 121 framework. GPIO is provided by a separate GPIO driver. 122 123config PINCTRL_IMX 124 bool 125 select PINMUX 126 select PINCONF 127 128config PINCTRL_IMX1_CORE 129 bool 130 select PINMUX 131 select PINCONF 132 133config PINCTRL_IMX27 134 bool "IMX27 pinctrl driver" 135 depends on SOC_IMX27 136 select PINCTRL_IMX1_CORE 137 help 138 Say Y here to enable the imx27 pinctrl driver 139 140 141config PINCTRL_IMX25 142 bool "IMX25 pinctrl driver" 143 depends on OF 144 depends on SOC_IMX25 145 select PINCTRL_IMX 146 help 147 Say Y here to enable the imx25 pinctrl driver 148 149config PINCTRL_IMX35 150 bool "IMX35 pinctrl driver" 151 depends on SOC_IMX35 152 select PINCTRL_IMX 153 help 154 Say Y here to enable the imx35 pinctrl driver 155 156config PINCTRL_IMX50 157 bool "IMX50 pinctrl driver" 158 depends on SOC_IMX50 159 select PINCTRL_IMX 160 help 161 Say Y here to enable the imx50 pinctrl driver 162 163config PINCTRL_IMX51 164 bool "IMX51 pinctrl driver" 165 depends on SOC_IMX51 166 select PINCTRL_IMX 167 help 168 Say Y here to enable the imx51 pinctrl driver 169 170config PINCTRL_IMX53 171 bool "IMX53 pinctrl driver" 172 depends on SOC_IMX53 173 select PINCTRL_IMX 174 help 175 Say Y here to enable the imx53 pinctrl driver 176 177config PINCTRL_IMX6Q 178 bool "IMX6Q/DL pinctrl driver" 179 depends on SOC_IMX6Q 180 select PINCTRL_IMX 181 help 182 Say Y here to enable the imx6q/dl pinctrl driver 183 184config PINCTRL_IMX6SL 185 bool "IMX6SL pinctrl driver" 186 depends on SOC_IMX6SL 187 select PINCTRL_IMX 188 help 189 Say Y here to enable the imx6sl pinctrl driver 190 191config PINCTRL_IMX6SX 192 bool "IMX6SX pinctrl driver" 193 depends on SOC_IMX6SX 194 select PINCTRL_IMX 195 help 196 Say Y here to enable the imx6sx pinctrl driver 197 198config PINCTRL_VF610 199 bool "Freescale Vybrid VF610 pinctrl driver" 200 depends on SOC_VF610 201 select PINCTRL_IMX 202 help 203 Say Y here to enable the Freescale Vybrid VF610 pinctrl driver 204 205config PINCTRL_LANTIQ 206 bool 207 depends on LANTIQ 208 select PINMUX 209 select PINCONF 210 211config PINCTRL_FALCON 212 bool 213 depends on SOC_FALCON 214 depends on PINCTRL_LANTIQ 215 216config PINCTRL_MXS 217 bool 218 select PINMUX 219 select PINCONF 220 221config PINCTRL_IMX23 222 bool 223 select PINCTRL_MXS 224 225config PINCTRL_IMX28 226 bool 227 select PINCTRL_MXS 228 229config PINCTRL_MSM 230 bool 231 select PINMUX 232 select PINCONF 233 select GENERIC_PINCONF 234 select GPIOLIB_IRQCHIP 235 236config PINCTRL_APQ8064 237 tristate "Qualcomm APQ8064 pin controller driver" 238 depends on GPIOLIB && OF 239 select PINCTRL_MSM 240 help 241 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 242 Qualcomm TLMM block found in the Qualcomm APQ8064 platform. 243 244config PINCTRL_IPQ8064 245 tristate "Qualcomm IPQ8064 pin controller driver" 246 depends on GPIOLIB && OF 247 select PINCTRL_MSM 248 help 249 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 250 Qualcomm TLMM block found in the Qualcomm IPQ8064 platform. 251 252config PINCTRL_MSM8X74 253 tristate "Qualcomm 8x74 pin controller driver" 254 depends on GPIOLIB && OF && (ARCH_QCOM || COMPILE_TEST) 255 select PINCTRL_MSM 256 help 257 This is the pinctrl, pinmux, pinconf and gpiolib driver for the 258 Qualcomm TLMM block found in the Qualcomm 8974 platform. 259 260config PINCTRL_NOMADIK 261 bool "Nomadik pin controller driver" 262 depends on ARCH_U8500 || ARCH_NOMADIK 263 select PINMUX 264 select PINCONF 265 select GPIOLIB 266 select OF_GPIO 267 select GPIOLIB_IRQCHIP 268 269config PINCTRL_STN8815 270 bool "STN8815 pin controller driver" 271 depends on PINCTRL_NOMADIK && ARCH_NOMADIK 272 273config PINCTRL_DB8500 274 bool "DB8500 pin controller driver" 275 depends on PINCTRL_NOMADIK && ARCH_U8500 276 277config PINCTRL_DB8540 278 bool "DB8540 pin controller driver" 279 depends on PINCTRL_NOMADIK && ARCH_U8500 280 281config PINCTRL_ROCKCHIP 282 bool 283 select PINMUX 284 select GENERIC_PINCONF 285 select GENERIC_IRQ_CHIP 286 select MFD_SYSCON 287 288config PINCTRL_SINGLE 289 tristate "One-register-per-pin type device tree based pinctrl driver" 290 depends on OF 291 select PINMUX 292 select PINCONF 293 select GENERIC_PINCONF 294 help 295 This selects the device tree based generic pinctrl driver. 296 297config PINCTRL_SIRF 298 bool "CSR SiRFprimaII/SiRFmarco pin controller driver" 299 depends on ARCH_SIRF 300 select PINMUX 301 select GPIOLIB_IRQCHIP 302 303config PINCTRL_ST 304 bool 305 depends on OF 306 select PINMUX 307 select PINCONF 308 select GPIOLIB_IRQCHIP 309 310config PINCTRL_TEGRA 311 bool 312 select PINMUX 313 select PINCONF 314 315config PINCTRL_TEGRA20 316 bool 317 select PINCTRL_TEGRA 318 319config PINCTRL_TEGRA30 320 bool 321 select PINCTRL_TEGRA 322 323config PINCTRL_TEGRA114 324 bool 325 select PINCTRL_TEGRA 326 327config PINCTRL_TEGRA124 328 bool 329 select PINCTRL_TEGRA 330 331config PINCTRL_TZ1090 332 bool "Toumaz Xenif TZ1090 pin control driver" 333 depends on SOC_TZ1090 334 select PINMUX 335 select GENERIC_PINCONF 336 337config PINCTRL_TZ1090_PDC 338 bool "Toumaz Xenif TZ1090 PDC pin control driver" 339 depends on SOC_TZ1090 340 select PINMUX 341 select PINCONF 342 343config PINCTRL_U300 344 bool "U300 pin controller driver" 345 depends on ARCH_U300 346 select PINMUX 347 select GENERIC_PINCONF 348 349config PINCTRL_COH901 350 bool "ST-Ericsson U300 COH 901 335/571 GPIO" 351 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300 352 select GPIOLIB_IRQCHIP 353 help 354 Say yes here to support GPIO interface on ST-Ericsson U300. 355 The names of the two IP block variants supported are 356 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 357 ports of 8 GPIO pins each. 358 359config PINCTRL_SAMSUNG 360 bool 361 select PINMUX 362 select PINCONF 363 364config PINCTRL_EXYNOS 365 bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440" 366 depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210) 367 select PINCTRL_SAMSUNG 368 369config PINCTRL_EXYNOS5440 370 bool "Samsung EXYNOS5440 SoC pinctrl driver" 371 depends on SOC_EXYNOS5440 372 select PINMUX 373 select PINCONF 374 375config PINCTRL_PALMAS 376 bool "Pinctrl driver for the PALMAS Series MFD devices" 377 depends on OF && MFD_PALMAS 378 select PINMUX 379 select GENERIC_PINCONF 380 help 381 Palmas device supports the configuration of pins for different 382 functionality. This driver supports the pinmux, push-pull and 383 open drain configuration for the Palmas series devices like 384 TPS65913, TPS80036 etc. 385 386config PINCTRL_S3C24XX 387 bool "Samsung S3C24XX SoC pinctrl driver" 388 depends on ARCH_S3C24XX 389 select PINCTRL_SAMSUNG 390 391config PINCTRL_S3C64XX 392 bool "Samsung S3C64XX SoC pinctrl driver" 393 depends on ARCH_S3C64XX 394 select PINCTRL_SAMSUNG 395 396source "drivers/pinctrl/berlin/Kconfig" 397source "drivers/pinctrl/mvebu/Kconfig" 398source "drivers/pinctrl/sh-pfc/Kconfig" 399source "drivers/pinctrl/spear/Kconfig" 400source "drivers/pinctrl/sunxi/Kconfig" 401source "drivers/pinctrl/vt8500/Kconfig" 402 403config PINCTRL_XWAY 404 bool 405 depends on SOC_TYPE_XWAY 406 depends on PINCTRL_LANTIQ 407 408config PINCTRL_TB10X 409 bool 410 depends on ARC_PLAT_TB10X 411 412endmenu 413 414endif 415