xref: /linux/drivers/pinctrl/Kconfig (revision cf9610f9116d55c5a66ef9f1faecacabd93a9322)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
22744e8afSLinus Walleij#
32744e8afSLinus Walleij# PINCTRL infrastructure and drivers
42744e8afSLinus Walleij#
52744e8afSLinus Walleij
6d219b924SPhil Reidmenuconfig PINCTRL
7d219b924SPhil Reid	bool "Pin controllers"
82744e8afSLinus Walleij
9d219b924SPhil Reidif PINCTRL
1045f034efSLinus Walleij
11c033a718SLinus Walleijconfig GENERIC_PINCTRL_GROUPS
12c7059c5aSTony Lindgren	bool
13c7059c5aSTony Lindgren
142744e8afSLinus Walleijconfig PINMUX
15244e95a7SUwe Kleine-König	bool "Support pin multiplexing controllers" if COMPILE_TEST
16ae6b4d85SLinus Walleij
17a76edc89STony Lindgrenconfig GENERIC_PINMUX_FUNCTIONS
18a76edc89STony Lindgren	bool
19a76edc89STony Lindgren	select PINMUX
20a76edc89STony Lindgren
21ae6b4d85SLinus Walleijconfig PINCONF
22244e95a7SUwe Kleine-König	bool "Support pin configuration controllers" if COMPILE_TEST
232744e8afSLinus Walleij
24394349f7SLinus Walleijconfig GENERIC_PINCONF
25394349f7SLinus Walleij	bool
26394349f7SLinus Walleij	select PINCONF
27394349f7SLinus Walleij
2843722575SConor Dooleyconfig GENERIC_PINCTRL
2943722575SConor Dooley	bool
30ea9975c2SConor Dooley	select GENERIC_PINCONF
31ea9975c2SConor Dooley	select GENERIC_PINCTRL_GROUPS
32ea9975c2SConor Dooley	select GENERIC_PINMUX_FUNCTIONS
3343722575SConor Dooley
342744e8afSLinus Walleijconfig DEBUG_PINCTRL
352744e8afSLinus Walleij	bool "Debug PINCTRL calls"
362744e8afSLinus Walleij	depends on DEBUG_KERNEL
372744e8afSLinus Walleij	help
382744e8afSLinus Walleij	  Say Y here to add some extra checks and diagnostics to PINCTRL calls.
392744e8afSLinus Walleij
40b124c8bdSAndy Shevchenkoconfig PINCTRL_AMD
4141ef3c1aSMario Limonciello	bool "AMD GPIO pin control"
42b124c8bdSAndy Shevchenko	depends on HAS_IOMEM
43b124c8bdSAndy Shevchenko	depends on ACPI || COMPILE_TEST
44b124c8bdSAndy Shevchenko	select GPIOLIB
45b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
46b124c8bdSAndy Shevchenko	select PINMUX
47b124c8bdSAndy Shevchenko	select PINCONF
48b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
49b124c8bdSAndy Shevchenko	help
50b124c8bdSAndy Shevchenko	  The driver for memory mapped GPIO functionality on AMD platforms
51b124c8bdSAndy Shevchenko	  (x86 or arm). Most of the pins are usually muxed to some other
52b124c8bdSAndy Shevchenko	  functionality by firmware, so only a small amount is available
53b124c8bdSAndy Shevchenko	  for GPIO use.
54b124c8bdSAndy Shevchenko
55b124c8bdSAndy Shevchenko	  Requires ACPI/FDT device enumeration code to set up a platform
56b124c8bdSAndy Shevchenko	  device.
57b124c8bdSAndy Shevchenko
58e97435abSPratap Nirujogiconfig PINCTRL_AMDISP
59e97435abSPratap Nirujogi	tristate "AMDISP GPIO pin control"
60813b1a1aSGeert Uytterhoeven	depends on DRM_AMD_ISP || COMPILE_TEST
61e97435abSPratap Nirujogi	depends on HAS_IOMEM
62e97435abSPratap Nirujogi	select GPIOLIB
63e97435abSPratap Nirujogi	select PINCONF
64e97435abSPratap Nirujogi	select GENERIC_PINCONF
65e97435abSPratap Nirujogi	help
66e97435abSPratap Nirujogi	  The driver for memory mapped GPIO functionality on AMD platforms
67e97435abSPratap Nirujogi	  with ISP support. All the pins are output controlled only
68e97435abSPratap Nirujogi
69e97435abSPratap Nirujogi	  Requires AMDGPU to MFD add device for enumeration to set up as
70e97435abSPratap Nirujogi	  platform device.
71e97435abSPratap Nirujogi
72a0f160ffSJoey Goulyconfig PINCTRL_APPLE_GPIO
73a0f160ffSJoey Gouly	tristate "Apple SoC GPIO pin controller driver"
74a0f160ffSJoey Gouly	depends on ARCH_APPLE
75a0f160ffSJoey Gouly	select PINMUX
76a0f160ffSJoey Gouly	select GPIOLIB
77a0f160ffSJoey Gouly	select GPIOLIB_IRQCHIP
78a0f160ffSJoey Gouly	select GENERIC_PINCTRL_GROUPS
79a0f160ffSJoey Gouly	select GENERIC_PINMUX_FUNCTIONS
80a0f160ffSJoey Gouly	help
81a0f160ffSJoey Gouly	  This is the driver for the GPIO controller found on Apple ARM SoCs,
82a0f160ffSJoey Gouly	  including M1.
83a0f160ffSJoey Gouly
84a0f160ffSJoey Gouly	  This driver can also be built as a module. If so, the module
85a0f160ffSJoey Gouly	  will be called pinctrl-apple-gpio.
86a0f160ffSJoey Gouly
8700df0582SJesper Nilssonconfig PINCTRL_ARTPEC6
8800df0582SJesper Nilsson	bool "Axis ARTPEC-6 pin controller driver"
8900df0582SJesper Nilsson	depends on MACH_ARTPEC6
9000df0582SJesper Nilsson	select PINMUX
9100df0582SJesper Nilsson	select GENERIC_PINCONF
9200df0582SJesper Nilsson	help
9300df0582SJesper Nilsson	  This is the driver for the Axis ARTPEC-6 pin controller. This driver
9400df0582SJesper Nilsson	  supports pin function multiplexing as well as pin bias and drive
9500df0582SJesper Nilsson	  strength configuration. Device tree integration instructions can be
9600df0582SJesper Nilsson	  found in Documentation/devicetree/bindings/pinctrl/axis,artpec6-pinctrl.txt
9700df0582SJesper Nilsson
98c8ce8782SLaxman Dewanganconfig PINCTRL_AS3722
999385f35dSPaul Gortmaker	tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
100c8ce8782SLaxman Dewangan	depends on MFD_AS3722 && GPIOLIB
101c8ce8782SLaxman Dewangan	select PINMUX
102c8ce8782SLaxman Dewangan	select GENERIC_PINCONF
103c8ce8782SLaxman Dewangan	help
104c8ce8782SLaxman Dewangan	  AS3722 device supports the configuration of GPIO pins for different
105c8ce8782SLaxman Dewangan	  functionality. This driver supports the pinmux, push-pull and
106c8ce8782SLaxman Dewangan	  open drain configuration for the GPIO pins of AS3722 devices. It also
107c8ce8782SLaxman Dewangan	  supports the GPIO functionality through gpiolib.
108c8ce8782SLaxman Dewangan
1096732ae5cSJean-Christophe PLAGNIOL-VILLARDconfig PINCTRL_AT91
1106732ae5cSJean-Christophe PLAGNIOL-VILLARD	bool "AT91 pinctrl driver"
1118e86af65SBartosz Golaszewski	depends on (OF && ARCH_AT91) || COMPILE_TEST
1126732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINMUX
1136732ae5cSJean-Christophe PLAGNIOL-VILLARD	select PINCONF
11480cc3732SAlexander Stein	select GPIOLIB
11580cc3732SAlexander Stein	select GPIOLIB_IRQCHIP
1166732ae5cSJean-Christophe PLAGNIOL-VILLARD	help
1176732ae5cSJean-Christophe PLAGNIOL-VILLARD	  Say Y here to enable the at91 pinctrl driver
1186732ae5cSJean-Christophe PLAGNIOL-VILLARD
11977618084SLudovic Desrochesconfig PINCTRL_AT91PIO4
12077618084SLudovic Desroches	bool "AT91 PIO4 pinctrl driver"
12177618084SLudovic Desroches	depends on OF
1220a03658dSTiezhu Yang	depends on HAS_IOMEM
123e682fcc7STiezhu Yang	depends on ARCH_AT91 || COMPILE_TEST
12477618084SLudovic Desroches	select PINMUX
12577618084SLudovic Desroches	select GENERIC_PINCONF
12677618084SLudovic Desroches	select GPIOLIB
12777618084SLudovic Desroches	select GPIOLIB_IRQCHIP
12877618084SLudovic Desroches	help
12977618084SLudovic Desroches	  Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
13077618084SLudovic Desroches	  controller available on sama5d2 SoC.
13177618084SLudovic Desroches
132b124c8bdSAndy Shevchenkoconfig PINCTRL_AXP209
133b124c8bdSAndy Shevchenko	tristate "X-Powers AXP209 PMIC pinctrl and GPIO Support"
134b124c8bdSAndy Shevchenko	depends on MFD_AXP20X
135b124c8bdSAndy Shevchenko	depends on OF
13683b31c2aSPetr Mladek	select PINMUX
137dbad75ddSKen Xue	select GENERIC_PINCONF
138b124c8bdSAndy Shevchenko	select GPIOLIB
139dbad75ddSKen Xue	help
140b124c8bdSAndy Shevchenko	  AXP PMICs provides multiple GPIOs that can be muxed for different
141b124c8bdSAndy Shevchenko	  functions. This driver bundles a pinctrl driver to select the function
142b124c8bdSAndy Shevchenko	  muxing and a GPIO driver to handle the GPIO when the GPIO function is
143b124c8bdSAndy Shevchenko	  selected.
144b124c8bdSAndy Shevchenko	  Say Y to enable pinctrl and GPIO support for the AXP209 PMIC.
145dbad75ddSKen Xue
146576623d7SAngeloGioacchino Del Regnoconfig PINCTRL_AW9523
147d295ad7eSLinus Walleij	tristate "Awinic AW9523/AW9523B I2C GPIO expander pinctrl driver"
148576623d7SAngeloGioacchino Del Regno	depends on OF && I2C
149576623d7SAngeloGioacchino Del Regno	select PINMUX
150576623d7SAngeloGioacchino Del Regno	select PINCONF
151576623d7SAngeloGioacchino Del Regno	select GENERIC_PINCONF
152576623d7SAngeloGioacchino Del Regno	select GPIOLIB
153576623d7SAngeloGioacchino Del Regno	select GPIOLIB_IRQCHIP
154576623d7SAngeloGioacchino Del Regno	select REGMAP
155576623d7SAngeloGioacchino Del Regno	select REGMAP_I2C
156576623d7SAngeloGioacchino Del Regno	help
157576623d7SAngeloGioacchino Del Regno	  The Awinic AW9523/AW9523B is a multi-function I2C GPIO
158576623d7SAngeloGioacchino Del Regno	  expander with PWM functionality. This driver bundles a
159576623d7SAngeloGioacchino Del Regno	  pinctrl driver to select the function muxing and a GPIO
160576623d7SAngeloGioacchino Del Regno	  driver to handle GPIO, when the GPIO function is selected.
161576623d7SAngeloGioacchino Del Regno
162576623d7SAngeloGioacchino Del Regno	  Say yes to enable pinctrl and GPIO support for the AW9523(B).
163576623d7SAngeloGioacchino Del Regno
1648f3f0246SManivannan Sadhasivamconfig PINCTRL_BM1880
1658f3f0246SManivannan Sadhasivam	bool "Bitmain BM1880 Pinctrl driver"
1668293b3c6SManivannan Sadhasivam	depends on OF && (ARCH_BITMAIN || COMPILE_TEST)
1678293b3c6SManivannan Sadhasivam	default ARCH_BITMAIN
1688f3f0246SManivannan Sadhasivam	select PINMUX
169dad6e107SBenjamin Boortz	select GENERIC_PINCONF
1708f3f0246SManivannan Sadhasivam	help
1718f3f0246SManivannan Sadhasivam	  Pinctrl driver for Bitmain BM1880 SoC.
1728f3f0246SManivannan Sadhasivam
173e6cbbe42SPatrick Rudolphconfig PINCTRL_CY8C95X0
174e6cbbe42SPatrick Rudolph	tristate "Cypress CY8C95X0 I2C pinctrl and GPIO driver"
1758586466eSAndy Shevchenko	depends on I2C
176e6cbbe42SPatrick Rudolph	select GPIOLIB
177e6cbbe42SPatrick Rudolph	select GPIOLIB_IRQCHIP
178e6cbbe42SPatrick Rudolph	select PINMUX
179e6cbbe42SPatrick Rudolph	select PINCONF
180e6cbbe42SPatrick Rudolph	select GENERIC_PINCONF
181e6cbbe42SPatrick Rudolph	select REGMAP_I2C
182e6cbbe42SPatrick Rudolph	help
183e6cbbe42SPatrick Rudolph	  Support for 20/40/60 pin Cypress Cy8C95x0 pinctrl/gpio I2C expander.
184e6cbbe42SPatrick Rudolph	  This driver can also be built as a module. If so, the module will be
185e6cbbe42SPatrick Rudolph	  called pinctrl-cy8c95x0.
186e6cbbe42SPatrick Rudolph
1871ff91f0aSDavid Lechnerconfig PINCTRL_DA850_PUPD
188b124c8bdSAndy Shevchenko	tristate "TI DA850/OMAP-L138/AM18XX pull-up and pull-down groups"
1891ff91f0aSDavid Lechner	depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST)
1901ff91f0aSDavid Lechner	select PINCONF
1911ff91f0aSDavid Lechner	select GENERIC_PINCONF
1921ff91f0aSDavid Lechner	help
1931ff91f0aSDavid Lechner	  Driver for TI DA850/OMAP-L138/AM18XX pinconf. Used to control
194b124c8bdSAndy Shevchenko	  pull-up and pull-down pin groups.
1951ff91f0aSDavid Lechner
19656cc3af4SMarco Felschconfig PINCTRL_DA9062
19756cc3af4SMarco Felsch	tristate "Dialog Semiconductor DA9062 PMIC pinctrl and GPIO Support"
19856cc3af4SMarco Felsch	depends on MFD_DA9062
19956cc3af4SMarco Felsch	select GPIOLIB
20056cc3af4SMarco Felsch	help
20156cc3af4SMarco Felsch	  The Dialog DA9062 PMIC provides multiple GPIOs that can be muxed for
20256cc3af4SMarco Felsch	  different functions. This driver bundles a pinctrl driver to select the
20356cc3af4SMarco Felsch	  function muxing and a GPIO driver to handle the GPIO when the GPIO
20456cc3af4SMarco Felsch	  function is selected.
20556cc3af4SMarco Felsch
206b124c8bdSAndy Shevchenko	  Say Y to enable pinctrl and GPIO support for the DA9062 PMIC.
20756cc3af4SMarco Felsch
20838b0e507SBaruch Siachconfig PINCTRL_DIGICOLOR
20938b0e507SBaruch Siach	bool
210083b0230SAndy Shevchenko	depends on ARCH_DIGICOLOR || COMPILE_TEST
21138b0e507SBaruch Siach	select PINMUX
21238b0e507SBaruch Siach	select GENERIC_PINCONF
21338b0e507SBaruch Siach
2145b797bccSYulin Luconfig PINCTRL_EIC7700
2155b797bccSYulin Lu	tristate "EIC7700 PINCTRL driver"
2165b797bccSYulin Lu	depends on ARCH_ESWIN || COMPILE_TEST
2175b797bccSYulin Lu	select PINMUX
2185b797bccSYulin Lu	select GENERIC_PINCONF
219a6a2f50aSYulin Lu	select REGULATOR
220a6a2f50aSYulin Lu	select REGULATOR_FIXED_VOLTAGE
2215b797bccSYulin Lu	help
2225b797bccSYulin Lu	  This driver support for the pin controller in ESWIN's EIC7700 SoC,
2235b797bccSYulin Lu	  which supports pin multiplexing, pin configuration,and rgmii voltage
2245b797bccSYulin Lu	  control.
2255b797bccSYulin Lu	  Say Y here to enable the eic7700 pinctrl driver
2265b797bccSYulin Lu
227035f9007SNikita Shubinconfig PINCTRL_EP93XX
228035f9007SNikita Shubin	bool
229035f9007SNikita Shubin	depends on ARCH_EP93XX || COMPILE_TEST
230035f9007SNikita Shubin	select PINMUX
231035f9007SNikita Shubin	select GENERIC_PINCONF
232035f9007SNikita Shubin	select MFD_SYSCON
233035f9007SNikita Shubin
234b124c8bdSAndy Shevchenkoconfig PINCTRL_EQUILIBRIUM
235b124c8bdSAndy Shevchenko	tristate "Generic pinctrl and GPIO driver for Intel Lightning Mountain SoC"
236b124c8bdSAndy Shevchenko	depends on OF && HAS_IOMEM
237b124c8bdSAndy Shevchenko	depends on X86 || COMPILE_TEST
238b124c8bdSAndy Shevchenko	select PINMUX
239b124c8bdSAndy Shevchenko	select PINCONF
240b124c8bdSAndy Shevchenko	select GPIOLIB
241b124c8bdSAndy Shevchenko	select GPIO_GENERIC
242b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
243b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
244b124c8bdSAndy Shevchenko	select GENERIC_PINCTRL_GROUPS
245b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
246b124c8bdSAndy Shevchenko	help
247b124c8bdSAndy Shevchenko	  Equilibrium driver is a pinctrl and GPIO driver for Intel Lightning
248b124c8bdSAndy Shevchenko	  Mountain network processor SoC that supports both the GPIO and pin
249b124c8bdSAndy Shevchenko	  control frameworks. It provides interfaces to setup pin muxing, assign
250b124c8bdSAndy Shevchenko	  desired pin functions, configure GPIO attributes for LGM SoC pins.
251b124c8bdSAndy Shevchenko	  Pin muxing and pin config settings are retrieved from device tree.
252b124c8bdSAndy Shevchenko
25341795aa1SThéo Lebrunconfig PINCTRL_EYEQ5
25441795aa1SThéo Lebrun	bool "Mobileye EyeQ5 pinctrl driver"
25541795aa1SThéo Lebrun	depends on OF
256e91d8e8cSBenoît Monin	depends on MACH_EYEQ5 || MACH_EYEQ6LPLUS || COMPILE_TEST
25741795aa1SThéo Lebrun	select PINMUX
25841795aa1SThéo Lebrun	select GENERIC_PINCONF
25941795aa1SThéo Lebrun	select AUXILIARY_BUS
260e91d8e8cSBenoît Monin	default MACH_EYEQ5 || MACH_EYEQ6LPLUS
26141795aa1SThéo Lebrun	help
26241795aa1SThéo Lebrun	  Pin controller driver for the Mobileye EyeQ5 platform. It does both
26341795aa1SThéo Lebrun	  pin config & pin muxing. It does not handle GPIO.
26441795aa1SThéo Lebrun
26541795aa1SThéo Lebrun	  Pin muxing supports two functions for each pin: first is GPIO, second
26641795aa1SThéo Lebrun	  is pin-dependent. Pin config is about bias & drive strength.
26741795aa1SThéo Lebrun
268b124c8bdSAndy Shevchenkoconfig PINCTRL_GEMINI
269b124c8bdSAndy Shevchenko	bool
270b124c8bdSAndy Shevchenko	depends on ARCH_GEMINI
271b124c8bdSAndy Shevchenko	default ARCH_GEMINI
272b124c8bdSAndy Shevchenko	select PINMUX
273b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
274b124c8bdSAndy Shevchenko	select MFD_SYSCON
275b124c8bdSAndy Shevchenko
27634acc5a8SFrank Liconfig PINCTRL_GENERIC_MUX
27734acc5a8SFrank Li	tristate "Generic Pinctrl driver by using multiplexer"
278ea024873SFrank Li	depends on OF
279*465f276bSAlvin Šipraga	select MULTIPLEXER
28034acc5a8SFrank Li	select PINMUX
28134acc5a8SFrank Li	select GENERIC_PINCTRL
28234acc5a8SFrank Li	help
28334acc5a8SFrank Li          Generic pinctrl driver by MULTIPLEXER framework to control on
28434acc5a8SFrank Li          board pin selection.
28534acc5a8SFrank Li
286b124c8bdSAndy Shevchenkoconfig PINCTRL_INGENIC
287b124c8bdSAndy Shevchenko	bool "Pinctrl driver for the Ingenic JZ47xx SoCs"
288b124c8bdSAndy Shevchenko	default MACH_INGENIC
289b124c8bdSAndy Shevchenko	depends on OF
290b124c8bdSAndy Shevchenko	depends on MIPS || COMPILE_TEST
291b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
292b124c8bdSAndy Shevchenko	select GENERIC_PINCTRL_GROUPS
293b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
294b124c8bdSAndy Shevchenko	select GPIOLIB
295b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
296b124c8bdSAndy Shevchenko	select REGMAP_MMIO
297b124c8bdSAndy Shevchenko
298b124c8bdSAndy Shevchenkoconfig PINCTRL_K210
299b124c8bdSAndy Shevchenko	bool "Pinctrl driver for the Canaan Kendryte K210 SoC"
3001982621dSKrzysztof Kozlowski	depends on RISCV && SOC_CANAAN_K210 || COMPILE_TEST
3011982621dSKrzysztof Kozlowski	depends on OF
302b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
303b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
304b124c8bdSAndy Shevchenko	select GPIOLIB
305b124c8bdSAndy Shevchenko	select REGMAP_MMIO
306c1556a9bSYangyu Chen	default SOC_CANAAN_K210
307b124c8bdSAndy Shevchenko	help
308b124c8bdSAndy Shevchenko	  Add support for the Canaan Kendryte K210 RISC-V SOC Field
309b124c8bdSAndy Shevchenko	  Programmable IO Array (FPIOA) controller.
310b124c8bdSAndy Shevchenko
311545887eaSZe Huangconfig PINCTRL_K230
312545887eaSZe Huang	bool "Pinctrl driver for the Canaan Kendryte K230 SoC"
313545887eaSZe Huang	depends on OF
314642490b5SGeert Uytterhoeven	depends on ARCH_CANAAN || COMPILE_TEST
315545887eaSZe Huang	select GENERIC_PINCTRL_GROUPS
316545887eaSZe Huang	select GENERIC_PINMUX_FUNCTIONS
317545887eaSZe Huang	select GENERIC_PINCONF
318545887eaSZe Huang	select REGMAP_MMIO
319545887eaSZe Huang	help
320545887eaSZe Huang	  Add support for the Canaan Kendryte K230 RISC-V SOC pin controller.
321545887eaSZe Huang
322b124c8bdSAndy Shevchenkoconfig PINCTRL_KEEMBAY
323b124c8bdSAndy Shevchenko	tristate "Pinctrl driver for Intel Keem Bay SoC"
324b124c8bdSAndy Shevchenko	depends on ARCH_KEEMBAY || (ARM64 && COMPILE_TEST)
325b124c8bdSAndy Shevchenko	depends on HAS_IOMEM
326b124c8bdSAndy Shevchenko	select PINMUX
327b124c8bdSAndy Shevchenko	select PINCONF
328b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
329b124c8bdSAndy Shevchenko	select GENERIC_PINCTRL_GROUPS
330b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
331b124c8bdSAndy Shevchenko	select GPIOLIB
332b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
333b124c8bdSAndy Shevchenko	select GPIO_GENERIC
334b124c8bdSAndy Shevchenko	help
335b124c8bdSAndy Shevchenko	  This selects pin control driver for the Intel Keem Bay SoC.
336b124c8bdSAndy Shevchenko	  It provides pin config functions such as pull-up, pull-down,
337b124c8bdSAndy Shevchenko	  interrupt, drive strength, sec lock, Schmitt trigger, slew
338b124c8bdSAndy Shevchenko	  rate control and direction control. This module will be
339b124c8bdSAndy Shevchenko	  called as pinctrl-keembay.
340b124c8bdSAndy Shevchenko
3413f8c50c9SJohn Crispinconfig PINCTRL_LANTIQ
3423f8c50c9SJohn Crispin	bool
3433f8c50c9SJohn Crispin	depends on LANTIQ
3443f8c50c9SJohn Crispin	select PINMUX
3453f8c50c9SJohn Crispin	select PINCONF
3463f8c50c9SJohn Crispin
347b124c8bdSAndy Shevchenkoconfig PINCTRL_FALCON
348b124c8bdSAndy Shevchenko	bool
349b124c8bdSAndy Shevchenko	depends on SOC_FALCON
350b124c8bdSAndy Shevchenko	depends on PINCTRL_LANTIQ
351b124c8bdSAndy Shevchenko
352f73f88acSzhanghongchenconfig PINCTRL_LOONGSON2
353f73f88acSzhanghongchen	tristate "Pinctrl driver for the Loongson-2 SoC"
354c0f358fdSRen Zhijie	depends on OF && (LOONGARCH || COMPILE_TEST)
355f73f88acSzhanghongchen	select PINMUX
356f73f88acSzhanghongchen	select GENERIC_PINCONF
357f73f88acSzhanghongchen	help
358f73f88acSzhanghongchen	 This selects pin control driver for the Loongson-2 SoC. It
359f73f88acSzhanghongchen	 provides pin config functions multiplexing.  GPIO pin pull-up,
360f73f88acSzhanghongchen	 pull-down functions are not supported. Say yes to enable
361f73f88acSzhanghongchen	 pinctrl for Loongson-2 SoC.
362f73f88acSzhanghongchen
363b124c8bdSAndy Shevchenkoconfig PINCTRL_XWAY
364b124c8bdSAndy Shevchenko	bool
365b124c8bdSAndy Shevchenko	depends on SOC_TYPE_XWAY
366b124c8bdSAndy Shevchenko	depends on PINCTRL_LANTIQ
367b124c8bdSAndy Shevchenko
3682f77ac93SJoachim Eastwoodconfig PINCTRL_LPC18XX
3692f77ac93SJoachim Eastwood	bool "NXP LPC18XX/43XX SCU pinctrl driver"
3702f77ac93SJoachim Eastwood	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
3712f77ac93SJoachim Eastwood	default ARCH_LPC18XX
3722f77ac93SJoachim Eastwood	select PINMUX
3732f77ac93SJoachim Eastwood	select GENERIC_PINCONF
3742f77ac93SJoachim Eastwood	help
3752f77ac93SJoachim Eastwood	  Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
3762f77ac93SJoachim Eastwood
377b4b993c0SMathieu Dubois-Briandconfig PINCTRL_MAX7360
378b4b993c0SMathieu Dubois-Briand	tristate "MAX7360 Pincontrol support"
379b4b993c0SMathieu Dubois-Briand	depends on MFD_MAX7360
380b4b993c0SMathieu Dubois-Briand	select PINMUX
381b4b993c0SMathieu Dubois-Briand	select GENERIC_PINCONF
382b4b993c0SMathieu Dubois-Briand	help
383b4b993c0SMathieu Dubois-Briand	  Say Y here to enable pin control support for Maxim MAX7360 keypad
384b4b993c0SMathieu Dubois-Briand	  controller.
385b4b993c0SMathieu Dubois-Briand	  This keypad controller has 8 GPIO pins that may work as GPIO, or PWM,
386b4b993c0SMathieu Dubois-Briand	  or rotary encoder alternate modes.
387b4b993c0SMathieu Dubois-Briand
388b124c8bdSAndy Shevchenkoconfig PINCTRL_MAX77620
389b124c8bdSAndy Shevchenko	tristate "MAX77620/MAX20024 Pincontrol support"
390b124c8bdSAndy Shevchenko	depends on MFD_MAX77620 && OF
39106351d13SLinus Walleij	select PINMUX
3921c5b7f3cSLinus Walleij	select GENERIC_PINCONF
393b124c8bdSAndy Shevchenko	help
394b124c8bdSAndy Shevchenko	  Say Y here to enable Pin control support for Maxim MAX77620 PMIC.
395b124c8bdSAndy Shevchenko	  This PMIC has 8 GPIO pins that work as GPIO as well as special
396b124c8bdSAndy Shevchenko	  function in alternate mode. This driver also configure push-pull,
397b124c8bdSAndy Shevchenko	  open drain, FPS slots etc.
39806351d13SLinus Walleij
3990f04a817SAndy Shevchenkoconfig PINCTRL_MCP23S08_I2C
4000f04a817SAndy Shevchenko	tristate
4010f04a817SAndy Shevchenko	select REGMAP_I2C
4020f04a817SAndy Shevchenko
4030f04a817SAndy Shevchenkoconfig PINCTRL_MCP23S08_SPI
4040f04a817SAndy Shevchenko	tristate
4050f04a817SAndy Shevchenko	select REGMAP_SPI
4060f04a817SAndy Shevchenko
40764ac43e6SSebastian Reichelconfig PINCTRL_MCP23S08
40864ac43e6SSebastian Reichel	tristate "Microchip MCP23xxx I/O expander"
40964ac43e6SSebastian Reichel	depends on SPI_MASTER || I2C
410e2a021d4SLinus Walleij	select GPIOLIB
41164ac43e6SSebastian Reichel	select GPIOLIB_IRQCHIP
41282039d24SSebastian Reichel	select GENERIC_PINCONF
4130f04a817SAndy Shevchenko	select PINCTRL_MCP23S08_I2C if I2C
4140f04a817SAndy Shevchenko	select PINCTRL_MCP23S08_SPI if SPI_MASTER
41564ac43e6SSebastian Reichel	help
4166ff45566SJan Kundrát	  SPI/I2C driver for Microchip MCP23S08 / MCP23S17 / MCP23S18 /
4176ff45566SJan Kundrát	  MCP23008 / MCP23017 / MCP23018 I/O expanders.
4186ff45566SJan Kundrát	  This provides a GPIO interface supporting inputs and outputs and a
4196ff45566SJan Kundrát	  corresponding interrupt-controller.
42064ac43e6SSebastian Reichel
421b124c8bdSAndy Shevchenkoconfig PINCTRL_MICROCHIP_SGPIO
4222f65923cSColin Foster	tristate "Pinctrl driver for Microsemi/Microchip Serial GPIO"
423b124c8bdSAndy Shevchenko	depends on OF
424b124c8bdSAndy Shevchenko	depends on HAS_IOMEM
425b124c8bdSAndy Shevchenko	select GPIOLIB
426b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
427b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
428b124c8bdSAndy Shevchenko	select GENERIC_PINCTRL_GROUPS
429b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
43025cb6e9aSBenjamin Boortz	select REGMAP_MMIO
431b124c8bdSAndy Shevchenko	help
432b124c8bdSAndy Shevchenko	  Support for the serial GPIO interface used on Microsemi and
433b124c8bdSAndy Shevchenko	  Microchip SoCs. By using a serial interface, the SIO
434b124c8bdSAndy Shevchenko	  controller significantly extends the number of available
435b124c8bdSAndy Shevchenko	  GPIOs with a minimum number of additional pins on the
436b124c8bdSAndy Shevchenko	  device. The primary purpose of the SIO controller is to
437b124c8bdSAndy Shevchenko	  connect control signals from SFP modules and to act as an
438b124c8bdSAndy Shevchenko	  LED controller.
439b124c8bdSAndy Shevchenko
4402f65923cSColin Foster	  If compiled as a module, the module name will be
4412f65923cSColin Foster	  pinctrl-microchip-sgpio.
4422f65923cSColin Foster
443b124c8bdSAndy Shevchenkoconfig PINCTRL_OCELOT
4444425205eSClément Léger	tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs"
445b124c8bdSAndy Shevchenko	depends on OF
446b124c8bdSAndy Shevchenko	depends on HAS_IOMEM
447b124c8bdSAndy Shevchenko	select GPIOLIB
448b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
449b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
450b124c8bdSAndy Shevchenko	select GENERIC_PINCTRL_GROUPS
451b124c8bdSAndy Shevchenko	select GENERIC_PINMUX_FUNCTIONS
452b124c8bdSAndy Shevchenko	select REGMAP_MMIO
4533f668365SColin Foster	help
4543f668365SColin Foster	  Support for the internal GPIO interfaces on Microsemi Ocelot and
4553f668365SColin Foster	  Jaguar2 SoCs.
4563f668365SColin Foster
4573f668365SColin Foster	  If conpiled as a module, the module name will be pinctrl-ocelot.
458b124c8bdSAndy Shevchenko
4590a8d3e24SLaxman Dewanganconfig PINCTRL_PALMAS
460767b8ce3SPaul Gortmaker	tristate "Pinctrl driver for the PALMAS Series MFD devices"
4610a8d3e24SLaxman Dewangan	depends on OF && MFD_PALMAS
46263ca8db7SAxel Lin	select PINMUX
4630a8d3e24SLaxman Dewangan	select GENERIC_PINCONF
4640a8d3e24SLaxman Dewangan	help
4650a8d3e24SLaxman Dewangan	  Palmas device supports the configuration of pins for different
4660a8d3e24SLaxman Dewangan	  functionality. This driver supports the pinmux, push-pull and
4670a8d3e24SLaxman Dewangan	  open drain configuration for the Palmas series devices like
4680a8d3e24SLaxman Dewangan	  TPS65913, TPS80036 etc.
4690a8d3e24SLaxman Dewangan
47037c646dcSHerve Codinaconfig PINCTRL_PEF2256
47137c646dcSHerve Codina	tristate "Lantiq PEF2256 (FALC56) pin controller driver"
47237c646dcSHerve Codina	depends on OF && FRAMER_PEF2256
47337c646dcSHerve Codina	select PINMUX
47437c646dcSHerve Codina	select PINCONF
47537c646dcSHerve Codina	select GENERIC_PINCONF
47637c646dcSHerve Codina	help
47737c646dcSHerve Codina	  This option enables the pin controller support for the Lantiq PEF2256
47837c646dcSHerve Codina	  framer, also known as FALC56.
47937c646dcSHerve Codina
48037c646dcSHerve Codina	  If unsure, say N.
48137c646dcSHerve Codina
48237c646dcSHerve Codina	  To compile this driver as a module, choose M here: the
48337c646dcSHerve Codina	  module will be called pinctrl-pef2256.
48437c646dcSHerve Codina
4852ba384e6SJoshua Hendersonconfig PINCTRL_PIC32
4862ba384e6SJoshua Henderson	bool "Microchip PIC32 pin controller driver"
4872ba384e6SJoshua Henderson	depends on OF
488575f0bcdSBrian Masney	depends on MACH_PIC32 || COMPILE_TEST
4892ba384e6SJoshua Henderson	select PINMUX
4902ba384e6SJoshua Henderson	select GENERIC_PINCONF
49146840fa8SJulian Braha	select GPIOLIB
4922ba384e6SJoshua Henderson	select GPIOLIB_IRQCHIP
4932ba384e6SJoshua Henderson	help
4942ba384e6SJoshua Henderson	  This is the pin controller and gpio driver for Microchip PIC32
4952ba384e6SJoshua Henderson	  microcontrollers. This option is selected automatically when specific
4962ba384e6SJoshua Henderson	  machine and arch are selected to build.
4972ba384e6SJoshua Henderson
4982ba384e6SJoshua Hendersonconfig PINCTRL_PIC32MZDA
4992ba384e6SJoshua Henderson	def_bool y if PIC32MZDA
5002ba384e6SJoshua Henderson	select PINCTRL_PIC32
5012ba384e6SJoshua Henderson
502b124c8bdSAndy Shevchenkoconfig PINCTRL_PISTACHIO
503b124c8bdSAndy Shevchenko	bool "IMG Pistachio SoC pinctrl driver"
504b124c8bdSAndy Shevchenko	depends on OF && (MIPS || COMPILE_TEST)
505b124c8bdSAndy Shevchenko	depends on GPIOLIB
506b124c8bdSAndy Shevchenko	select PINMUX
507b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
508b124c8bdSAndy Shevchenko	select GPIOLIB_IRQCHIP
509b124c8bdSAndy Shevchenko	help
510b124c8bdSAndy Shevchenko	  This support pinctrl and GPIO driver for IMG Pistachio SoC.
511b124c8bdSAndy Shevchenko
512b124c8bdSAndy Shevchenkoconfig PINCTRL_RK805
513b124c8bdSAndy Shevchenko	tristate "Pinctrl and GPIO driver for RK805 PMIC"
514c20e8c5bSSebastian Reichel	depends on MFD_RK8XX
515b124c8bdSAndy Shevchenko	select GPIOLIB
516b124c8bdSAndy Shevchenko	select PINMUX
517b124c8bdSAndy Shevchenko	select GENERIC_PINCONF
518b124c8bdSAndy Shevchenko	help
519b124c8bdSAndy Shevchenko	  This selects the pinctrl driver for RK805.
520b124c8bdSAndy Shevchenko
521b58f0273SJames Hoganconfig PINCTRL_ROCKCHIP
522b58f0273SJames Hogan	tristate "Rockchip gpio and pinctrl driver"
523b58f0273SJames Hogan	depends on ARCH_ROCKCHIP || COMPILE_TEST
524b58f0273SJames Hogan	depends on OF
525b58f0273SJames Hogan	select GPIOLIB
5263bece55aSLinus Walleij	select PINMUX
5273bece55aSLinus Walleij	select GENERIC_PINCONF
52898da3529SLinus Walleij	select GENERIC_IRQ_CHIP
52998da3529SLinus Walleij	select MFD_SYSCON
530dc0b1aa3SLinus Walleij	default ARCH_ROCKCHIP
53145f034efSLinus Walleij	help
532b124c8bdSAndy Shevchenko          This support pinctrl and GPIO driver for Rockchip SoCs.
533f0b9a7e5SThomas Abraham
534eb524cb6SPeng Fanconfig PINCTRL_SCMI
535eb524cb6SPeng Fan	tristate "Pinctrl driver using SCMI protocol interface"
536eb524cb6SPeng Fan	depends on ARM_SCMI_PROTOCOL || COMPILE_TEST
537eb524cb6SPeng Fan	select PINMUX
538eb524cb6SPeng Fan	select GENERIC_PINCONF
539eb524cb6SPeng Fan	help
540eb524cb6SPeng Fan	  This driver provides support for pinctrl which is controlled
541eb524cb6SPeng Fan	  by firmware that implements the SCMI interface.
542eb524cb6SPeng Fan	  It uses SCMI Message Protocol to interact with the
543eb524cb6SPeng Fan	  firmware providing all the pinctrl controls.
544eb524cb6SPeng Fan
545af99a750SHeiko Stuebnerconfig PINCTRL_SINGLE
546af99a750SHeiko Stuebner	tristate "One-register-per-pin type device tree based pinctrl driver"
547af99a750SHeiko Stuebner	depends on OF
548af99a750SHeiko Stuebner	depends on HAS_IOMEM
54961dd7261STomasz Figa	select GENERIC_PINCTRL_GROUPS
55061dd7261STomasz Figa	select GENERIC_PINMUX_FUNCTIONS
55161dd7261STomasz Figa	select GENERIC_PINCONF
55261dd7261STomasz Figa	help
55361dd7261STomasz Figa	  This selects the device tree based generic pinctrl driver.
55406763c74SThomas Petazzoni
555ca402d37SLinus Walleijconfig PINCTRL_ST
556ca402d37SLinus Walleij	bool
557ca402d37SLinus Walleij	depends on OF
55830574f0dSThomas Abraham	select PINMUX
559cbc351abSArnd Bergmann	select PINCONF
560924da314SAxel Lin	select GPIOLIB_IRQCHIP
56130574f0dSThomas Abraham
56230574f0dSThomas Abrahamconfig PINCTRL_STMFX
56330574f0dSThomas Abraham	tristate "STMicroelectronics STMFX GPIO expander pinctrl driver"
564fd9490bdSTimur Tabi	depends on OF
5652744e8afSLinus Walleij	depends on I2C
566a12946beSRandy Dunlap	depends on HAS_IOMEM
56743b169dbSThomas Abraham	select GENERIC_PINCONF
56846840fa8SJulian Braha	select GPIOLIB
569924da314SAxel Lin	select GPIOLIB_IRQCHIP
57043b169dbSThomas Abraham	select MFD_STMFX
57143b169dbSThomas Abraham	help
5727e8d9415SSebastian Hesselbarth	  Driver for STMicroelectronics Multi-Function eXpander (STMFX)
5737e8d9415SSebastian Hesselbarth	  GPIO expander.
5747e8d9415SSebastian Hesselbarth	  This provides a GPIO interface supporting inputs and outputs,
5757e8d9415SSebastian Hesselbarth	  and configuring push-pull, open-drain, and can also be used as
5767e8d9415SSebastian Hesselbarth	  interrupt-controller.
5777e8d9415SSebastian Hesselbarth
578b124c8bdSAndy Shevchenkoconfig PINCTRL_SX150X
579fe2e8f17SFange Zhang	tristate "Semtech SX150x I2C GPIO expander pinctrl driver"
580dbbb19b8STsz Shan Chan	depends on I2C
5812744e8afSLinus Walleij	select PINMUX
582b124c8bdSAndy Shevchenko	select PINCONF
5832744e8afSLinus Walleij	select GENERIC_PINCONF
584b124c8bdSAndy Shevchenko	select GPIOLIB
585485dba27SMasahiro Yamada	select GPIOLIB_IRQCHIP
586b124c8bdSAndy Shevchenko	select REGMAP
587b17f2f9bSRay Jui	help
588b124c8bdSAndy Shevchenko	  Say Y here to provide support for Semtech SX150x-series I2C
589b124c8bdSAndy Shevchenko	  GPIO expanders as pinctrl module.
590b124c8bdSAndy Shevchenko	  Compatible models include:
591b124c8bdSAndy Shevchenko	  - 8 bits:  sx1508q, sx1502q
592b124c8bdSAndy Shevchenko	  - 16 bits: sx1509q, sx1506q
5932744e8afSLinus Walleij
594b124c8bdSAndy Shevchenkoconfig PINCTRL_TB10X
5951982621dSKrzysztof Kozlowski	bool "Pinctrl for TB10X" if COMPILE_TEST
5961982621dSKrzysztof Kozlowski	depends on OF && ARC_PLAT_TB10X || COMPILE_TEST
597b124c8bdSAndy Shevchenko	select GPIOLIB
598b124c8bdSAndy Shevchenko
599901b277eSEsteban Blancconfig PINCTRL_TPS6594
600901b277eSEsteban Blanc	tristate "Pinctrl and GPIO driver for TI TPS6594 PMIC"
601901b277eSEsteban Blanc	depends on OF && MFD_TPS6594
602901b277eSEsteban Blanc	default MFD_TPS6594
603901b277eSEsteban Blanc	select PINMUX
604901b277eSEsteban Blanc	select GPIOLIB
605901b277eSEsteban Blanc	select REGMAP
606901b277eSEsteban Blanc	select GPIO_REGMAP
607901b277eSEsteban Blanc	select GENERIC_PINCONF
608901b277eSEsteban Blanc	help
609901b277eSEsteban Blanc	  Say Y to select the pinmuxing and GPIOs driver for the TPS6594
610901b277eSEsteban Blanc	  PMICs chip family.
611901b277eSEsteban Blanc
612901b277eSEsteban Blanc	  This driver can also be built as a module
613901b277eSEsteban Blanc	  called tps6594-pinctrl.
614901b277eSEsteban Blanc
615bed5cd6fSEmil Renner Berthingconfig PINCTRL_TH1520
616bed5cd6fSEmil Renner Berthing	tristate "Pinctrl driver for the T-Head TH1520 SoC"
617bed5cd6fSEmil Renner Berthing	depends on ARCH_THEAD || COMPILE_TEST
61860ba5da2SArnd Bergmann	depends on OF
619bed5cd6fSEmil Renner Berthing	select GENERIC_PINMUX_FUNCTIONS
620bed5cd6fSEmil Renner Berthing	select GENERIC_PINCONF
621bed5cd6fSEmil Renner Berthing	select PINMUX
622bed5cd6fSEmil Renner Berthing	help
623bed5cd6fSEmil Renner Berthing	  This is the driver for the pin controller blocks on the
624bed5cd6fSEmil Renner Berthing	  T-Head TH1520 SoC.
625bed5cd6fSEmil Renner Berthing
626bed5cd6fSEmil Renner Berthing	  This driver is needed for RISC-V development boards like
627bed5cd6fSEmil Renner Berthing	  the BeagleV Ahead and the LicheePi 4A.
628bed5cd6fSEmil Renner Berthing
629dca2f73cSThomas Richardconfig PINCTRL_UPBOARD
630dca2f73cSThomas Richard	tristate "AAeon UP board FPGA pin controller"
631dca2f73cSThomas Richard	depends on MFD_UPBOARD_FPGA
632dca2f73cSThomas Richard	select PINMUX
633dca2f73cSThomas Richard	select GENERIC_PINCTRL_GROUPS
634dca2f73cSThomas Richard	select GENERIC_PINMUX_FUNCTIONS
635dca2f73cSThomas Richard	select GPIOLIB
636dca2f73cSThomas Richard	select GPIO_AGGREGATOR
637dca2f73cSThomas Richard	help
638dca2f73cSThomas Richard	  Pin controller for the FPGA GPIO lines on UP boards. Due to the
639dca2f73cSThomas Richard	  hardware layout, the driver controls the FPGA pins in tandem with
640dca2f73cSThomas Richard	  their corresponding Intel SoC GPIOs.
641dca2f73cSThomas Richard
642dca2f73cSThomas Richard	  Currently supported:
643dca2f73cSThomas Richard	  - UP Squared
644dca2f73cSThomas Richard
645dca2f73cSThomas Richard	  To compile this driver as a module, choose M here: the module
646dca2f73cSThomas Richard	  will be called pinctrl-upboard.
647dca2f73cSThomas Richard
6482744e8afSLinus Walleijconfig PINCTRL_ZYNQ
6492744e8afSLinus Walleij	bool "Pinctrl driver for Xilinx Zynq"
6501982621dSKrzysztof Kozlowski	depends on ARCH_ZYNQ || COMPILE_TEST
651c0d03cdfSArnd Bergmann	depends on OF
6522744e8afSLinus Walleij	select PINMUX
6532744e8afSLinus Walleij	select GENERIC_PINCONF
6542744e8afSLinus Walleij	help
6552744e8afSLinus Walleij	  This selects the pinctrl driver for Xilinx Zynq.
6562744e8afSLinus Walleij
6578b242ca7SSai Krishna Potthuriconfig PINCTRL_ZYNQMP
6588b242ca7SSai Krishna Potthuri	tristate "Pinctrl driver for Xilinx ZynqMP"
6598b242ca7SSai Krishna Potthuri	depends on ZYNQMP_FIRMWARE
6608b242ca7SSai Krishna Potthuri	select PINMUX
6618b242ca7SSai Krishna Potthuri	select GENERIC_PINCONF
6628b242ca7SSai Krishna Potthuri	default ZYNQMP_FIRMWARE
6638b242ca7SSai Krishna Potthuri	help
6648b242ca7SSai Krishna Potthuri	  This selects the pinctrl driver for Xilinx ZynqMP platform.
6658b242ca7SSai Krishna Potthuri	  This driver will query the pin information from the firmware
6668b242ca7SSai Krishna Potthuri	  and allow configuring the pins.
6678b242ca7SSai Krishna Potthuri	  Configuration can include the mux function to select on those
6688b242ca7SSai Krishna Potthuri	  pin(s)/group(s), and various pin configuration parameters
6698b242ca7SSai Krishna Potthuri	  such as pull-up, slew rate, etc.
670fa99e701SSai Krishna Potthuri	  This driver can also be built as a module. If so, the module
671fa99e701SSai Krishna Potthuri	  will be called pinctrl-zynqmp.
6728b242ca7SSai Krishna Potthuri
673d11f9328SAsmaa Mnebhiconfig PINCTRL_MLXBF3
674d11f9328SAsmaa Mnebhi	tristate "NVIDIA BlueField-3 SoC Pinctrl driver"
675d11f9328SAsmaa Mnebhi	depends on (MELLANOX_PLATFORM && ARM64) || COMPILE_TEST
676d11f9328SAsmaa Mnebhi	select PINMUX
677d11f9328SAsmaa Mnebhi	select GPIOLIB
678d11f9328SAsmaa Mnebhi	select GPIOLIB_IRQCHIP
679d11f9328SAsmaa Mnebhi	help
680d11f9328SAsmaa Mnebhi	  Say Y to select the pinctrl driver for BlueField-3 SoCs.
681d11f9328SAsmaa Mnebhi	  This pin controller allows selecting the mux function for
682d11f9328SAsmaa Mnebhi	  each pin. This driver can also be built as a module called
683d11f9328SAsmaa Mnebhi	  pinctrl-mlxbf3.
684d11f9328SAsmaa Mnebhi
6854732f079SAndrea della Portaconfig PINCTRL_RP1
6864732f079SAndrea della Porta	tristate "Pinctrl driver for RP1"
6874732f079SAndrea della Porta	depends on MISC_RP1
6884732f079SAndrea della Porta	default MISC_RP1
6894732f079SAndrea della Porta	select PINMUX
6904732f079SAndrea della Porta	select PINCONF
6914732f079SAndrea della Porta	select GENERIC_PINCONF
6924732f079SAndrea della Porta	help
6934732f079SAndrea della Porta	  Enable the gpio and pinctrl/mux driver for RaspberryPi RP1
6944732f079SAndrea della Porta	  multi function device.
6954732f079SAndrea della Porta
6962242ddfbSManivannan Sadhasivamsource "drivers/pinctrl/actions/Kconfig"
69727aa791dSChristian Marangisource "drivers/pinctrl/airoha/Kconfig"
6984d3d0e42SAndrew Jefferysource "drivers/pinctrl/aspeed/Kconfig"
6992744e8afSLinus Walleijsource "drivers/pinctrl/bcm/Kconfig"
7002744e8afSLinus Walleijsource "drivers/pinctrl/berlin/Kconfig"
701b124c8bdSAndy Shevchenkosource "drivers/pinctrl/cirrus/Kconfig"
702920500c5SGary Yangsource "drivers/pinctrl/cix/Kconfig"
7032744e8afSLinus Walleijsource "drivers/pinctrl/freescale/Kconfig"
7042744e8afSLinus Walleijsource "drivers/pinctrl/intel/Kconfig"
705b124c8bdSAndy Shevchenkosource "drivers/pinctrl/mediatek/Kconfig"
706b124c8bdSAndy Shevchenkosource "drivers/pinctrl/meson/Kconfig"
70795c1762aSConor Dooleysource "drivers/pinctrl/microchip/Kconfig"
7082744e8afSLinus Walleijsource "drivers/pinctrl/mvebu/Kconfig"
7093a198059SLinus Walleijsource "drivers/pinctrl/nomadik/Kconfig"
7103b588e43STomer Maimonsource "drivers/pinctrl/nuvoton/Kconfig"
711fd84aaa8SChester Linsource "drivers/pinctrl/nxp/Kconfig"
7124b15ec9dSRobert Jarzmiksource "drivers/pinctrl/pxa/Kconfig"
71369b78b8dSLinus Walleijsource "drivers/pinctrl/qcom/Kconfig"
714e99ce780STzuyi Changsource "drivers/pinctrl/realtek/Kconfig"
715077365a9SGeert Uytterhoevensource "drivers/pinctrl/renesas/Kconfig"
716ebe629a3SSachin Kamatsource "drivers/pinctrl/samsung/Kconfig"
717a29d8e93SInochi Amaotosource "drivers/pinctrl/sophgo/Kconfig"
718a83c29e1SYixun Lansource "drivers/pinctrl/spacemit/Kconfig"
7192744e8afSLinus Walleijsource "drivers/pinctrl/spear/Kconfig"
72041d32cfcSBaolin Wangsource "drivers/pinctrl/sprd/Kconfig"
721ba7fdf88SJianlong Huangsource "drivers/pinctrl/starfive/Kconfig"
722aceb16dcSMaxime Coquelinsource "drivers/pinctrl/stm32/Kconfig"
723aa74c44bSWells Lusource "drivers/pinctrl/sunplus/Kconfig"
7245f910777SMaxime Ripardsource "drivers/pinctrl/sunxi/Kconfig"
72525cbac77SMasahiro Yamadasource "drivers/pinctrl/tegra/Kconfig"
726003910ebSNishanth Menonsource "drivers/pinctrl/ti/Kconfig"
727cb703792SJia Wangsource "drivers/pinctrl/ultrarisc/Kconfig"
7286e908892SMasahiro Yamadasource "drivers/pinctrl/uniphier/Kconfig"
729a68a7844SNobuhiro Iwamatsusource "drivers/pinctrl/visconti/Kconfig"
730b124c8bdSAndy Shevchenkosource "drivers/pinctrl/vt8500/Kconfig"
7311948d5c5SRahul Tanwar
732d219b924SPhil Reidendif
733