blob: e01976fb11751305ca6aa0270b70a37c95db7b61 [file] [log] [blame]
Linus Walleij2744e8a2011-05-02 20:50:54 +02001#
2# PINCTRL infrastructure and drivers
3#
4
Linus Walleij45f034e2011-11-05 21:28:46 +01005config PINCTRL
6 bool
Linus Walleij2744e8a2011-05-02 20:50:54 +02007
8if PINCTRL
9
Linus Walleij45f034e2011-11-05 21:28:46 +010010menu "Pin controllers"
11 depends on PINCTRL
12
Linus Walleij2744e8a2011-05-02 20:50:54 +020013config PINMUX
Linus Walleijae6b4d82011-10-19 18:14:33 +020014 bool "Support pin multiplexing controllers"
15
16config PINCONF
17 bool "Support pin configuration controllers"
Linus Walleij2744e8a2011-05-02 20:50:54 +020018
Linus Walleij394349f2011-11-24 18:27:15 +010019config GENERIC_PINCONF
20 bool
21 select PINCONF
22
Linus Walleij2744e8a2011-05-02 20:50:54 +020023config 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
Patrice Chotard0493e642013-01-08 10:41:02 +010029config PINCTRL_ABX500
30 bool "ST-Ericsson ABx500 family Mixed Signal Circuit gpio functions"
31 depends on AB8500_CORE
32 select GENERIC_PINCONF
33 help
34 Select this to enable the ABx500 family IC GPIO driver
35
Patrice Chotard3c937992013-01-08 10:59:53 +010036config PINCTRL_AB8500
37 bool "AB8500 pin controller driver"
38 depends on PINCTRL_ABX500 && ARCH_U8500
39
Patrice Chotarda8f96e42013-01-28 14:35:19 +010040config PINCTRL_AB8540
41 bool "AB8540 pin controller driver"
42 depends on PINCTRL_ABX500 && ARCH_U8500
43
Patrice Chotard09dbec32013-01-28 14:29:35 +010044config PINCTRL_AB9540
45 bool "AB9540 pin controller driver"
46 depends on PINCTRL_ABX500 && ARCH_U8500
47
Patrice Chotard1aa2d8d2013-01-28 14:23:45 +010048config PINCTRL_AB8505
49 bool "AB8505 pin controller driver"
50 depends on PINCTRL_ABX500 && ARCH_U8500
51
Jean-Christophe PLAGNIOL-VILLARD6732ae52012-07-12 23:35:02 +080052config PINCTRL_AT91
53 bool "AT91 pinctrl driver"
54 depends on OF
55 depends on ARCH_AT91
56 select PINMUX
57 select PINCONF
58 help
59 Say Y here to enable the at91 pinctrl driver
60
Mathias Nymana5d811b2013-06-18 14:33:02 +030061config PINCTRL_BAYTRAIL
62 bool "Intel Baytrail GPIO pin control"
63 depends on GPIOLIB && ACPI && X86
64 select IRQ_DOMAIN
65 help
66 driver for memory mapped GPIO functionality on Intel Baytrail
67 platforms. Supports 3 banks with 102, 28 and 44 gpios.
68 Most pins are usually muxed to some other functionality by firmware,
69 so only a small amount is available for gpio use.
70
71 Requires ACPI device enumeration code to set up a platform device.
72
Simon Arlotte1b2dc72012-09-27 22:10:11 -060073config PINCTRL_BCM2835
74 bool
75 select PINMUX
76 select PINCONF
77
Dong Aishengae75ff82012-04-27 20:26:16 +080078config PINCTRL_IMX
79 bool
80 select PINMUX
81 select PINCONF
82
Uwe Kleine-Königb9aa8f12012-08-09 18:23:32 +020083config PINCTRL_IMX35
84 bool "IMX35 pinctrl driver"
85 depends on OF
86 depends on SOC_IMX35
87 select PINCTRL_IMX
88 help
89 Say Y here to enable the imx35 pinctrl driver
90
Dong Aisheng4f6a16b2012-05-15 15:49:03 +080091config PINCTRL_IMX51
92 bool "IMX51 pinctrl driver"
93 depends on OF
94 depends on SOC_IMX51
95 select PINCTRL_IMX
96 help
97 Say Y here to enable the imx51 pinctrl driver
98
Dong Aisheng93fbd3c2012-05-15 15:49:02 +080099config PINCTRL_IMX53
100 bool "IMX53 pinctrl driver"
101 depends on OF
102 depends on SOC_IMX53
103 select PINCTRL_IMX
104 help
105 Say Y here to enable the imx53 pinctrl driver
106
Dong Aishengd8fe3572012-04-27 20:26:17 +0800107config PINCTRL_IMX6Q
Shawn Guo3f551d62013-03-21 21:55:41 +0800108 bool "IMX6Q/DL pinctrl driver"
Dong Aishengd8fe3572012-04-27 20:26:17 +0800109 depends on OF
110 depends on SOC_IMX6Q
111 select PINCTRL_IMX
112 help
Shawn Guo3f551d62013-03-21 21:55:41 +0800113 Say Y here to enable the imx6q/dl pinctrl driver
Dong Aishengd8fe3572012-04-27 20:26:17 +0800114
Shawn Guo21e59122013-03-21 22:10:36 +0800115config PINCTRL_IMX6SL
116 bool "IMX6SL pinctrl driver"
117 depends on OF
118 depends on SOC_IMX6SL
119 select PINCTRL_IMX
120 help
121 Say Y here to enable the imx6sl pinctrl driver
Haojian Zhuangf4e66982012-01-04 10:26:33 +0800122
Jingchang Lu78bafc62013-05-28 17:32:08 +0800123config PINCTRL_VF610
124 bool "Freescale Vybrid VF610 pinctrl driver"
125 depends on OF
126 depends on SOC_VF610
127 select PINCTRL_IMX
128 help
129 Say Y here to enable the Freescale Vybrid VF610 pinctrl driver
130
John Crispin3f8c50c2012-08-28 12:44:59 +0200131config PINCTRL_LANTIQ
132 bool
133 depends on LANTIQ
134 select PINMUX
135 select PINCONF
136
John Crispine316cb22012-05-20 00:33:56 +0200137config PINCTRL_FALCON
138 bool
139 depends on SOC_FALCON
140 depends on PINCTRL_LANTIQ
141
Shawn Guo17723112012-04-28 13:00:50 +0800142config PINCTRL_MXS
143 bool
Axel Lin90db8a12012-11-12 10:01:56 +0800144 select PINMUX
145 select PINCONF
Shawn Guo17723112012-04-28 13:00:50 +0800146
147config PINCTRL_IMX23
148 bool
Shawn Guo17723112012-04-28 13:00:50 +0800149 select PINCTRL_MXS
150
151config PINCTRL_IMX28
152 bool
Shawn Guo17723112012-04-28 13:00:50 +0800153 select PINCTRL_MXS
154
Linus Walleije98ea772012-04-26 23:57:25 +0200155config PINCTRL_NOMADIK
156 bool "Nomadik pin controller driver"
Arnd Bergmann0fa7be42012-05-15 11:24:34 +0000157 depends on ARCH_U8500 || ARCH_NOMADIK
Linus Walleijdbfe8ca2012-05-02 22:56:47 +0200158 select PINMUX
Linus Walleijd41af622012-05-03 15:58:12 +0200159 select PINCONF
Linus Walleije98ea772012-04-26 23:57:25 +0200160
Linus Walleijf79c5ed2012-08-10 00:43:28 +0200161config PINCTRL_STN8815
162 bool "STN8815 pin controller driver"
163 depends on PINCTRL_NOMADIK && ARCH_NOMADIK
164
Linus Walleije98ea772012-04-26 23:57:25 +0200165config PINCTRL_DB8500
166 bool "DB8500 pin controller driver"
167 depends on PINCTRL_NOMADIK && ARCH_U8500
168
Patrice Chotard45a1b532012-07-20 15:45:22 +0200169config PINCTRL_DB8540
170 bool "DB8540 pin controller driver"
171 depends on PINCTRL_NOMADIK && ARCH_U8500
172
Heiko Stübnerd3e51162013-06-10 22:16:22 +0200173config PINCTRL_ROCKCHIP
174 bool
175 select PINMUX
176 select GENERIC_PINCONF
177 select GENERIC_IRQ_CHIP
178
Tony Lindgren8b8b0912012-07-10 02:05:46 -0700179config PINCTRL_SINGLE
180 tristate "One-register-per-pin type device tree based pinctrl driver"
181 depends on OF
182 select PINMUX
183 select PINCONF
Haojian Zhuang9dddb4d2013-02-17 19:42:55 +0800184 select GENERIC_PINCONF
Tony Lindgren8b8b0912012-07-10 02:05:46 -0700185 help
186 This selects the device tree based generic pinctrl driver.
187
Linus Walleij3bece552011-12-18 23:44:26 +0100188config PINCTRL_SIRF
Barry Songd3e26f22012-09-27 17:56:30 +0800189 bool "CSR SiRFprimaII/SiRFmarco pin controller driver"
190 depends on ARCH_SIRF
Rongjun Ying393daa82011-10-09 03:11:13 -0700191 select PINMUX
Rongjun Ying393daa82011-10-09 03:11:13 -0700192
Maxime Ripard0e37f882013-01-18 22:30:34 +0100193config PINCTRL_SUNXI
194 bool
195 select PINMUX
196 select GENERIC_PINCONF
197
Stephen Warren971dac72012-02-01 14:04:47 -0700198config PINCTRL_TEGRA
199 bool
Axel Lin507ccdb2012-11-12 10:00:22 +0800200 select PINMUX
201 select PINCONF
Stephen Warren971dac72012-02-01 14:04:47 -0700202
203config PINCTRL_TEGRA20
204 bool
Stephen Warren971dac72012-02-01 14:04:47 -0700205 select PINCTRL_TEGRA
206
207config PINCTRL_TEGRA30
208 bool
Stephen Warren971dac72012-02-01 14:04:47 -0700209 select PINCTRL_TEGRA
210
Pritesh Raithathab6ae7a22013-01-08 13:02:37 +0530211config PINCTRL_TEGRA114
212 bool
213 select PINCTRL_TEGRA
214
Linus Walleij3bece552011-12-18 23:44:26 +0100215config PINCTRL_U300
216 bool "U300 pin controller driver"
Linus Walleij98da3522011-05-02 20:54:38 +0200217 depends on ARCH_U300
218 select PINMUX
Linus Walleijdc0b1aa2011-11-16 21:58:10 +0100219 select GENERIC_PINCONF
Linus Walleij45f034e2011-11-05 21:28:46 +0100220
Linus Walleijca402d32011-11-16 09:22:59 +0100221config PINCTRL_COH901
222 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
Linus Walleij3c94d1b2012-06-18 20:07:50 +0200223 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
Linus Walleijca402d32011-11-16 09:22:59 +0100224 help
225 Say yes here to support GPIO interface on ST-Ericsson U300.
226 The names of the two IP block variants supported are
227 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
228 ports of 8 GPIO pins each.
229
Thomas Abraham30574f02012-09-07 06:07:19 +0900230config PINCTRL_SAMSUNG
Arnd Bergmanncbc351a2012-11-15 11:58:24 +0100231 bool
Thomas Abraham30574f02012-09-07 06:07:19 +0900232 select PINMUX
233 select PINCONF
234
Kukjin Kima1ed2672013-01-18 20:35:06 +0100235config PINCTRL_EXYNOS
236 bool "Pinctrl driver data for Samsung EXYNOS SoCs"
Axel Lin924da312012-11-06 15:04:30 +0800237 depends on OF && GPIOLIB
Thomas Abraham43b169d2012-09-07 06:07:19 +0900238 select PINCTRL_SAMSUNG
239
Thomas Abrahamf0b9a7e2012-10-10 09:41:12 +0900240config PINCTRL_EXYNOS5440
241 bool "Samsung EXYNOS5440 SoC pinctrl driver"
242 select PINMUX
243 select PINCONF
244
Tomasz Figa61dd7262013-03-18 22:31:55 +0100245config PINCTRL_S3C64XX
246 bool "Samsung S3C64XX SoC pinctrl driver"
247 depends on ARCH_S3C64XX
248 select PINCTRL_SAMSUNG
249
Thomas Petazzoni06763c72012-10-24 23:38:58 +0200250source "drivers/pinctrl/mvebu/Kconfig"
Laurent Pinchart6e54d8d2012-12-15 23:51:19 +0100251source "drivers/pinctrl/sh-pfc/Kconfig"
Viresh Kumardeda8282012-03-28 22:27:07 +0530252source "drivers/pinctrl/spear/Kconfig"
Tony Prisk170c6152013-02-20 09:32:19 +1300253source "drivers/pinctrl/vt8500/Kconfig"
Viresh Kumardeda8282012-03-28 22:27:07 +0530254
John Crispin3f8c50c2012-08-28 12:44:59 +0200255config PINCTRL_XWAY
256 bool
257 depends on SOC_TYPE_XWAY
258 depends on PINCTRL_LANTIQ
259
Linus Walleij45f034e2011-11-05 21:28:46 +0100260endmenu
Linus Walleij98da3522011-05-02 20:54:38 +0200261
Linus Walleij2744e8a2011-05-02 20:50:54 +0200262endif