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_BCM281XX 108 bool "Broadcom BCM281xx 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 BCM281xx pinctrl driver, which is used 116 for 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 bool 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 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 select GPIOLIB 239 select OF_GPIO 240 select GPIOLIB_IRQCHIP 241 242config PINCTRL_STN8815 243 bool "STN8815 pin controller driver" 244 depends on PINCTRL_NOMADIK && ARCH_NOMADIK 245 246config PINCTRL_DB8500 247 bool "DB8500 pin controller driver" 248 depends on PINCTRL_NOMADIK && ARCH_U8500 249 250config PINCTRL_DB8540 251 bool "DB8540 pin controller driver" 252 depends on PINCTRL_NOMADIK && ARCH_U8500 253 254config PINCTRL_ROCKCHIP 255 bool 256 select PINMUX 257 select GENERIC_PINCONF 258 select GENERIC_IRQ_CHIP 259 260config PINCTRL_SINGLE 261 tristate "One-register-per-pin type device tree based pinctrl driver" 262 depends on OF 263 select PINMUX 264 select PINCONF 265 select GENERIC_PINCONF 266 help 267 This selects the device tree based generic pinctrl driver. 268 269config PINCTRL_SIRF 270 bool "CSR SiRFprimaII/SiRFmarco pin controller driver" 271 depends on ARCH_SIRF 272 select PINMUX 273 274config PINCTRL_SUNXI 275 bool 276 select PINMUX 277 select GENERIC_PINCONF 278 279config PINCTRL_ST 280 bool 281 depends on OF 282 select PINMUX 283 select PINCONF 284 285config PINCTRL_TEGRA 286 bool 287 select PINMUX 288 select PINCONF 289 290config PINCTRL_TEGRA20 291 bool 292 select PINCTRL_TEGRA 293 294config PINCTRL_TEGRA30 295 bool 296 select PINCTRL_TEGRA 297 298config PINCTRL_TEGRA114 299 bool 300 select PINCTRL_TEGRA 301 302config PINCTRL_TEGRA124 303 bool 304 select PINCTRL_TEGRA 305 306config PINCTRL_TZ1090 307 bool "Toumaz Xenif TZ1090 pin control driver" 308 depends on SOC_TZ1090 309 select PINMUX 310 select GENERIC_PINCONF 311 312config PINCTRL_TZ1090_PDC 313 bool "Toumaz Xenif TZ1090 PDC pin control driver" 314 depends on SOC_TZ1090 315 select PINMUX 316 select PINCONF 317 318config PINCTRL_U300 319 bool "U300 pin controller driver" 320 depends on ARCH_U300 321 select PINMUX 322 select GENERIC_PINCONF 323 324config PINCTRL_COH901 325 bool "ST-Ericsson U300 COH 901 335/571 GPIO" 326 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300 327 select GPIOLIB_IRQCHIP 328 help 329 Say yes here to support GPIO interface on ST-Ericsson U300. 330 The names of the two IP block variants supported are 331 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7 332 ports of 8 GPIO pins each. 333 334config PINCTRL_SAMSUNG 335 bool 336 select PINMUX 337 select PINCONF 338 339config PINCTRL_EXYNOS 340 bool "Pinctrl driver data for Samsung EXYNOS SoCs other than 5440" 341 depends on OF && GPIOLIB && (ARCH_EXYNOS || ARCH_S5PV210) 342 select PINCTRL_SAMSUNG 343 344config PINCTRL_EXYNOS5440 345 bool "Samsung EXYNOS5440 SoC pinctrl driver" 346 depends on SOC_EXYNOS5440 347 select PINMUX 348 select PINCONF 349 350config PINCTRL_PALMAS 351 bool "Pinctrl driver for the PALMAS Series MFD devices" 352 depends on OF && MFD_PALMAS 353 select PINMUX 354 select GENERIC_PINCONF 355 help 356 Palmas device supports the configuration of pins for different 357 functionality. This driver supports the pinmux, push-pull and 358 open drain configuration for the Palmas series devices like 359 TPS65913, TPS80036 etc. 360 361config PINCTRL_S3C24XX 362 bool "Samsung S3C24XX SoC pinctrl driver" 363 depends on ARCH_S3C24XX 364 select PINCTRL_SAMSUNG 365 366config PINCTRL_S3C64XX 367 bool "Samsung S3C64XX SoC pinctrl driver" 368 depends on ARCH_S3C64XX 369 select PINCTRL_SAMSUNG 370 371source "drivers/pinctrl/mvebu/Kconfig" 372source "drivers/pinctrl/sh-pfc/Kconfig" 373source "drivers/pinctrl/spear/Kconfig" 374source "drivers/pinctrl/vt8500/Kconfig" 375 376config PINCTRL_XWAY 377 bool 378 depends on SOC_TYPE_XWAY 379 depends on PINCTRL_LANTIQ 380 381config PINCTRL_TB10X 382 bool 383 depends on ARC_PLAT_TB10X 384 385endmenu 386 387endif 388