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