xref: /openbmc/linux/drivers/pinctrl/Kconfig (revision 9cfc5c90)
1#
2# PINCTRL infrastructure and drivers
3#
4
5config PINCTRL
6	bool
7
8if PINCTRL
9
10menu "Pin controllers"
11	depends on PINCTRL
12
13config PINMUX
14	bool "Support pin multiplexing controllers" if COMPILE_TEST
15
16config PINCONF
17	bool "Support pin configuration controllers" if COMPILE_TEST
18
19config GENERIC_PINCONF
20	bool
21	select PINCONF
22
23config DEBUG_PINCTRL
24	bool "Debug PINCTRL calls"
25	depends on DEBUG_KERNEL
26	help
27	  Say Y here to add some extra checks and diagnostics to PINCTRL calls.
28
29config PINCTRL_ADI2
30	bool "ADI pin controller driver"
31	depends on BLACKFIN
32	select PINMUX
33	select IRQ_DOMAIN
34	help
35	  This is the pin controller and gpio driver for ADI BF54x, BF60x and
36	  future processors. This option is selected automatically when specific
37	  machine and arch are selected to build.
38
39config PINCTRL_AS3722
40	bool "Pinctrl and GPIO driver for ams AS3722 PMIC"
41	depends on MFD_AS3722 && GPIOLIB
42	select PINMUX
43	select GENERIC_PINCONF
44	help
45	  AS3722 device supports the configuration of GPIO pins for different
46	  functionality. This driver supports the pinmux, push-pull and
47	  open drain configuration for the GPIO pins of AS3722 devices. It also
48	  supports the GPIO functionality through gpiolib.
49
50config PINCTRL_BF54x
51	def_bool y if BF54x
52	select PINCTRL_ADI2
53
54config PINCTRL_BF60x
55	def_bool y if BF60x
56	select PINCTRL_ADI2
57
58config PINCTRL_AT91
59	bool "AT91 pinctrl driver"
60	depends on OF
61	depends on ARCH_AT91
62	select PINMUX
63	select PINCONF
64	select GPIOLIB
65	select OF_GPIO
66	select GPIOLIB_IRQCHIP
67	help
68	  Say Y here to enable the at91 pinctrl driver
69
70config PINCTRL_AT91PIO4
71	bool "AT91 PIO4 pinctrl driver"
72	depends on OF
73	depends on ARCH_AT91
74	select PINMUX
75	select GENERIC_PINCONF
76	select GPIOLIB
77	select GPIOLIB_IRQCHIP
78	select OF_GPIO
79	help
80	  Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
81	  controller available on sama5d2 SoC.
82
83config PINCTRL_AMD
84	bool "AMD GPIO pin control"
85	depends on GPIOLIB
86	select GPIOLIB_IRQCHIP
87	select PINCONF
88	select GENERIC_PINCONF
89	help
90	  driver for memory mapped GPIO functionality on AMD platforms
91	  (x86 or arm).Most pins are usually muxed to some other
92	  functionality by firmware,so only a small amount is available
93	  for gpio use.
94
95	  Requires ACPI/FDT device enumeration code to set up a platform
96	  device.
97
98config PINCTRL_DIGICOLOR
99	bool
100	depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
101	select PINMUX
102	select GENERIC_PINCONF
103
104config PINCTRL_LANTIQ
105	bool
106	depends on LANTIQ
107	select PINMUX
108	select PINCONF
109
110config PINCTRL_LPC18XX
111	bool "NXP LPC18XX/43XX SCU pinctrl driver"
112	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
113	default ARCH_LPC18XX
114	select PINMUX
115	select GENERIC_PINCONF
116	help
117	  Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
118
119config PINCTRL_FALCON
120	bool
121	depends on SOC_FALCON
122	depends on PINCTRL_LANTIQ
123
124config PINCTRL_MESON
125	bool
126	depends on OF
127	select PINMUX
128	select PINCONF
129	select GENERIC_PINCONF
130	select GPIOLIB
131	select OF_GPIO
132	select REGMAP_MMIO
133
134config PINCTRL_ROCKCHIP
135	bool
136	select PINMUX
137	select GENERIC_PINCONF
138	select GENERIC_IRQ_CHIP
139	select MFD_SYSCON
140
141config PINCTRL_SINGLE
142	tristate "One-register-per-pin type device tree based pinctrl driver"
143	depends on OF
144	select PINMUX
145	select PINCONF
146	select GENERIC_PINCONF
147	help
148	  This selects the device tree based generic pinctrl driver.
149
150config PINCTRL_SIRF
151	bool "CSR SiRFprimaII pin controller driver"
152	depends on ARCH_SIRF
153	select PINMUX
154	select PINCONF
155	select GENERIC_PINCONF
156	select GPIOLIB_IRQCHIP
157
158config PINCTRL_PISTACHIO
159	def_bool y if MACH_PISTACHIO
160	depends on GPIOLIB
161	select PINMUX
162	select GENERIC_PINCONF
163	select GPIOLIB_IRQCHIP
164	select OF_GPIO
165
166config PINCTRL_ST
167	bool
168	depends on OF
169	select PINMUX
170	select PINCONF
171	select GPIOLIB_IRQCHIP
172
173config PINCTRL_TEGRA
174	bool
175	select PINMUX
176	select PINCONF
177
178config PINCTRL_TEGRA20
179	bool
180	select PINCTRL_TEGRA
181
182config PINCTRL_TEGRA30
183	bool
184	select PINCTRL_TEGRA
185
186config PINCTRL_TEGRA114
187	bool
188	select PINCTRL_TEGRA
189
190config PINCTRL_TEGRA124
191	bool
192	select PINCTRL_TEGRA
193
194config PINCTRL_TEGRA210
195	bool
196	select PINCTRL_TEGRA
197
198config PINCTRL_TEGRA_XUSB
199	def_bool y if ARCH_TEGRA
200	select GENERIC_PHY
201	select PINCONF
202	select PINMUX
203
204config PINCTRL_TZ1090
205	bool "Toumaz Xenif TZ1090 pin control driver"
206	depends on SOC_TZ1090
207	select PINMUX
208	select GENERIC_PINCONF
209
210config PINCTRL_TZ1090_PDC
211	bool "Toumaz Xenif TZ1090 PDC pin control driver"
212	depends on SOC_TZ1090
213	select PINMUX
214	select PINCONF
215
216config PINCTRL_U300
217	bool "U300 pin controller driver"
218	depends on ARCH_U300
219	select PINMUX
220	select GENERIC_PINCONF
221
222config PINCTRL_COH901
223	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
224	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
225	select GPIOLIB_IRQCHIP
226	help
227	  Say yes here to support GPIO interface on ST-Ericsson U300.
228	  The names of the two IP block variants supported are
229	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
230	  ports of 8 GPIO pins each.
231
232config PINCTRL_PALMAS
233	bool "Pinctrl driver for the PALMAS Series MFD devices"
234	depends on OF && MFD_PALMAS
235	select PINMUX
236	select GENERIC_PINCONF
237	help
238	  Palmas device supports the configuration of pins for different
239	  functionality. This driver supports the pinmux, push-pull and
240	  open drain configuration for the Palmas series devices like
241	  TPS65913, TPS80036 etc.
242
243config PINCTRL_ZYNQ
244	bool "Pinctrl driver for Xilinx Zynq"
245	depends on ARCH_ZYNQ
246	select PINMUX
247	select GENERIC_PINCONF
248	help
249	  This selectes the pinctrl driver for Xilinx Zynq.
250
251source "drivers/pinctrl/bcm/Kconfig"
252source "drivers/pinctrl/berlin/Kconfig"
253source "drivers/pinctrl/freescale/Kconfig"
254source "drivers/pinctrl/intel/Kconfig"
255source "drivers/pinctrl/mvebu/Kconfig"
256source "drivers/pinctrl/nomadik/Kconfig"
257source "drivers/pinctrl/qcom/Kconfig"
258source "drivers/pinctrl/samsung/Kconfig"
259source "drivers/pinctrl/sh-pfc/Kconfig"
260source "drivers/pinctrl/spear/Kconfig"
261source "drivers/pinctrl/sunxi/Kconfig"
262source "drivers/pinctrl/uniphier/Kconfig"
263source "drivers/pinctrl/vt8500/Kconfig"
264source "drivers/pinctrl/mediatek/Kconfig"
265
266config PINCTRL_XWAY
267	bool
268	depends on SOC_TYPE_XWAY
269	depends on PINCTRL_LANTIQ
270
271config PINCTRL_TB10X
272	bool
273	depends on OF && ARC_PLAT_TB10X
274	select GPIOLIB
275
276endmenu
277
278endif
279