• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# PINCTRL infrastructure and drivers
3#
4
5config PINCTRL
6	bool
7
8menu "Pin controllers"
9	depends on PINCTRL
10
11config PINMUX
12	bool "Support pin multiplexing controllers" if COMPILE_TEST
13
14config PINCONF
15	bool "Support pin configuration controllers" if COMPILE_TEST
16
17config GENERIC_PINCONF
18	bool
19	select PINCONF
20
21config DEBUG_PINCTRL
22	bool "Debug PINCTRL calls"
23	depends on DEBUG_KERNEL
24	help
25	  Say Y here to add some extra checks and diagnostics to PINCTRL calls.
26
27config PINCTRL_ADI2
28	bool "ADI pin controller driver"
29	depends on (BF54x || BF60x)
30	depends on !GPIO_ADI
31	select PINMUX
32	select IRQ_DOMAIN
33	help
34	  This is the pin controller and gpio driver for ADI BF54x, BF60x and
35	  future processors. This option is selected automatically when specific
36	  machine and arch are selected to build.
37
38config PINCTRL_AS3722
39	tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
40	depends on MFD_AS3722 && GPIOLIB
41	select PINMUX
42	select GENERIC_PINCONF
43	help
44	  AS3722 device supports the configuration of GPIO pins for different
45	  functionality. This driver supports the pinmux, push-pull and
46	  open drain configuration for the GPIO pins of AS3722 devices. It also
47	  supports the GPIO functionality through gpiolib.
48
49config PINCTRL_BF54x
50	def_bool y if BF54x
51	select PINCTRL_ADI2
52
53config PINCTRL_BF60x
54	def_bool y if BF60x
55	select PINCTRL_ADI2
56
57config PINCTRL_AT91
58	bool "AT91 pinctrl driver"
59	depends on OF
60	depends on ARCH_AT91
61	select PINMUX
62	select PINCONF
63	select GPIOLIB
64	select OF_GPIO
65	select GPIOLIB_IRQCHIP
66	help
67	  Say Y here to enable the at91 pinctrl driver
68
69config PINCTRL_AT91PIO4
70	bool "AT91 PIO4 pinctrl driver"
71	depends on OF
72	depends on ARCH_AT91
73	select PINMUX
74	select GENERIC_PINCONF
75	select GPIOLIB
76	select GPIOLIB_IRQCHIP
77	select OF_GPIO
78	help
79	  Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
80	  controller available on sama5d2 SoC.
81
82config PINCTRL_AMD
83	tristate "AMD GPIO pin control"
84	depends on GPIOLIB
85	select GPIOLIB_IRQCHIP
86	select PINMUX
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_OXNAS
135	bool
136	depends on OF
137	select PINMUX
138	select PINCONF
139	select GENERIC_PINCONF
140	select GPIOLIB
141	select OF_GPIO
142	select GPIOLIB_IRQCHIP
143	select MFD_SYSCON
144
145config PINCTRL_ROCKCHIP
146	bool
147	select PINMUX
148	select GENERIC_PINCONF
149	select GENERIC_IRQ_CHIP
150	select MFD_SYSCON
151
152config PINCTRL_SINGLE
153	tristate "One-register-per-pin type device tree based pinctrl driver"
154	depends on OF
155	select PINMUX
156	select PINCONF
157	select GENERIC_PINCONF
158	help
159	  This selects the device tree based generic pinctrl driver.
160
161config PINCTRL_SIRF
162	bool "CSR SiRFprimaII pin controller driver"
163	depends on ARCH_SIRF
164	select PINMUX
165	select PINCONF
166	select GENERIC_PINCONF
167	select GPIOLIB_IRQCHIP
168
169config PINCTRL_PISTACHIO
170	def_bool y if MACH_PISTACHIO
171	depends on GPIOLIB
172	select PINMUX
173	select GENERIC_PINCONF
174	select GPIOLIB_IRQCHIP
175	select OF_GPIO
176
177config PINCTRL_ST
178	bool
179	depends on OF
180	select PINMUX
181	select PINCONF
182	select GPIOLIB_IRQCHIP
183
184config PINCTRL_TZ1090
185	bool "Toumaz Xenif TZ1090 pin control driver"
186	depends on SOC_TZ1090
187	select PINMUX
188	select GENERIC_PINCONF
189
190config PINCTRL_TZ1090_PDC
191	bool "Toumaz Xenif TZ1090 PDC pin control driver"
192	depends on SOC_TZ1090
193	select PINMUX
194	select PINCONF
195
196config PINCTRL_U300
197	bool "U300 pin controller driver"
198	depends on ARCH_U300
199	select PINMUX
200	select GENERIC_PINCONF
201
202config PINCTRL_COH901
203	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
204	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
205	select GPIOLIB_IRQCHIP
206	help
207	  Say yes here to support GPIO interface on ST-Ericsson U300.
208	  The names of the two IP block variants supported are
209	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
210	  ports of 8 GPIO pins each.
211
212config PINCTRL_MAX77620
213	tristate "MAX77620/MAX20024 Pincontrol support"
214	depends on MFD_MAX77620
215	select PINMUX
216	select GENERIC_PINCONF
217	help
218	  Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
219	  This PMIC has 8 GPIO pins that work as GPIO as well as special
220	  function in alternate mode. This driver also configure push-pull,
221	  open drain, FPS slots etc.
222
223config PINCTRL_PALMAS
224	tristate "Pinctrl driver for the PALMAS Series MFD devices"
225	depends on OF && MFD_PALMAS
226	select PINMUX
227	select GENERIC_PINCONF
228	help
229	  Palmas device supports the configuration of pins for different
230	  functionality. This driver supports the pinmux, push-pull and
231	  open drain configuration for the Palmas series devices like
232	  TPS65913, TPS80036 etc.
233
234config PINCTRL_PIC32
235	bool "Microchip PIC32 pin controller driver"
236	depends on OF
237	depends on MACH_PIC32
238	select PINMUX
239	select GENERIC_PINCONF
240	select GPIOLIB_IRQCHIP
241	select OF_GPIO
242	help
243	  This is the pin controller and gpio driver for Microchip PIC32
244	  microcontrollers. This option is selected automatically when specific
245	  machine and arch are selected to build.
246
247config PINCTRL_PIC32MZDA
248	def_bool y if PIC32MZDA
249	select PINCTRL_PIC32
250
251config PINCTRL_ZYNQ
252	bool "Pinctrl driver for Xilinx Zynq"
253	depends on ARCH_ZYNQ
254	select PINMUX
255	select GENERIC_PINCONF
256	help
257	  This selects the pinctrl driver for Xilinx Zynq.
258
259source "drivers/pinctrl/aspeed/Kconfig"
260source "drivers/pinctrl/bcm/Kconfig"
261source "drivers/pinctrl/berlin/Kconfig"
262source "drivers/pinctrl/freescale/Kconfig"
263source "drivers/pinctrl/intel/Kconfig"
264source "drivers/pinctrl/mvebu/Kconfig"
265source "drivers/pinctrl/nomadik/Kconfig"
266source "drivers/pinctrl/pxa/Kconfig"
267source "drivers/pinctrl/qcom/Kconfig"
268source "drivers/pinctrl/samsung/Kconfig"
269source "drivers/pinctrl/sh-pfc/Kconfig"
270source "drivers/pinctrl/spear/Kconfig"
271source "drivers/pinctrl/stm32/Kconfig"
272source "drivers/pinctrl/sunxi/Kconfig"
273source "drivers/pinctrl/tegra/Kconfig"
274source "drivers/pinctrl/uniphier/Kconfig"
275source "drivers/pinctrl/vt8500/Kconfig"
276source "drivers/pinctrl/mediatek/Kconfig"
277
278config PINCTRL_XWAY
279	bool
280	depends on SOC_TYPE_XWAY
281	depends on PINCTRL_LANTIQ
282
283config PINCTRL_TB10X
284	bool
285	depends on OF && ARC_PLAT_TB10X
286	select GPIOLIB
287
288endmenu
289