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