xref: /linux/drivers/pinctrl/Kconfig (revision 0c49cd295d42d0032af11d55e2140dbec11dc8d0)
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_BCM2835
71	bool
72	select PINMUX
73	select PINCONF
74
75config PINCTRL_BCM281XX
76	bool "Broadcom BCM281xx pinctrl driver"
77	depends on OF && (ARCH_BCM_MOBILE || COMPILE_TEST)
78	select PINMUX
79	select PINCONF
80	select GENERIC_PINCONF
81	select REGMAP_MMIO
82	help
83	  Say Y here to support Broadcom BCM281xx pinctrl driver, which is used
84	  for the BCM281xx SoC family, including BCM11130, BCM11140, BCM11351,
85	  BCM28145, and BCM28155 SoCs.  This driver requires the pinctrl
86	  framework.  GPIO is provided by a separate GPIO driver.
87
88config PINCTRL_LANTIQ
89	bool
90	depends on LANTIQ
91	select PINMUX
92	select PINCONF
93
94config PINCTRL_FALCON
95	bool
96	depends on SOC_FALCON
97	depends on PINCTRL_LANTIQ
98
99config PINCTRL_ROCKCHIP
100	bool
101	select PINMUX
102	select GENERIC_PINCONF
103	select GENERIC_IRQ_CHIP
104	select MFD_SYSCON
105
106config PINCTRL_SINGLE
107	tristate "One-register-per-pin type device tree based pinctrl driver"
108	depends on OF
109	select PINMUX
110	select PINCONF
111	select GENERIC_PINCONF
112	help
113	  This selects the device tree based generic pinctrl driver.
114
115config PINCTRL_SIRF
116	bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
117	depends on ARCH_SIRF
118	select PINMUX
119	select GPIOLIB_IRQCHIP
120
121config PINCTRL_ST
122	bool
123	depends on OF
124	select PINMUX
125	select PINCONF
126	select GPIOLIB_IRQCHIP
127
128config PINCTRL_TEGRA
129	bool
130	select PINMUX
131	select PINCONF
132
133config PINCTRL_TEGRA20
134	bool
135	select PINCTRL_TEGRA
136
137config PINCTRL_TEGRA30
138	bool
139	select PINCTRL_TEGRA
140
141config PINCTRL_TEGRA114
142	bool
143	select PINCTRL_TEGRA
144
145config PINCTRL_TEGRA124
146	bool
147	select PINCTRL_TEGRA
148
149config PINCTRL_TEGRA_XUSB
150	def_bool y if ARCH_TEGRA
151	select GENERIC_PHY
152	select PINCONF
153	select PINMUX
154
155config PINCTRL_TZ1090
156	bool "Toumaz Xenif TZ1090 pin control driver"
157	depends on SOC_TZ1090
158	select PINMUX
159	select GENERIC_PINCONF
160
161config PINCTRL_TZ1090_PDC
162	bool "Toumaz Xenif TZ1090 PDC pin control driver"
163	depends on SOC_TZ1090
164	select PINMUX
165	select PINCONF
166
167config PINCTRL_U300
168	bool "U300 pin controller driver"
169	depends on ARCH_U300
170	select PINMUX
171	select GENERIC_PINCONF
172
173config PINCTRL_COH901
174	bool "ST-Ericsson U300 COH 901 335/571 GPIO"
175	depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
176	select GPIOLIB_IRQCHIP
177	help
178	  Say yes here to support GPIO interface on ST-Ericsson U300.
179	  The names of the two IP block variants supported are
180	  COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
181	  ports of 8 GPIO pins each.
182
183config PINCTRL_PALMAS
184	bool "Pinctrl driver for the PALMAS Series MFD devices"
185	depends on OF && MFD_PALMAS
186	select PINMUX
187	select GENERIC_PINCONF
188	help
189	  Palmas device supports the configuration of pins for different
190	  functionality. This driver supports the pinmux, push-pull and
191	  open drain configuration for the Palmas series devices like
192	  TPS65913, TPS80036 etc.
193
194source "drivers/pinctrl/berlin/Kconfig"
195source "drivers/pinctrl/freescale/Kconfig"
196source "drivers/pinctrl/intel/Kconfig"
197source "drivers/pinctrl/mvebu/Kconfig"
198source "drivers/pinctrl/nomadik/Kconfig"
199source "drivers/pinctrl/qcom/Kconfig"
200source "drivers/pinctrl/samsung/Kconfig"
201source "drivers/pinctrl/sh-pfc/Kconfig"
202source "drivers/pinctrl/spear/Kconfig"
203source "drivers/pinctrl/sunxi/Kconfig"
204source "drivers/pinctrl/vt8500/Kconfig"
205
206config PINCTRL_XWAY
207	bool
208	depends on SOC_TYPE_XWAY
209	depends on PINCTRL_LANTIQ
210
211config PINCTRL_TB10X
212	bool
213	depends on ARC_PLAT_TB10X
214
215endmenu
216
217endif
218