at master 21 kB view raw
1# SPDX-License-Identifier: GPL-2.0-only 2# 3# PINCTRL infrastructure and drivers 4# 5 6menuconfig PINCTRL 7 bool "Pin controllers" 8 9if PINCTRL 10 11config GENERIC_PINCTRL_GROUPS 12 bool 13 14config PINMUX 15 bool "Support pin multiplexing controllers" if COMPILE_TEST 16 17config GENERIC_PINMUX_FUNCTIONS 18 bool 19 select PINMUX 20 21config PINCONF 22 bool "Support pin configuration controllers" if COMPILE_TEST 23 24config GENERIC_PINCONF 25 bool 26 select PINCONF 27 28config DEBUG_PINCTRL 29 bool "Debug PINCTRL calls" 30 depends on DEBUG_KERNEL 31 help 32 Say Y here to add some extra checks and diagnostics to PINCTRL calls. 33 34config PINCTRL_AMD 35 bool "AMD GPIO pin control" 36 depends on HAS_IOMEM 37 depends on ACPI || COMPILE_TEST 38 select GPIOLIB 39 select GPIOLIB_IRQCHIP 40 select PINMUX 41 select PINCONF 42 select GENERIC_PINCONF 43 help 44 The driver for memory mapped GPIO functionality on AMD platforms 45 (x86 or arm). Most of the pins are usually muxed to some other 46 functionality by firmware, so only a small amount is available 47 for GPIO use. 48 49 Requires ACPI/FDT device enumeration code to set up a platform 50 device. 51 52config PINCTRL_AMDISP 53 tristate "AMDISP GPIO pin control" 54 depends on DRM_AMD_ISP || COMPILE_TEST 55 depends on HAS_IOMEM 56 select GPIOLIB 57 select PINCONF 58 select GENERIC_PINCONF 59 help 60 The driver for memory mapped GPIO functionality on AMD platforms 61 with ISP support. All the pins are output controlled only 62 63 Requires AMDGPU to MFD add device for enumeration to set up as 64 platform device. 65 66config PINCTRL_APPLE_GPIO 67 tristate "Apple SoC GPIO pin controller driver" 68 depends on ARCH_APPLE 69 select PINMUX 70 select GPIOLIB 71 select GPIOLIB_IRQCHIP 72 select GENERIC_PINCTRL_GROUPS 73 select GENERIC_PINMUX_FUNCTIONS 74 select OF_GPIO 75 help 76 This is the driver for the GPIO controller found on Apple ARM SoCs, 77 including M1. 78 79 This driver can also be built as a module. If so, the module 80 will be called pinctrl-apple-gpio. 81 82config PINCTRL_ARTPEC6 83 bool "Axis ARTPEC-6 pin controller driver" 84 depends on MACH_ARTPEC6 85 select PINMUX 86 select GENERIC_PINCONF 87 help 88 This is the driver for the Axis ARTPEC-6 pin controller. This driver 89 supports pin function multiplexing as well as pin bias and drive 90 strength configuration. Device tree integration instructions can be 91 found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt 92 93config PINCTRL_AS3722 94 tristate "Pinctrl and GPIO driver for ams AS3722 PMIC" 95 depends on MFD_AS3722 && GPIOLIB 96 select PINMUX 97 select GENERIC_PINCONF 98 help 99 AS3722 device supports the configuration of GPIO pins for different 100 functionality. This driver supports the pinmux, push-pull and 101 open drain configuration for the GPIO pins of AS3722 devices. It also 102 supports the GPIO functionality through gpiolib. 103 104config PINCTRL_AT91 105 bool "AT91 pinctrl driver" 106 depends on (OF && ARCH_AT91) || COMPILE_TEST 107 select PINMUX 108 select PINCONF 109 select GPIOLIB 110 select GPIOLIB_IRQCHIP 111 help 112 Say Y here to enable the at91 pinctrl driver 113 114config PINCTRL_AT91PIO4 115 bool "AT91 PIO4 pinctrl driver" 116 depends on OF 117 depends on HAS_IOMEM 118 depends on ARCH_AT91 || COMPILE_TEST 119 select PINMUX 120 select GENERIC_PINCONF 121 select GPIOLIB 122 select GPIOLIB_IRQCHIP 123 select OF_GPIO 124 help 125 Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4 126 controller available on sama5d2 SoC. 127 128config PINCTRL_AXP209 129 tristate "X-Powers AXP209 PMIC pinctrl and GPIO Support" 130 depends on MFD_AXP20X 131 depends on OF 132 select PINMUX 133 select GENERIC_PINCONF 134 select GPIOLIB 135 help 136 AXP PMICs provides multiple GPIOs that can be muxed for different 137 functions. This driver bundles a pinctrl driver to select the function 138 muxing and a GPIO driver to handle the GPIO when the GPIO function is 139 selected. 140 Say Y to enable pinctrl and GPIO support for the AXP209 PMIC. 141 142config PINCTRL_AW9523 143 tristate "Awinic AW9523/AW9523B I2C GPIO expander pinctrl driver" 144 depends on OF && I2C 145 select PINMUX 146 select PINCONF 147 select GENERIC_PINCONF 148 select GPIOLIB 149 select GPIOLIB_IRQCHIP 150 select REGMAP 151 select REGMAP_I2C 152 help 153 The Awinic AW9523/AW9523B is a multi-function I2C GPIO 154 expander with PWM functionality. This driver bundles a 155 pinctrl driver to select the function muxing and a GPIO 156 driver to handle GPIO, when the GPIO function is selected. 157 158 Say yes to enable pinctrl and GPIO support for the AW9523(B). 159 160config PINCTRL_BM1880 161 bool "Bitmain BM1880 Pinctrl driver" 162 depends on OF && (ARCH_BITMAIN || COMPILE_TEST) 163 default ARCH_BITMAIN 164 select PINMUX 165 help 166 Pinctrl driver for Bitmain BM1880 SoC. 167 168config PINCTRL_CY8C95X0 169 tristate "Cypress CY8C95X0 I2C pinctrl and GPIO driver" 170 depends on I2C 171 select GPIOLIB 172 select GPIOLIB_IRQCHIP 173 select PINMUX 174 select PINCONF 175 select GENERIC_PINCONF 176 select REGMAP_I2C 177 help 178 Support for 20/40/60 pin Cypress Cy8C95x0 pinctrl/gpio I2C expander. 179 This driver can also be built as a module. If so, the module will be 180 called pinctrl-cy8c95x0. 181 182config PINCTRL_DA850_PUPD 183 tristate "TI DA850/OMAP-L138/AM18XX pull-up and pull-down groups" 184 depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) 185 select PINCONF 186 select GENERIC_PINCONF 187 help 188 Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control 189 pull-up and pull-down pin groups. 190 191config PINCTRL_DA9062 192 tristate "Dialog Semiconductor DA9062 PMIC pinctrl and GPIO Support" 193 depends on MFD_DA9062 194 select GPIOLIB 195 help 196 The Dialog DA9062 PMIC provides multiple GPIOs that can be muxed for 197 different functions. This driver bundles a pinctrl driver to select the 198 function muxing and a GPIO driver to handle the GPIO when the GPIO 199 function is selected. 200 201 Say Y to enable pinctrl and GPIO support for the DA9062 PMIC. 202 203config PINCTRL_DIGICOLOR 204 bool 205 depends on ARCH_DIGICOLOR || COMPILE_TEST 206 select PINMUX 207 select GENERIC_PINCONF 208 209config PINCTRL_EIC7700 210 tristate "EIC7700 PINCTRL driver" 211 depends on ARCH_ESWIN || COMPILE_TEST 212 select PINMUX 213 select GENERIC_PINCONF 214 select REGULATOR 215 select REGULATOR_FIXED_VOLTAGE 216 help 217 This driver support for the pin controller in ESWIN's EIC7700 SoC, 218 which supports pin multiplexing, pin configuration,and rgmii voltage 219 control. 220 Say Y here to enable the eic7700 pinctrl driver 221 222config PINCTRL_EP93XX 223 bool 224 depends on ARCH_EP93XX || COMPILE_TEST 225 select PINMUX 226 select GENERIC_PINCONF 227 select MFD_SYSCON 228 229config PINCTRL_EQUILIBRIUM 230 tristate "Generic pinctrl and GPIO driver for Intel Lightning Mountain SoC" 231 depends on OF && HAS_IOMEM 232 depends on X86 || COMPILE_TEST 233 select PINMUX 234 select PINCONF 235 select GPIOLIB 236 select GPIO_GENERIC 237 select GPIOLIB_IRQCHIP 238 select GENERIC_PINCONF 239 select GENERIC_PINCTRL_GROUPS 240 select GENERIC_PINMUX_FUNCTIONS 241 help 242 Equilibrium driver is a pinctrl and GPIO driver for Intel Lightning 243 Mountain network processor SoC that supports both the GPIO and pin 244 control frameworks. It provides interfaces to setup pin muxing, assign 245 desired pin functions, configure GPIO attributes for LGM SoC pins. 246 Pin muxing and pin config settings are retrieved from device tree. 247 248config PINCTRL_EYEQ5 249 bool "Mobileye EyeQ5 pinctrl driver" 250 depends on OF 251 depends on MACH_EYEQ5 || COMPILE_TEST 252 select PINMUX 253 select GENERIC_PINCONF 254 select AUXILIARY_BUS 255 default MACH_EYEQ5 256 help 257 Pin controller driver for the Mobileye EyeQ5 platform. It does both 258 pin config & pin muxing. It does not handle GPIO. 259 260 Pin muxing supports two functions for each pin: first is GPIO, second 261 is pin-dependent. Pin config is about bias & drive strength. 262 263config PINCTRL_GEMINI 264 bool 265 depends on ARCH_GEMINI 266 default ARCH_GEMINI 267 select PINMUX 268 select GENERIC_PINCONF 269 select MFD_SYSCON 270 271config PINCTRL_INGENIC 272 bool "Pinctrl driver for the Ingenic JZ47xx SoCs" 273 default MACH_INGENIC 274 depends on OF 275 depends on MIPS || COMPILE_TEST 276 select GENERIC_PINCONF 277 select GENERIC_PINCTRL_GROUPS 278 select GENERIC_PINMUX_FUNCTIONS 279 select GPIOLIB 280 select GPIOLIB_IRQCHIP 281 select REGMAP_MMIO 282 283config PINCTRL_K210 284 bool "Pinctrl driver for the Canaan Kendryte K210 SoC" 285 depends on RISCV && SOC_CANAAN_K210 || COMPILE_TEST 286 depends on OF 287 select GENERIC_PINMUX_FUNCTIONS 288 select GENERIC_PINCONF 289 select GPIOLIB 290 select OF_GPIO 291 select REGMAP_MMIO 292 default SOC_CANAAN_K210 293 help 294 Add support for the Canaan Kendryte K210 RISC-V SOC Field 295 Programmable IO Array (FPIOA) controller. 296 297config PINCTRL_K230 298 bool "Pinctrl driver for the Canaan Kendryte K230 SoC" 299 depends on OF 300 depends on ARCH_CANAAN || COMPILE_TEST 301 select GENERIC_PINCTRL_GROUPS 302 select GENERIC_PINMUX_FUNCTIONS 303 select GENERIC_PINCONF 304 select REGMAP_MMIO 305 help 306 Add support for the Canaan Kendryte K230 RISC-V SOC pin controller. 307 308config PINCTRL_KEEMBAY 309 tristate "Pinctrl driver for Intel Keem Bay SoC" 310 depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST) 311 depends on HAS_IOMEM 312 select PINMUX 313 select PINCONF 314 select GENERIC_PINCONF 315 select GENERIC_PINCTRL_GROUPS 316 select GENERIC_PINMUX_FUNCTIONS 317 select GPIOLIB 318 select GPIOLIB_IRQCHIP 319 select GPIO_GENERIC 320 help 321 This selects pin control driver for the Intel Keem Bay SoC. 322 It provides pin config functions such as pull-up, pull-down, 323 interrupt, drive strength, sec lock, Schmitt trigger, slew 324 rate control and direction control. This module will be 325 called as pinctrl-keembay. 326 327config PINCTRL_LANTIQ 328 bool 329 depends on LANTIQ 330 select PINMUX 331 select PINCONF 332 333config PINCTRL_FALCON 334 bool 335 depends on SOC_FALCON 336 depends on PINCTRL_LANTIQ 337 338config PINCTRL_LOONGSON2 339 tristate "Pinctrl driver for the Loongson-2 SoC" 340 depends on OF && (LOONGARCH || COMPILE_TEST) 341 select PINMUX 342 select GENERIC_PINCONF 343 help 344 This selects pin control driver for the Loongson-2 SoC. It 345 provides pin config functions multiplexing. GPIO pin pull-up, 346 pull-down functions are not supported. Say yes to enable 347 pinctrl for Loongson-2 SoC. 348 349config PINCTRL_XWAY 350 bool 351 depends on SOC_TYPE_XWAY 352 depends on PINCTRL_LANTIQ 353 354config PINCTRL_LPC18XX 355 bool "NXP LPC18XX/43XX SCU pinctrl driver" 356 depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 357 default ARCH_LPC18XX 358 select PINMUX 359 select GENERIC_PINCONF 360 help 361 Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU). 362 363config PINCTRL_MAX7360 364 tristate "MAX7360 Pincontrol support" 365 depends on MFD_MAX7360 366 select PINMUX 367 select GENERIC_PINCONF 368 help 369 Say Y here to enable pin control support for Maxim MAX7360 keypad 370 controller. 371 This keypad controller has 8 GPIO pins that may work as GPIO, or PWM, 372 or rotary encoder alternate modes. 373 374config PINCTRL_MAX77620 375 tristate "MAX77620/MAX20024 Pincontrol support" 376 depends on MFD_MAX77620 && OF 377 select PINMUX 378 select GENERIC_PINCONF 379 help 380 Say Y here to enable Pin control support for Maxim MAX77620 PMIC. 381 This PMIC has 8 GPIO pins that work as GPIO as well as special 382 function in alternate mode. This driver also configure push-pull, 383 open drain, FPS slots etc. 384 385config PINCTRL_MCP23S08_I2C 386 tristate 387 select REGMAP_I2C 388 389config PINCTRL_MCP23S08_SPI 390 tristate 391 select REGMAP_SPI 392 393config PINCTRL_MCP23S08 394 tristate "Microchip MCP23xxx I/O expander" 395 depends on SPI_MASTER || I2C 396 select GPIOLIB 397 select GPIOLIB_IRQCHIP 398 select GENERIC_PINCONF 399 select PINCTRL_MCP23S08_I2C if I2C 400 select PINCTRL_MCP23S08_SPI if SPI_MASTER 401 help 402 SPI/I2C driver for Microchip MCP23S08 / MCP23S17 / MCP23S18 / 403 MCP23008 / MCP23017 / MCP23018 I/O expanders. 404 This provides a GPIO interface supporting inputs and outputs and a 405 corresponding interrupt-controller. 406 407config PINCTRL_MICROCHIP_SGPIO 408 tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO" 409 depends on OF 410 depends on HAS_IOMEM 411 select GPIOLIB 412 select GPIOLIB_IRQCHIP 413 select GENERIC_PINCONF 414 select GENERIC_PINCTRL_GROUPS 415 select GENERIC_PINMUX_FUNCTIONS 416 select OF_GPIO 417 help 418 Support for the serial GPIO interface used on Microsemi and 419 Microchip SoCs. By using a serial interface, the SIO 420 controller significantly extends the number of available 421 GPIOs with a minimum number of additional pins on the 422 device. The primary purpose of the SIO controller is to 423 connect control signals from SFP modules and to act as an 424 LED controller. 425 426 If compiled as a module, the module name will be 427 pinctrl-microchip-sgpio. 428 429config PINCTRL_OCELOT 430 tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" 431 depends on OF 432 depends on HAS_IOMEM 433 select GPIOLIB 434 select GPIOLIB_IRQCHIP 435 select GENERIC_PINCONF 436 select GENERIC_PINCTRL_GROUPS 437 select GENERIC_PINMUX_FUNCTIONS 438 select OF_GPIO 439 select REGMAP_MMIO 440 help 441 Support for the internal GPIO interfaces on Microsemi Ocelot and 442 Jaguar2 SoCs. 443 444 If conpiled as a module, the module name will be pinctrl-ocelot. 445 446config PINCTRL_PALMAS 447 tristate "Pinctrl driver for the PALMAS Series MFD devices" 448 depends on OF && MFD_PALMAS 449 select PINMUX 450 select GENERIC_PINCONF 451 help 452 Palmas device supports the configuration of pins for different 453 functionality. This driver supports the pinmux, push-pull and 454 open drain configuration for the Palmas series devices like 455 TPS65913, TPS80036 etc. 456 457config PINCTRL_PEF2256 458 tristate "Lantiq PEF2256 (FALC56) pin controller driver" 459 depends on OF && FRAMER_PEF2256 460 select PINMUX 461 select PINCONF 462 select GENERIC_PINCONF 463 help 464 This option enables the pin controller support for the Lantiq PEF2256 465 framer, also known as FALC56. 466 467 If unsure, say N. 468 469 To compile this driver as a module, choose M here: the 470 module will be called pinctrl-pef2256. 471 472config PINCTRL_PIC32 473 bool "Microchip PIC32 pin controller driver" 474 depends on OF 475 depends on MACH_PIC32 476 select PINMUX 477 select GENERIC_PINCONF 478 select GPIOLIB_IRQCHIP 479 select OF_GPIO 480 help 481 This is the pin controller and gpio driver for Microchip PIC32 482 microcontrollers. This option is selected automatically when specific 483 machine and arch are selected to build. 484 485config PINCTRL_PIC32MZDA 486 def_bool y if PIC32MZDA 487 select PINCTRL_PIC32 488 489config PINCTRL_PIC64GX 490 bool "pic64gx gpio2 pinctrl driver" 491 depends on ARCH_MICROCHIP || COMPILE_TEST 492 depends on OF 493 select GENERIC_PINCONF 494 select REGMAP_MMIO 495 default y 496 help 497 This selects the pinctrl driver for gpio2 on pic64gx. 498 499config PINCTRL_PISTACHIO 500 bool "IMG Pistachio SoC pinctrl driver" 501 depends on OF && (MIPS || COMPILE_TEST) 502 depends on GPIOLIB 503 select PINMUX 504 select GENERIC_PINCONF 505 select GPIOLIB_IRQCHIP 506 select OF_GPIO 507 help 508 This support pinctrl and GPIO driver for IMG Pistachio SoC. 509 510config PINCTRL_POLARFIRE_SOC 511 bool "Polarfire SoC pinctrl driver" 512 depends on ARCH_MICROCHIP || COMPILE_TEST 513 depends on OF 514 select GENERIC_PINCONF 515 default y 516 help 517 This selects the pinctrl driver for Microchip Polarfire SoC. 518 519config PINCTRL_RK805 520 tristate "Pinctrl and GPIO driver for RK805 PMIC" 521 depends on MFD_RK8XX 522 select GPIOLIB 523 select PINMUX 524 select GENERIC_PINCONF 525 help 526 This selects the pinctrl driver for RK805. 527 528config PINCTRL_ROCKCHIP 529 tristate "Rockchip gpio and pinctrl driver" 530 depends on ARCH_ROCKCHIP || COMPILE_TEST 531 depends on OF 532 select GPIOLIB 533 select PINMUX 534 select GENERIC_PINCONF 535 select GENERIC_IRQ_CHIP 536 select MFD_SYSCON 537 select OF_GPIO 538 default ARCH_ROCKCHIP 539 help 540 This support pinctrl and GPIO driver for Rockchip SoCs. 541 542config PINCTRL_SCMI 543 tristate "Pinctrl driver using SCMI protocol interface" 544 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST 545 select PINMUX 546 select GENERIC_PINCONF 547 help 548 This driver provides support for pinctrl which is controlled 549 by firmware that implements the SCMI interface. 550 It uses SCMI Message Protocol to interact with the 551 firmware providing all the pinctrl controls. 552 553config PINCTRL_SINGLE 554 tristate "One-register-per-pin type device tree based pinctrl driver" 555 depends on OF 556 depends on HAS_IOMEM 557 select GENERIC_PINCTRL_GROUPS 558 select GENERIC_PINMUX_FUNCTIONS 559 select GENERIC_PINCONF 560 help 561 This selects the device tree based generic pinctrl driver. 562 563config PINCTRL_ST 564 bool 565 depends on OF 566 select PINMUX 567 select PINCONF 568 select GPIOLIB_IRQCHIP 569 570config PINCTRL_STMFX 571 tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" 572 depends on I2C 573 depends on OF_GPIO 574 depends on HAS_IOMEM 575 select GENERIC_PINCONF 576 select GPIOLIB_IRQCHIP 577 select MFD_STMFX 578 help 579 Driver for STMicroelectronics Multi-Function eXpander (STMFX) 580 GPIO expander. 581 This provides a GPIO interface supporting inputs and outputs, 582 and configuring push-pull, open-drain, and can also be used as 583 interrupt-controller. 584 585config PINCTRL_SX150X 586 tristate "Semtech SX150x I2C GPIO expander pinctrl driver" 587 depends on I2C=y 588 select PINMUX 589 select PINCONF 590 select GENERIC_PINCONF 591 select GPIOLIB 592 select GPIOLIB_IRQCHIP 593 select REGMAP 594 help 595 Say Y here to provide support for Semtech SX150x-series I2C 596 GPIO expanders as pinctrl module. 597 Compatible models include: 598 - 8 bits: sx1508q, sx1502q 599 - 16 bits: sx1509q, sx1506q 600 601config PINCTRL_TB10X 602 bool "Pinctrl for TB10X" if COMPILE_TEST 603 depends on OF && ARC_PLAT_TB10X || COMPILE_TEST 604 select GPIOLIB 605 606config PINCTRL_TPS6594 607 tristate "Pinctrl and GPIO driver for TI TPS6594 PMIC" 608 depends on OF && MFD_TPS6594 609 default MFD_TPS6594 610 select PINMUX 611 select GPIOLIB 612 select REGMAP 613 select GPIO_REGMAP 614 select GENERIC_PINCONF 615 help 616 Say Y to select the pinmuxing and GPIOs driver for the TPS6594 617 PMICs chip family. 618 619 This driver can also be built as a module 620 called tps6594-pinctrl. 621 622config PINCTRL_TH1520 623 tristate "Pinctrl driver for the T-Head TH1520 SoC" 624 depends on ARCH_THEAD || COMPILE_TEST 625 depends on OF 626 select GENERIC_PINMUX_FUNCTIONS 627 select GENERIC_PINCONF 628 select PINMUX 629 help 630 This is the driver for the pin controller blocks on the 631 T-Head TH1520 SoC. 632 633 This driver is needed for RISC-V development boards like 634 the BeagleV Ahead and the LicheePi 4A. 635 636config PINCTRL_UPBOARD 637 tristate "AAeon UP board FPGA pin controller" 638 depends on MFD_UPBOARD_FPGA 639 select PINMUX 640 select GENERIC_PINCTRL_GROUPS 641 select GENERIC_PINMUX_FUNCTIONS 642 select GPIOLIB 643 select GPIO_AGGREGATOR 644 help 645 Pin controller for the FPGA GPIO lines on UP boards. Due to the 646 hardware layout, the driver controls the FPGA pins in tandem with 647 their corresponding Intel SoC GPIOs. 648 649 Currently supported: 650 - UP Squared 651 652 To compile this driver as a module, choose M here: the module 653 will be called pinctrl-upboard. 654 655config PINCTRL_ZYNQ 656 bool "Pinctrl driver for Xilinx Zynq" 657 depends on ARCH_ZYNQ || COMPILE_TEST 658 depends on OF 659 select PINMUX 660 select GENERIC_PINCONF 661 help 662 This selects the pinctrl driver for Xilinx Zynq. 663 664config PINCTRL_ZYNQMP 665 tristate "Pinctrl driver for Xilinx ZynqMP" 666 depends on ZYNQMP_FIRMWARE 667 select PINMUX 668 select GENERIC_PINCONF 669 default ZYNQMP_FIRMWARE 670 help 671 This selects the pinctrl driver for Xilinx ZynqMP platform. 672 This driver will query the pin information from the firmware 673 and allow configuring the pins. 674 Configuration can include the mux function to select on those 675 pin(s)/group(s), and various pin configuration parameters 676 such as pull-up, slew rate, etc. 677 This driver can also be built as a module. If so, the module 678 will be called pinctrl-zynqmp. 679 680config PINCTRL_MLXBF3 681 tristate "NVIDIA BlueField-3 SoC Pinctrl driver" 682 depends on (MELLANOX_PLATFORM && ARM64) || COMPILE_TEST 683 select PINMUX 684 select GPIOLIB 685 select GPIOLIB_IRQCHIP 686 help 687 Say Y to select the pinctrl driver for BlueField-3 SoCs. 688 This pin controller allows selecting the mux function for 689 each pin. This driver can also be built as a module called 690 pinctrl-mlxbf3. 691 692config PINCTRL_RP1 693 tristate "Pinctrl driver for RP1" 694 depends on MISC_RP1 695 default MISC_RP1 696 select PINMUX 697 select PINCONF 698 select GENERIC_PINCONF 699 help 700 Enable the gpio and pinctrl/mux driver for RaspberryPi RP1 701 multi function device. 702 703source "drivers/pinctrl/actions/Kconfig" 704source "drivers/pinctrl/aspeed/Kconfig" 705source "drivers/pinctrl/bcm/Kconfig" 706source "drivers/pinctrl/berlin/Kconfig" 707source "drivers/pinctrl/cirrus/Kconfig" 708source "drivers/pinctrl/cix/Kconfig" 709source "drivers/pinctrl/freescale/Kconfig" 710source "drivers/pinctrl/intel/Kconfig" 711source "drivers/pinctrl/mediatek/Kconfig" 712source "drivers/pinctrl/meson/Kconfig" 713source "drivers/pinctrl/mvebu/Kconfig" 714source "drivers/pinctrl/nomadik/Kconfig" 715source "drivers/pinctrl/nuvoton/Kconfig" 716source "drivers/pinctrl/nxp/Kconfig" 717source "drivers/pinctrl/pxa/Kconfig" 718source "drivers/pinctrl/qcom/Kconfig" 719source "drivers/pinctrl/realtek/Kconfig" 720source "drivers/pinctrl/renesas/Kconfig" 721source "drivers/pinctrl/samsung/Kconfig" 722source "drivers/pinctrl/sophgo/Kconfig" 723source "drivers/pinctrl/spacemit/Kconfig" 724source "drivers/pinctrl/spear/Kconfig" 725source "drivers/pinctrl/sprd/Kconfig" 726source "drivers/pinctrl/starfive/Kconfig" 727source "drivers/pinctrl/stm32/Kconfig" 728source "drivers/pinctrl/sunplus/Kconfig" 729source "drivers/pinctrl/sunxi/Kconfig" 730source "drivers/pinctrl/tegra/Kconfig" 731source "drivers/pinctrl/ti/Kconfig" 732source "drivers/pinctrl/uniphier/Kconfig" 733source "drivers/pinctrl/visconti/Kconfig" 734source "drivers/pinctrl/vt8500/Kconfig" 735 736endif