xref: /linux/drivers/pinctrl/Kconfig (revision ec2e0fb07d789976c601bec19ecced7a501c3705)
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_PISTACHIO
490	bool "IMG Pistachio SoC pinctrl driver"
491	depends on OF && (MIPS || COMPILE_TEST)
492	depends on GPIOLIB
493	select PINMUX
494	select GENERIC_PINCONF
495	select GPIOLIB_IRQCHIP
496	select OF_GPIO
497	help
498	  This support pinctrl and GPIO driver for IMG Pistachio SoC.
499
500config PINCTRL_RK805
501	tristate "Pinctrl and GPIO driver for RK805 PMIC"
502	depends on MFD_RK8XX
503	select GPIOLIB
504	select PINMUX
505	select GENERIC_PINCONF
506	help
507	  This selects the pinctrl driver for RK805.
508
509config PINCTRL_ROCKCHIP
510	tristate "Rockchip gpio and pinctrl driver"
511	depends on ARCH_ROCKCHIP || COMPILE_TEST
512	depends on OF
513	select GPIOLIB
514	select PINMUX
515	select GENERIC_PINCONF
516	select GENERIC_IRQ_CHIP
517	select MFD_SYSCON
518	select OF_GPIO
519	default ARCH_ROCKCHIP
520	help
521          This support pinctrl and GPIO driver for Rockchip SoCs.
522
523config PINCTRL_SCMI
524	tristate "Pinctrl driver using SCMI protocol interface"
525	depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
526	select PINMUX
527	select GENERIC_PINCONF
528	help
529	  This driver provides support for pinctrl which is controlled
530	  by firmware that implements the SCMI interface.
531	  It uses SCMI Message Protocol to interact with the
532	  firmware providing all the pinctrl controls.
533
534config PINCTRL_SINGLE
535	tristate "One-register-per-pin type device tree based pinctrl driver"
536	depends on OF
537	depends on HAS_IOMEM
538	select GENERIC_PINCTRL_GROUPS
539	select GENERIC_PINMUX_FUNCTIONS
540	select GENERIC_PINCONF
541	help
542	  This selects the device tree based generic pinctrl driver.
543
544config PINCTRL_ST
545	bool
546	depends on OF
547	select PINMUX
548	select PINCONF
549	select GPIOLIB_IRQCHIP
550
551config PINCTRL_STMFX
552	tristate "STMicroelectronics STMFX GPIO expander pinctrl driver"
553	depends on I2C
554	depends on OF_GPIO
555	depends on HAS_IOMEM
556	select GENERIC_PINCONF
557	select GPIOLIB_IRQCHIP
558	select MFD_STMFX
559	help
560	  Driver for STMicroelectronics Multi-Function eXpander (STMFX)
561	  GPIO expander.
562	  This provides a GPIO interface supporting inputs and outputs,
563	  and configuring push-pull, open-drain, and can also be used as
564	  interrupt-controller.
565
566config PINCTRL_SX150X
567	tristate "Semtech SX150x I2C GPIO expander pinctrl driver"
568	depends on I2C=y
569	select PINMUX
570	select PINCONF
571	select GENERIC_PINCONF
572	select GPIOLIB
573	select GPIOLIB_IRQCHIP
574	select REGMAP
575	help
576	  Say Y here to provide support for Semtech SX150x-series I2C
577	  GPIO expanders as pinctrl module.
578	  Compatible models include:
579	  - 8 bits:  sx1508q, sx1502q
580	  - 16 bits: sx1509q, sx1506q
581
582config PINCTRL_TB10X
583	bool "Pinctrl for TB10X" if COMPILE_TEST
584	depends on OF && ARC_PLAT_TB10X || COMPILE_TEST
585	select GPIOLIB
586
587config PINCTRL_TPS6594
588	tristate "Pinctrl and GPIO driver for TI TPS6594 PMIC"
589	depends on OF && MFD_TPS6594
590	default MFD_TPS6594
591	select PINMUX
592	select GPIOLIB
593	select REGMAP
594	select GPIO_REGMAP
595	select GENERIC_PINCONF
596	help
597	  Say Y to select the pinmuxing and GPIOs driver for the TPS6594
598	  PMICs chip family.
599
600	  This driver can also be built as a module
601	  called tps6594-pinctrl.
602
603config PINCTRL_TH1520
604	tristate "Pinctrl driver for the T-Head TH1520 SoC"
605	depends on ARCH_THEAD || COMPILE_TEST
606	depends on OF
607	select GENERIC_PINMUX_FUNCTIONS
608	select GENERIC_PINCONF
609	select PINMUX
610	help
611	  This is the driver for the pin controller blocks on the
612	  T-Head TH1520 SoC.
613
614	  This driver is needed for RISC-V development boards like
615	  the BeagleV Ahead and the LicheePi 4A.
616
617config PINCTRL_UPBOARD
618	tristate "AAeon UP board FPGA pin controller"
619	depends on MFD_UPBOARD_FPGA
620	select PINMUX
621	select GENERIC_PINCTRL_GROUPS
622	select GENERIC_PINMUX_FUNCTIONS
623	select GPIOLIB
624	select GPIO_AGGREGATOR
625	help
626	  Pin controller for the FPGA GPIO lines on UP boards. Due to the
627	  hardware layout, the driver controls the FPGA pins in tandem with
628	  their corresponding Intel SoC GPIOs.
629
630	  Currently supported:
631	  - UP Squared
632
633	  To compile this driver as a module, choose M here: the module
634	  will be called pinctrl-upboard.
635
636config PINCTRL_ZYNQ
637	bool "Pinctrl driver for Xilinx Zynq"
638	depends on ARCH_ZYNQ || COMPILE_TEST
639	depends on OF
640	select PINMUX
641	select GENERIC_PINCONF
642	help
643	  This selects the pinctrl driver for Xilinx Zynq.
644
645config PINCTRL_ZYNQMP
646	tristate "Pinctrl driver for Xilinx ZynqMP"
647	depends on ZYNQMP_FIRMWARE
648	select PINMUX
649	select GENERIC_PINCONF
650	default ZYNQMP_FIRMWARE
651	help
652	  This selects the pinctrl driver for Xilinx ZynqMP platform.
653	  This driver will query the pin information from the firmware
654	  and allow configuring the pins.
655	  Configuration can include the mux function to select on those
656	  pin(s)/group(s), and various pin configuration parameters
657	  such as pull-up, slew rate, etc.
658	  This driver can also be built as a module. If so, the module
659	  will be called pinctrl-zynqmp.
660
661config PINCTRL_MLXBF3
662	tristate "NVIDIA BlueField-3 SoC Pinctrl driver"
663	depends on (MELLANOX_PLATFORM && ARM64) || COMPILE_TEST
664	select PINMUX
665	select GPIOLIB
666	select GPIOLIB_IRQCHIP
667	help
668	  Say Y to select the pinctrl driver for BlueField-3 SoCs.
669	  This pin controller allows selecting the mux function for
670	  each pin. This driver can also be built as a module called
671	  pinctrl-mlxbf3.
672
673config PINCTRL_RP1
674	tristate "Pinctrl driver for RP1"
675	depends on MISC_RP1
676	default MISC_RP1
677	select PINMUX
678	select PINCONF
679	select GENERIC_PINCONF
680	help
681	  Enable the gpio and pinctrl/mux driver for RaspberryPi RP1
682	  multi function device.
683
684source "drivers/pinctrl/actions/Kconfig"
685source "drivers/pinctrl/aspeed/Kconfig"
686source "drivers/pinctrl/bcm/Kconfig"
687source "drivers/pinctrl/berlin/Kconfig"
688source "drivers/pinctrl/cirrus/Kconfig"
689source "drivers/pinctrl/freescale/Kconfig"
690source "drivers/pinctrl/intel/Kconfig"
691source "drivers/pinctrl/mediatek/Kconfig"
692source "drivers/pinctrl/meson/Kconfig"
693source "drivers/pinctrl/mvebu/Kconfig"
694source "drivers/pinctrl/nomadik/Kconfig"
695source "drivers/pinctrl/nuvoton/Kconfig"
696source "drivers/pinctrl/nxp/Kconfig"
697source "drivers/pinctrl/pxa/Kconfig"
698source "drivers/pinctrl/qcom/Kconfig"
699source "drivers/pinctrl/realtek/Kconfig"
700source "drivers/pinctrl/renesas/Kconfig"
701source "drivers/pinctrl/samsung/Kconfig"
702source "drivers/pinctrl/sophgo/Kconfig"
703source "drivers/pinctrl/spacemit/Kconfig"
704source "drivers/pinctrl/spear/Kconfig"
705source "drivers/pinctrl/sprd/Kconfig"
706source "drivers/pinctrl/starfive/Kconfig"
707source "drivers/pinctrl/stm32/Kconfig"
708source "drivers/pinctrl/sunplus/Kconfig"
709source "drivers/pinctrl/sunxi/Kconfig"
710source "drivers/pinctrl/tegra/Kconfig"
711source "drivers/pinctrl/ti/Kconfig"
712source "drivers/pinctrl/uniphier/Kconfig"
713source "drivers/pinctrl/visconti/Kconfig"
714source "drivers/pinctrl/vt8500/Kconfig"
715
716endif
717