pinctrl: add lpc18xx pinctrl driver
[firefly-linux-kernel-4.4.55.git] / drivers / pinctrl / Kconfig
1 #
2 # PINCTRL infrastructure and drivers
3 #
4
5 config PINCTRL
6         bool
7
8 if PINCTRL
9
10 menu "Pin controllers"
11         depends on PINCTRL
12
13 config PINMUX
14         bool "Support pin multiplexing controllers" if COMPILE_TEST
15
16 config PINCONF
17         bool "Support pin configuration controllers" if COMPILE_TEST
18
19 config GENERIC_PINCONF
20         bool
21         select PINCONF
22
23 config 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
29 config 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
39 config 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
50 config PINCTRL_BF54x
51         def_bool y if BF54x
52         select PINCTRL_ADI2
53
54 config PINCTRL_BF60x
55         def_bool y if BF60x
56         select PINCTRL_ADI2
57
58 config 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
70 config 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
85 config PINCTRL_LANTIQ
86         bool
87         depends on LANTIQ
88         select PINMUX
89         select PINCONF
90
91 config PINCTRL_LPC18XX
92         bool "NXP LPC18XX/43XX SCU pinctrl driver"
93         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
94         default ARCH_LPC18XX
95         select PINMUX
96         select GENERIC_PINCONF
97         help
98           Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
99
100 config PINCTRL_FALCON
101         bool
102         depends on SOC_FALCON
103         depends on PINCTRL_LANTIQ
104
105 config PINCTRL_MESON
106         bool
107         depends on OF
108         select PINMUX
109         select PINCONF
110         select GENERIC_PINCONF
111         select GPIOLIB
112         select OF_GPIO
113         select REGMAP_MMIO
114
115 config PINCTRL_ROCKCHIP
116         bool
117         select PINMUX
118         select GENERIC_PINCONF
119         select GENERIC_IRQ_CHIP
120         select MFD_SYSCON
121
122 config PINCTRL_SINGLE
123         tristate "One-register-per-pin type device tree based pinctrl driver"
124         depends on OF
125         select PINMUX
126         select PINCONF
127         select GENERIC_PINCONF
128         help
129           This selects the device tree based generic pinctrl driver.
130
131 config PINCTRL_SIRF
132         bool "CSR SiRFprimaII pin controller driver"
133         depends on ARCH_SIRF
134         select PINMUX
135         select GPIOLIB_IRQCHIP
136
137 config PINCTRL_ST
138         bool
139         depends on OF
140         select PINMUX
141         select PINCONF
142         select GPIOLIB_IRQCHIP
143
144 config PINCTRL_TEGRA
145         bool
146         select PINMUX
147         select PINCONF
148
149 config PINCTRL_TEGRA20
150         bool
151         select PINCTRL_TEGRA
152
153 config PINCTRL_TEGRA30
154         bool
155         select PINCTRL_TEGRA
156
157 config PINCTRL_TEGRA114
158         bool
159         select PINCTRL_TEGRA
160
161 config PINCTRL_TEGRA124
162         bool
163         select PINCTRL_TEGRA
164
165 config PINCTRL_TEGRA210
166         bool
167         select PINCTRL_TEGRA
168
169 config PINCTRL_TEGRA_XUSB
170         def_bool y if ARCH_TEGRA
171         select GENERIC_PHY
172         select PINCONF
173         select PINMUX
174
175 config PINCTRL_TZ1090
176         bool "Toumaz Xenif TZ1090 pin control driver"
177         depends on SOC_TZ1090
178         select PINMUX
179         select GENERIC_PINCONF
180
181 config PINCTRL_TZ1090_PDC
182         bool "Toumaz Xenif TZ1090 PDC pin control driver"
183         depends on SOC_TZ1090
184         select PINMUX
185         select PINCONF
186
187 config PINCTRL_U300
188         bool "U300 pin controller driver"
189         depends on ARCH_U300
190         select PINMUX
191         select GENERIC_PINCONF
192
193 config PINCTRL_COH901
194         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
195         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
196         select GPIOLIB_IRQCHIP
197         help
198           Say yes here to support GPIO interface on ST-Ericsson U300.
199           The names of the two IP block variants supported are
200           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
201           ports of 8 GPIO pins each.
202
203 config PINCTRL_PALMAS
204         bool "Pinctrl driver for the PALMAS Series MFD devices"
205         depends on OF && MFD_PALMAS
206         select PINMUX
207         select GENERIC_PINCONF
208         help
209           Palmas device supports the configuration of pins for different
210           functionality. This driver supports the pinmux, push-pull and
211           open drain configuration for the Palmas series devices like
212           TPS65913, TPS80036 etc.
213
214 config PINCTRL_ZYNQ
215         bool "Pinctrl driver for Xilinx Zynq"
216         depends on ARCH_ZYNQ
217         select PINMUX
218         select GENERIC_PINCONF
219         help
220           This selectes the pinctrl driver for Xilinx Zynq.
221
222 source "drivers/pinctrl/bcm/Kconfig"
223 source "drivers/pinctrl/berlin/Kconfig"
224 source "drivers/pinctrl/freescale/Kconfig"
225 source "drivers/pinctrl/intel/Kconfig"
226 source "drivers/pinctrl/mvebu/Kconfig"
227 source "drivers/pinctrl/nomadik/Kconfig"
228 source "drivers/pinctrl/qcom/Kconfig"
229 source "drivers/pinctrl/samsung/Kconfig"
230 source "drivers/pinctrl/sh-pfc/Kconfig"
231 source "drivers/pinctrl/spear/Kconfig"
232 source "drivers/pinctrl/sunxi/Kconfig"
233 source "drivers/pinctrl/vt8500/Kconfig"
234 source "drivers/pinctrl/mediatek/Kconfig"
235
236 config PINCTRL_XWAY
237         bool
238         depends on SOC_TYPE_XWAY
239         depends on PINCTRL_LANTIQ
240
241 config PINCTRL_TB10X
242         bool
243         depends on OF && ARC_PLAT_TB10X
244         select GPIOLIB
245
246 endmenu
247
248 endif