Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
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_MESON
100 bool
101 select PINMUX
102 select PINCONF
103 select GENERIC_PINCONF
104 select OF_GPIO
105 select REGMAP_MMIO
106
107config PINCTRL_ROCKCHIP
108 bool
109 select PINMUX
110 select GENERIC_PINCONF
111 select GENERIC_IRQ_CHIP
112 select MFD_SYSCON
113
114config PINCTRL_SINGLE
115 tristate "One-register-per-pin type device tree based pinctrl driver"
116 depends on OF
117 select PINMUX
118 select PINCONF
119 select GENERIC_PINCONF
120 help
121 This selects the device tree based generic pinctrl driver.
122
123config PINCTRL_SIRF
124 bool "CSR SiRFprimaII pin controller driver"
125 depends on ARCH_SIRF
126 select PINMUX
127 select GPIOLIB_IRQCHIP
128
129config PINCTRL_ST
130 bool
131 depends on OF
132 select PINMUX
133 select PINCONF
134 select GPIOLIB_IRQCHIP
135
136config PINCTRL_TEGRA
137 bool
138 select PINMUX
139 select PINCONF
140
141config PINCTRL_TEGRA20
142 bool
143 select PINCTRL_TEGRA
144
145config PINCTRL_TEGRA30
146 bool
147 select PINCTRL_TEGRA
148
149config PINCTRL_TEGRA114
150 bool
151 select PINCTRL_TEGRA
152
153config PINCTRL_TEGRA124
154 bool
155 select PINCTRL_TEGRA
156
157config PINCTRL_TEGRA_XUSB
158 def_bool y if ARCH_TEGRA
159 select GENERIC_PHY
160 select PINCONF
161 select PINMUX
162
163config PINCTRL_TZ1090
164 bool "Toumaz Xenif TZ1090 pin control driver"
165 depends on SOC_TZ1090
166 select PINMUX
167 select GENERIC_PINCONF
168
169config PINCTRL_TZ1090_PDC
170 bool "Toumaz Xenif TZ1090 PDC pin control driver"
171 depends on SOC_TZ1090
172 select PINMUX
173 select PINCONF
174
175config PINCTRL_U300
176 bool "U300 pin controller driver"
177 depends on ARCH_U300
178 select PINMUX
179 select GENERIC_PINCONF
180
181config PINCTRL_COH901
182 bool "ST-Ericsson U300 COH 901 335/571 GPIO"
183 depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
184 select GPIOLIB_IRQCHIP
185 help
186 Say yes here to support GPIO interface on ST-Ericsson U300.
187 The names of the two IP block variants supported are
188 COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
189 ports of 8 GPIO pins each.
190
191config PINCTRL_PALMAS
192 bool "Pinctrl driver for the PALMAS Series MFD devices"
193 depends on OF && MFD_PALMAS
194 select PINMUX
195 select GENERIC_PINCONF
196 help
197 Palmas device supports the configuration of pins for different
198 functionality. This driver supports the pinmux, push-pull and
199 open drain configuration for the Palmas series devices like
200 TPS65913, TPS80036 etc.
201
202config PINCTRL_ZYNQ
203 bool "Pinctrl driver for Xilinx Zynq"
204 depends on ARCH_ZYNQ
205 select PINMUX
206 select GENERIC_PINCONF
207 help
208 This selectes the pinctrl driver for Xilinx Zynq.
209
210source "drivers/pinctrl/berlin/Kconfig"
211source "drivers/pinctrl/freescale/Kconfig"
212source "drivers/pinctrl/intel/Kconfig"
213source "drivers/pinctrl/mvebu/Kconfig"
214source "drivers/pinctrl/nomadik/Kconfig"
215source "drivers/pinctrl/qcom/Kconfig"
216source "drivers/pinctrl/samsung/Kconfig"
217source "drivers/pinctrl/sh-pfc/Kconfig"
218source "drivers/pinctrl/spear/Kconfig"
219source "drivers/pinctrl/sunxi/Kconfig"
220source "drivers/pinctrl/vt8500/Kconfig"
221
222config PINCTRL_XWAY
223 bool
224 depends on SOC_TYPE_XWAY
225 depends on PINCTRL_LANTIQ
226
227config PINCTRL_TB10X
228 bool
229 depends on ARC_PLAT_TB10X
230
231endmenu
232
233endif