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 depends on OF 279 select PINMUX 280 select GENERIC_PINCTRL 281 help 282 Generic pinctrl driver by MULTIPLEXER framework to control on 283 board pin selection. 284 285config PINCTRL_INGENIC 286 bool "Pinctrl driver for the Ingenic JZ47xx SoCs" 287 default MACH_INGENIC 288 depends on OF 289 depends on MIPS || COMPILE_TEST 290 select GENERIC_PINCONF 291 select GENERIC_PINCTRL_GROUPS 292 select GENERIC_PINMUX_FUNCTIONS 293 select GPIOLIB 294 select GPIOLIB_IRQCHIP 295 select REGMAP_MMIO 296 297config PINCTRL_K210 298 bool "Pinctrl driver for the Canaan Kendryte K210 SoC" 299 depends on RISCV && SOC_CANAAN_K210 || COMPILE_TEST 300 depends on OF 301 select GENERIC_PINMUX_FUNCTIONS 302 select GENERIC_PINCONF 303 select GPIOLIB 304 select REGMAP_MMIO 305 default SOC_CANAAN_K210 306 help 307 Add support for the Canaan Kendryte K210 RISC-V SOC Field 308 Programmable IO Array (FPIOA) controller. 309 310config PINCTRL_K230 311 bool "Pinctrl driver for the Canaan Kendryte K230 SoC" 312 depends on OF 313 depends on ARCH_CANAAN || COMPILE_TEST 314 select GENERIC_PINCTRL_GROUPS 315 select GENERIC_PINMUX_FUNCTIONS 316 select GENERIC_PINCONF 317 select REGMAP_MMIO 318 help 319 Add support for the Canaan Kendryte K230 RISC-V SOC pin controller. 320 321config PINCTRL_KEEMBAY 322 tristate "Pinctrl driver for Intel Keem Bay SoC" 323 depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST) 324 depends on HAS_IOMEM 325 select PINMUX 326 select PINCONF 327 select GENERIC_PINCONF 328 select GENERIC_PINCTRL_GROUPS 329 select GENERIC_PINMUX_FUNCTIONS 330 select GPIOLIB 331 select GPIOLIB_IRQCHIP 332 select GPIO_GENERIC 333 help 334 This selects pin control driver for the Intel Keem Bay SoC. 335 It provides pin config functions such as pull-up, pull-down, 336 interrupt, drive strength, sec lock, Schmitt trigger, slew 337 rate control and direction control. This module will be 338 called as pinctrl-keembay. 339 340config PINCTRL_LANTIQ 341 bool 342 depends on LANTIQ 343 select PINMUX 344 select PINCONF 345 346config PINCTRL_FALCON 347 bool 348 depends on SOC_FALCON 349 depends on PINCTRL_LANTIQ 350 351config PINCTRL_LOONGSON2 352 tristate "Pinctrl driver for the Loongson-2 SoC" 353 depends on OF && (LOONGARCH || COMPILE_TEST) 354 select PINMUX 355 select GENERIC_PINCONF 356 help 357 This selects pin control driver for the Loongson-2 SoC. It 358 provides pin config functions multiplexing. GPIO pin pull-up, 359 pull-down functions are not supported. Say yes to enable 360 pinctrl for Loongson-2 SoC. 361 362config PINCTRL_XWAY 363 bool 364 depends on SOC_TYPE_XWAY 365 depends on PINCTRL_LANTIQ 366 367config PINCTRL_LPC18XX 368 bool "NXP LPC18XX/43XX SCU pinctrl driver" 369 depends on OF && (ARCH_LPC18XX || COMPILE_TEST) 370 default ARCH_LPC18XX 371 select PINMUX 372 select GENERIC_PINCONF 373 help 374 Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU). 375 376config PINCTRL_MAX7360 377 tristate "MAX7360 Pincontrol support" 378 depends on MFD_MAX7360 379 select PINMUX 380 select GENERIC_PINCONF 381 help 382 Say Y here to enable pin control support for Maxim MAX7360 keypad 383 controller. 384 This keypad controller has 8 GPIO pins that may work as GPIO, or PWM, 385 or rotary encoder alternate modes. 386 387config PINCTRL_MAX77620 388 tristate "MAX77620/MAX20024 Pincontrol support" 389 depends on MFD_MAX77620 && OF 390 select PINMUX 391 select GENERIC_PINCONF 392 help 393 Say Y here to enable Pin control support for Maxim MAX77620 PMIC. 394 This PMIC has 8 GPIO pins that work as GPIO as well as special 395 function in alternate mode. This driver also configure push-pull, 396 open drain, FPS slots etc. 397 398config PINCTRL_MCP23S08_I2C 399 tristate 400 select REGMAP_I2C 401 402config PINCTRL_MCP23S08_SPI 403 tristate 404 select REGMAP_SPI 405 406config PINCTRL_MCP23S08 407 tristate "Microchip MCP23xxx I/O expander" 408 depends on SPI_MASTER || I2C 409 select GPIOLIB 410 select GPIOLIB_IRQCHIP 411 select GENERIC_PINCONF 412 select PINCTRL_MCP23S08_I2C if I2C 413 select PINCTRL_MCP23S08_SPI if SPI_MASTER 414 help 415 SPI/I2C driver for Microchip MCP23S08 / MCP23S17 / MCP23S18 / 416 MCP23008 / MCP23017 / MCP23018 I/O expanders. 417 This provides a GPIO interface supporting inputs and outputs and a 418 corresponding interrupt-controller. 419 420config PINCTRL_MICROCHIP_SGPIO 421 tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO" 422 depends on OF 423 depends on HAS_IOMEM 424 select GPIOLIB 425 select GPIOLIB_IRQCHIP 426 select GENERIC_PINCONF 427 select GENERIC_PINCTRL_GROUPS 428 select GENERIC_PINMUX_FUNCTIONS 429 help 430 Support for the serial GPIO interface used on Microsemi and 431 Microchip SoCs. By using a serial interface, the SIO 432 controller significantly extends the number of available 433 GPIOs with a minimum number of additional pins on the 434 device. The primary purpose of the SIO controller is to 435 connect control signals from SFP modules and to act as an 436 LED controller. 437 438 If compiled as a module, the module name will be 439 pinctrl-microchip-sgpio. 440 441config PINCTRL_OCELOT 442 tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" 443 depends on OF 444 depends on HAS_IOMEM 445 select GPIOLIB 446 select GPIOLIB_IRQCHIP 447 select GENERIC_PINCONF 448 select GENERIC_PINCTRL_GROUPS 449 select GENERIC_PINMUX_FUNCTIONS 450 select REGMAP_MMIO 451 help 452 Support for the internal GPIO interfaces on Microsemi Ocelot and 453 Jaguar2 SoCs. 454 455 If conpiled as a module, the module name will be pinctrl-ocelot. 456 457config PINCTRL_PALMAS 458 tristate "Pinctrl driver for the PALMAS Series MFD devices" 459 depends on OF && MFD_PALMAS 460 select PINMUX 461 select GENERIC_PINCONF 462 help 463 Palmas device supports the configuration of pins for different 464 functionality. This driver supports the pinmux, push-pull and 465 open drain configuration for the Palmas series devices like 466 TPS65913, TPS80036 etc. 467 468config PINCTRL_PEF2256 469 tristate "Lantiq PEF2256 (FALC56) pin controller driver" 470 depends on OF && FRAMER_PEF2256 471 select PINMUX 472 select PINCONF 473 select GENERIC_PINCONF 474 help 475 This option enables the pin controller support for the Lantiq PEF2256 476 framer, also known as FALC56. 477 478 If unsure, say N. 479 480 To compile this driver as a module, choose M here: the 481 module will be called pinctrl-pef2256. 482 483config PINCTRL_PIC32 484 bool "Microchip PIC32 pin controller driver" 485 depends on OF 486 depends on MACH_PIC32 || COMPILE_TEST 487 select PINMUX 488 select GENERIC_PINCONF 489 select GPIOLIB_IRQCHIP 490 help 491 This is the pin controller and gpio driver for Microchip PIC32 492 microcontrollers. This option is selected automatically when specific 493 machine and arch are selected to build. 494 495config PINCTRL_PIC32MZDA 496 def_bool y if PIC32MZDA 497 select PINCTRL_PIC32 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 help 507 This support pinctrl and GPIO driver for IMG Pistachio SoC. 508 509config PINCTRL_RK805 510 tristate "Pinctrl and GPIO driver for RK805 PMIC" 511 depends on MFD_RK8XX 512 select GPIOLIB 513 select PINMUX 514 select GENERIC_PINCONF 515 help 516 This selects the pinctrl driver for RK805. 517 518config PINCTRL_ROCKCHIP 519 tristate "Rockchip gpio and pinctrl driver" 520 depends on ARCH_ROCKCHIP || COMPILE_TEST 521 depends on OF 522 select GPIOLIB 523 select PINMUX 524 select GENERIC_PINCONF 525 select GENERIC_IRQ_CHIP 526 select MFD_SYSCON 527 default ARCH_ROCKCHIP 528 help 529 This support pinctrl and GPIO driver for Rockchip SoCs. 530 531config PINCTRL_SCMI 532 tristate "Pinctrl driver using SCMI protocol interface" 533 depends on ARM_SCMI_PROTOCOL || COMPILE_TEST 534 select PINMUX 535 select GENERIC_PINCONF 536 help 537 This driver provides support for pinctrl which is controlled 538 by firmware that implements the SCMI interface. 539 It uses SCMI Message Protocol to interact with the 540 firmware providing all the pinctrl controls. 541 542config PINCTRL_SINGLE 543 tristate "One-register-per-pin type device tree based pinctrl driver" 544 depends on OF 545 depends on HAS_IOMEM 546 select GENERIC_PINCTRL_GROUPS 547 select GENERIC_PINMUX_FUNCTIONS 548 select GENERIC_PINCONF 549 help 550 This selects the device tree based generic pinctrl driver. 551 552config PINCTRL_ST 553 bool 554 depends on OF 555 select PINMUX 556 select PINCONF 557 select GPIOLIB_IRQCHIP 558 559config PINCTRL_STMFX 560 tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" 561 depends on OF 562 depends on I2C 563 depends on HAS_IOMEM 564 select GENERIC_PINCONF 565 select GPIOLIB_IRQCHIP 566 select MFD_STMFX 567 help 568 Driver for STMicroelectronics Multi-Function eXpander (STMFX) 569 GPIO expander. 570 This provides a GPIO interface supporting inputs and outputs, 571 and configuring push-pull, open-drain, and can also be used as 572 interrupt-controller. 573 574config PINCTRL_SX150X 575 tristate "Semtech SX150x I2C GPIO expander pinctrl driver" 576 depends on I2C=y 577 select PINMUX 578 select PINCONF 579 select GENERIC_PINCONF 580 select GPIOLIB 581 select GPIOLIB_IRQCHIP 582 select REGMAP 583 help 584 Say Y here to provide support for Semtech SX150x-series I2C 585 GPIO expanders as pinctrl module. 586 Compatible models include: 587 - 8 bits: sx1508q, sx1502q 588 - 16 bits: sx1509q, sx1506q 589 590config PINCTRL_TB10X 591 bool "Pinctrl for TB10X" if COMPILE_TEST 592 depends on OF && ARC_PLAT_TB10X || COMPILE_TEST 593 select GPIOLIB 594 595config PINCTRL_TPS6594 596 tristate "Pinctrl and GPIO driver for TI TPS6594 PMIC" 597 depends on OF && MFD_TPS6594 598 default MFD_TPS6594 599 select PINMUX 600 select GPIOLIB 601 select REGMAP 602 select GPIO_REGMAP 603 select GENERIC_PINCONF 604 help 605 Say Y to select the pinmuxing and GPIOs driver for the TPS6594 606 PMICs chip family. 607 608 This driver can also be built as a module 609 called tps6594-pinctrl. 610 611config PINCTRL_TH1520 612 tristate "Pinctrl driver for the T-Head TH1520 SoC" 613 depends on ARCH_THEAD || COMPILE_TEST 614 depends on OF 615 select GENERIC_PINMUX_FUNCTIONS 616 select GENERIC_PINCONF 617 select PINMUX 618 help 619 This is the driver for the pin controller blocks on the 620 T-Head TH1520 SoC. 621 622 This driver is needed for RISC-V development boards like 623 the BeagleV Ahead and the LicheePi 4A. 624 625config PINCTRL_UPBOARD 626 tristate "AAeon UP board FPGA pin controller" 627 depends on MFD_UPBOARD_FPGA 628 select PINMUX 629 select GENERIC_PINCTRL_GROUPS 630 select GENERIC_PINMUX_FUNCTIONS 631 select GPIOLIB 632 select GPIO_AGGREGATOR 633 help 634 Pin controller for the FPGA GPIO lines on UP boards. Due to the 635 hardware layout, the driver controls the FPGA pins in tandem with 636 their corresponding Intel SoC GPIOs. 637 638 Currently supported: 639 - UP Squared 640 641 To compile this driver as a module, choose M here: the module 642 will be called pinctrl-upboard. 643 644config PINCTRL_ZYNQ 645 bool "Pinctrl driver for Xilinx Zynq" 646 depends on ARCH_ZYNQ || COMPILE_TEST 647 depends on OF 648 select PINMUX 649 select GENERIC_PINCONF 650 help 651 This selects the pinctrl driver for Xilinx Zynq. 652 653config PINCTRL_ZYNQMP 654 tristate "Pinctrl driver for Xilinx ZynqMP" 655 depends on ZYNQMP_FIRMWARE 656 select PINMUX 657 select GENERIC_PINCONF 658 default ZYNQMP_FIRMWARE 659 help 660 This selects the pinctrl driver for Xilinx ZynqMP platform. 661 This driver will query the pin information from the firmware 662 and allow configuring the pins. 663 Configuration can include the mux function to select on those 664 pin(s)/group(s), and various pin configuration parameters 665 such as pull-up, slew rate, etc. 666 This driver can also be built as a module. If so, the module 667 will be called pinctrl-zynqmp. 668 669config PINCTRL_MLXBF3 670 tristate "NVIDIA BlueField-3 SoC Pinctrl driver" 671 depends on (MELLANOX_PLATFORM && ARM64) || COMPILE_TEST 672 select PINMUX 673 select GPIOLIB 674 select GPIOLIB_IRQCHIP 675 help 676 Say Y to select the pinctrl driver for BlueField-3 SoCs. 677 This pin controller allows selecting the mux function for 678 each pin. This driver can also be built as a module called 679 pinctrl-mlxbf3. 680 681config PINCTRL_RP1 682 tristate "Pinctrl driver for RP1" 683 depends on MISC_RP1 684 default MISC_RP1 685 select PINMUX 686 select PINCONF 687 select GENERIC_PINCONF 688 help 689 Enable the gpio and pinctrl/mux driver for RaspberryPi RP1 690 multi function device. 691 692source "drivers/pinctrl/actions/Kconfig" 693source "drivers/pinctrl/airoha/Kconfig" 694source "drivers/pinctrl/aspeed/Kconfig" 695source "drivers/pinctrl/bcm/Kconfig" 696source "drivers/pinctrl/berlin/Kconfig" 697source "drivers/pinctrl/cirrus/Kconfig" 698source "drivers/pinctrl/cix/Kconfig" 699source "drivers/pinctrl/freescale/Kconfig" 700source "drivers/pinctrl/intel/Kconfig" 701source "drivers/pinctrl/mediatek/Kconfig" 702source "drivers/pinctrl/meson/Kconfig" 703source "drivers/pinctrl/microchip/Kconfig" 704source "drivers/pinctrl/mvebu/Kconfig" 705source "drivers/pinctrl/nomadik/Kconfig" 706source "drivers/pinctrl/nuvoton/Kconfig" 707source "drivers/pinctrl/nxp/Kconfig" 708source "drivers/pinctrl/pxa/Kconfig" 709source "drivers/pinctrl/qcom/Kconfig" 710source "drivers/pinctrl/realtek/Kconfig" 711source "drivers/pinctrl/renesas/Kconfig" 712source "drivers/pinctrl/samsung/Kconfig" 713source "drivers/pinctrl/sophgo/Kconfig" 714source "drivers/pinctrl/spacemit/Kconfig" 715source "drivers/pinctrl/spear/Kconfig" 716source "drivers/pinctrl/sprd/Kconfig" 717source "drivers/pinctrl/starfive/Kconfig" 718source "drivers/pinctrl/stm32/Kconfig" 719source "drivers/pinctrl/sunplus/Kconfig" 720source "drivers/pinctrl/sunxi/Kconfig" 721source "drivers/pinctrl/tegra/Kconfig" 722source "drivers/pinctrl/ti/Kconfig" 723source "drivers/pinctrl/ultrarisc/Kconfig" 724source "drivers/pinctrl/uniphier/Kconfig" 725source "drivers/pinctrl/visconti/Kconfig" 726source "drivers/pinctrl/vt8500/Kconfig" 727 728endif 729