blob: 84dd2ed47a928e57effa8297597592733c703100 [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
Uwe Kleine-König244e95a2014-06-03 10:02:36 +020014 bool "Support pin multiplexing controllers" if COMPILE_TEST
Linus Walleijae6b4d82011-10-19 18:14:33 +020015
16config PINCONF
Uwe Kleine-König244e95a2014-06-03 10:02:36 +020017 bool "Support pin configuration controllers" if COMPILE_TEST
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
Sonic Zhange9a03ad2013-09-03 16:28:59 +080029config PINCTRL_ADI2
30 bool "ADI pin controller driver"
Sonic Zhang9d7278d2013-09-23 11:57:00 +080031 depends on BLACKFIN
Sonic Zhange9a03ad2013-09-03 16:28:59 +080032 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
Laxman Dewanganc8ce8782013-10-02 21:20:29 +053039config 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
Sonic Zhange9a03ad2013-09-03 16:28:59 +080050config 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
Jean-Christophe PLAGNIOL-VILLARD6732ae52012-07-12 23:35:02 +080058config PINCTRL_AT91
59 bool "AT91 pinctrl driver"
60 depends on OF
61 depends on ARCH_AT91
62 select PINMUX
63 select PINCONF
Alexander Stein80cc3732014-04-15 22:09:41 +020064 select GPIOLIB
65 select OF_GPIO
66 select GPIOLIB_IRQCHIP
Jean-Christophe PLAGNIOL-VILLARD6732ae52012-07-12 23:35:02 +080067 help
68 Say Y here to enable the at91 pinctrl driver
69
Ken Xuedbad75d2015-03-10 15:02:19 +080070config PINCTRL_AMD
71 bool "AMD GPIO pin control"
72 depends on GPIOLIB
73 select GPIOLIB_IRQCHIP
74 select PINCONF
75 select GENERIC_PINCONF
76 help
77 driver for memory mapped GPIO functionality on AMD platforms
78 (x86 or arm).Most pins are usually muxed to some other
79 functionality by firmware,so only a small amount is available
80 for gpio use.
81
82 Requires ACPI/FDT device enumeration code to set up a platform
83 device.
84
Baruch Siach38b0e502015-05-05 13:55:10 +030085config PINCTRL_DIGICOLOR
86 bool
87 depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
88 select PINMUX
89 select GENERIC_PINCONF
90
John Crispin3f8c50c2012-08-28 12:44:59 +020091config PINCTRL_LANTIQ
92 bool
93 depends on LANTIQ
94 select PINMUX
95 select PINCONF
96
Joachim Eastwood2f77ac92015-04-28 00:14:08 +020097config PINCTRL_LPC18XX
98 bool "NXP LPC18XX/43XX SCU pinctrl driver"
99 depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
100 default ARCH_LPC18XX
101 select PINMUX
102 select GENERIC_PINCONF
103 help
104 Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
105
John Crispine316cb22012-05-20 00:33:56 +0200106config PINCTRL_FALCON
107 bool
108 depends on SOC_FALCON
109 depends on PINCTRL_LANTIQ
110
Beniamino Galvani6ac73092015-01-17 19:15:14 +0100111config PINCTRL_MESON
112 bool
Linus Walleijb99e6fb2015-04-15 10:00:35 +0200113 depends on OF
Beniamino Galvani6ac73092015-01-17 19:15:14 +0100114 select PINMUX
115 select PINCONF
116 select GENERIC_PINCONF
Linus Walleijb99e6fb2015-04-15 10:00:35 +0200117 select GPIOLIB
Beniamino Galvani6ac73092015-01-17 19:15:14 +0100118 select OF_GPIO
119 select REGMAP_MMIO
120
Heiko Stübnerd3e51162013-06-10 22:16:22 +0200121config PINCTRL_ROCKCHIP
122 bool
123 select PINMUX
124 select GENERIC_PINCONF
125 select GENERIC_IRQ_CHIP
Heiko Stübner751a99a2014-05-05 13:58:20 +0200126 select MFD_SYSCON
Heiko Stübnerd3e51162013-06-10 22:16:22 +0200127
Tony Lindgren8b8b0912012-07-10 02:05:46 -0700128config PINCTRL_SINGLE
129 tristate "One-register-per-pin type device tree based pinctrl driver"
130 depends on OF
131 select PINMUX
132 select PINCONF
Haojian Zhuang9dddb4d2013-02-17 19:42:55 +0800133 select GENERIC_PINCONF
Tony Lindgren8b8b0912012-07-10 02:05:46 -0700134 help
135 This selects the device tree based generic pinctrl driver.
136
Linus Walleij3bece552011-12-18 23:44:26 +0100137config PINCTRL_SIRF
Barry Songa17272a2015-01-11 21:56:41 +0800138 bool "CSR SiRFprimaII pin controller driver"
Barry Songd3e26f22012-09-27 17:56:30 +0800139 depends on ARCH_SIRF
Rongjun Ying393daa82011-10-09 03:11:13 -0700140 select PINMUX
Wei Chenf9367792015-05-18 07:28:32 +0000141 select PINCONF
142 select GENERIC_PINCONF
Linus Walleij7420d2d2014-04-15 14:43:47 +0800143 select GPIOLIB_IRQCHIP
Rongjun Ying393daa82011-10-09 03:11:13 -0700144
Andrew Brestickercefc03e2015-05-06 12:59:03 -0700145config PINCTRL_PISTACHIO
146 def_bool y if MACH_PISTACHIO
147 depends on GPIOLIB
148 select PINMUX
149 select GENERIC_PINCONF
150 select GPIOLIB_IRQCHIP
151 select OF_GPIO
152
Srinivas KANDAGATLA701016c2013-06-20 15:05:38 +0100153config PINCTRL_ST
154 bool
155 depends on OF
156 select PINMUX
157 select PINCONF
Linus Walleij130cbe32014-04-08 14:45:47 +0200158 select GPIOLIB_IRQCHIP
Srinivas KANDAGATLA701016c2013-06-20 15:05:38 +0100159
Stephen Warren971dac72012-02-01 14:04:47 -0700160config PINCTRL_TEGRA
161 bool
Axel Lin507ccdb2012-11-12 10:00:22 +0800162 select PINMUX
163 select PINCONF
Stephen Warren971dac72012-02-01 14:04:47 -0700164
165config PINCTRL_TEGRA20
166 bool
Stephen Warren971dac72012-02-01 14:04:47 -0700167 select PINCTRL_TEGRA
168
169config PINCTRL_TEGRA30
170 bool
Stephen Warren971dac72012-02-01 14:04:47 -0700171 select PINCTRL_TEGRA
172
Pritesh Raithathab6ae7a22013-01-08 13:02:37 +0530173config PINCTRL_TEGRA114
174 bool
175 select PINCTRL_TEGRA
176
Ashwini Ghuge1a16bee2013-12-10 12:40:56 +0530177config PINCTRL_TEGRA124
178 bool
179 select PINCTRL_TEGRA
180
Stephen Warren9184f752015-02-24 14:00:51 -0700181config PINCTRL_TEGRA210
182 bool
183 select PINCTRL_TEGRA
184
Thierry Redingdc0a3932014-06-19 13:37:08 +0200185config PINCTRL_TEGRA_XUSB
186 def_bool y if ARCH_TEGRA
187 select GENERIC_PHY
188 select PINCONF
189 select PINMUX
190
James Hogand5025f92013-06-20 10:26:27 +0100191config PINCTRL_TZ1090
192 bool "Toumaz Xenif TZ1090 pin control driver"
193 depends on SOC_TZ1090
194 select PINMUX
195 select GENERIC_PINCONF
196
James Hoganb58f0272013-06-20 10:26:29 +0100197config PINCTRL_TZ1090_PDC
198 bool "Toumaz Xenif TZ1090 PDC pin control driver"
199 depends on SOC_TZ1090
200 select PINMUX
201 select PINCONF
202
Linus Walleij3bece552011-12-18 23:44:26 +0100203config PINCTRL_U300
204 bool "U300 pin controller driver"
Linus Walleij98da3522011-05-02 20:54:38 +0200205 depends on ARCH_U300
206 select PINMUX
Linus Walleijdc0b1aa2011-11-16 21:58:10 +0100207 select GENERIC_PINCONF
Linus Walleij45f034e2011-11-05 21:28:46 +0100208
Linus Walleijca402d32011-11-16 09:22:59 +0100209config PINCTRL_COH901
210 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
Linus Walleij3c94d1b2012-06-18 20:07:50 +0200211 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
Linus Walleij523dcce2014-03-25 13:37:17 +0100212 select GPIOLIB_IRQCHIP
Linus Walleijca402d32011-11-16 09:22:59 +0100213 help
214 Say yes here to support GPIO interface on ST-Ericsson U300.
215 The names of the two IP block variants supported are
216 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
217 ports of 8 GPIO pins each.
218
Laxman Dewangan0a8d3e22013-08-06 18:42:35 +0530219config PINCTRL_PALMAS
Mark Brown736658c2013-08-19 16:07:26 +0100220 bool "Pinctrl driver for the PALMAS Series MFD devices"
Laxman Dewangan0a8d3e22013-08-06 18:42:35 +0530221 depends on OF && MFD_PALMAS
Axel Lin63ca8db2013-08-22 14:30:08 +0800222 select PINMUX
Laxman Dewangan0a8d3e22013-08-06 18:42:35 +0530223 select GENERIC_PINCONF
224 help
225 Palmas device supports the configuration of pins for different
226 functionality. This driver supports the pinmux, push-pull and
227 open drain configuration for the Palmas series devices like
228 TPS65913, TPS80036 etc.
229
Soren Brinkmannadd958c2015-01-09 07:43:48 -0800230config PINCTRL_ZYNQ
231 bool "Pinctrl driver for Xilinx Zynq"
232 depends on ARCH_ZYNQ
233 select PINMUX
234 select GENERIC_PINCONF
235 help
236 This selectes the pinctrl driver for Xilinx Zynq.
237
Ray Juib17f2f92015-03-04 16:35:49 -0800238source "drivers/pinctrl/bcm/Kconfig"
Antoine Tenart3de68d32014-05-19 19:36:29 +0200239source "drivers/pinctrl/berlin/Kconfig"
Linus Walleijedad3b22014-09-03 13:37:38 +0200240source "drivers/pinctrl/freescale/Kconfig"
Mika Westerberg5fae8b82014-10-24 15:16:52 +0300241source "drivers/pinctrl/intel/Kconfig"
Thomas Petazzoni06763c72012-10-24 23:38:58 +0200242source "drivers/pinctrl/mvebu/Kconfig"
Linus Walleij3a198052014-07-11 14:57:06 +0200243source "drivers/pinctrl/nomadik/Kconfig"
Linus Walleij69b78b82014-07-09 13:55:12 +0200244source "drivers/pinctrl/qcom/Kconfig"
Sachin Kamatebe629a2014-07-10 17:33:27 +0530245source "drivers/pinctrl/samsung/Kconfig"
Laurent Pinchart6e54d8d2012-12-15 23:51:19 +0100246source "drivers/pinctrl/sh-pfc/Kconfig"
Viresh Kumardeda8282012-03-28 22:27:07 +0530247source "drivers/pinctrl/spear/Kconfig"
Maxime Ripard5f910772014-04-18 18:53:02 +0200248source "drivers/pinctrl/sunxi/Kconfig"
Masahiro Yamada6e908892015-07-14 11:40:01 +0900249source "drivers/pinctrl/uniphier/Kconfig"
Tony Prisk170c6152013-02-20 09:32:19 +1300250source "drivers/pinctrl/vt8500/Kconfig"
Hongzhou Yanga6df4102015-01-21 13:28:15 +0800251source "drivers/pinctrl/mediatek/Kconfig"
Viresh Kumardeda8282012-03-28 22:27:07 +0530252
John Crispin3f8c50c2012-08-28 12:44:59 +0200253config PINCTRL_XWAY
254 bool
255 depends on SOC_TYPE_XWAY
256 depends on PINCTRL_LANTIQ
257
Christian Ruppert5aad0db2013-10-15 15:39:38 +0200258config PINCTRL_TB10X
259 bool
Linus Walleijb99e6fb2015-04-15 10:00:35 +0200260 depends on OF && ARC_PLAT_TB10X
261 select GPIOLIB
Christian Ruppert5aad0db2013-10-15 15:39:38 +0200262
Linus Walleij45f034e2011-11-05 21:28:46 +0100263endmenu
Linus Walleij98da3522011-05-02 20:54:38 +0200264
Linus Walleij2744e8a2011-05-02 20:50:54 +0200265endif