x86/smpboot: Init apic mapping before usage
[cascardo/linux.git] / drivers / pinctrl / Kconfig
1 #
2 # PINCTRL infrastructure and drivers
3 #
4
5 config PINCTRL
6         bool
7
8 menu "Pin controllers"
9         depends on PINCTRL
10
11 config PINMUX
12         bool "Support pin multiplexing controllers" if COMPILE_TEST
13
14 config PINCONF
15         bool "Support pin configuration controllers" if COMPILE_TEST
16
17 config GENERIC_PINCONF
18         bool
19         select PINCONF
20
21 config DEBUG_PINCTRL
22         bool "Debug PINCTRL calls"
23         depends on DEBUG_KERNEL
24         help
25           Say Y here to add some extra checks and diagnostics to PINCTRL calls.
26
27 config PINCTRL_ADI2
28         bool "ADI pin controller driver"
29         depends on BLACKFIN
30         select PINMUX
31         select IRQ_DOMAIN
32         help
33           This is the pin controller and gpio driver for ADI BF54x, BF60x and
34           future processors. This option is selected automatically when specific
35           machine and arch are selected to build.
36
37 config PINCTRL_AS3722
38         tristate "Pinctrl and GPIO driver for ams AS3722 PMIC"
39         depends on MFD_AS3722 && GPIOLIB
40         select PINMUX
41         select GENERIC_PINCONF
42         help
43           AS3722 device supports the configuration of GPIO pins for different
44           functionality. This driver supports the pinmux, push-pull and
45           open drain configuration for the GPIO pins of AS3722 devices. It also
46           supports the GPIO functionality through gpiolib.
47
48 config PINCTRL_BF54x
49         def_bool y if BF54x
50         select PINCTRL_ADI2
51
52 config PINCTRL_BF60x
53         def_bool y if BF60x
54         select PINCTRL_ADI2
55
56 config PINCTRL_AT91
57         bool "AT91 pinctrl driver"
58         depends on OF
59         depends on ARCH_AT91
60         select PINMUX
61         select PINCONF
62         select GPIOLIB
63         select OF_GPIO
64         select GPIOLIB_IRQCHIP
65         help
66           Say Y here to enable the at91 pinctrl driver
67
68 config PINCTRL_AT91PIO4
69         bool "AT91 PIO4 pinctrl driver"
70         depends on OF
71         depends on ARCH_AT91
72         select PINMUX
73         select GENERIC_PINCONF
74         select GPIOLIB
75         select GPIOLIB_IRQCHIP
76         select OF_GPIO
77         help
78           Say Y here to enable the at91 pinctrl/gpio driver for Atmel PIO4
79           controller available on sama5d2 SoC.
80
81 config PINCTRL_AMD
82         tristate "AMD GPIO pin control"
83         depends on GPIOLIB
84         select GPIOLIB_IRQCHIP
85         select PINCONF
86         select GENERIC_PINCONF
87         help
88           driver for memory mapped GPIO functionality on AMD platforms
89           (x86 or arm).Most pins are usually muxed to some other
90           functionality by firmware,so only a small amount is available
91           for gpio use.
92
93           Requires ACPI/FDT device enumeration code to set up a platform
94           device.
95
96 config PINCTRL_DIGICOLOR
97         bool
98         depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST)
99         select PINMUX
100         select GENERIC_PINCONF
101
102 config PINCTRL_LANTIQ
103         bool
104         depends on LANTIQ
105         select PINMUX
106         select PINCONF
107
108 config PINCTRL_LPC18XX
109         bool "NXP LPC18XX/43XX SCU pinctrl driver"
110         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
111         default ARCH_LPC18XX
112         select PINMUX
113         select GENERIC_PINCONF
114         help
115           Pinctrl driver for NXP LPC18xx/43xx System Control Unit (SCU).
116
117 config PINCTRL_FALCON
118         bool
119         depends on SOC_FALCON
120         depends on PINCTRL_LANTIQ
121
122 config PINCTRL_MESON
123         bool
124         depends on OF
125         select PINMUX
126         select PINCONF
127         select GENERIC_PINCONF
128         select GPIOLIB
129         select OF_GPIO
130         select REGMAP_MMIO
131
132 config PINCTRL_OXNAS
133         bool
134         depends on OF
135         select PINMUX
136         select PINCONF
137         select GENERIC_PINCONF
138         select GPIOLIB
139         select OF_GPIO
140         select GPIOLIB_IRQCHIP
141         select MFD_SYSCON
142
143 config PINCTRL_ROCKCHIP
144         bool
145         select PINMUX
146         select GENERIC_PINCONF
147         select GENERIC_IRQ_CHIP
148         select MFD_SYSCON
149
150 config PINCTRL_SINGLE
151         tristate "One-register-per-pin type device tree based pinctrl driver"
152         depends on OF
153         select PINMUX
154         select PINCONF
155         select GENERIC_PINCONF
156         help
157           This selects the device tree based generic pinctrl driver.
158
159 config PINCTRL_SIRF
160         bool "CSR SiRFprimaII pin controller driver"
161         depends on ARCH_SIRF
162         select PINMUX
163         select PINCONF
164         select GENERIC_PINCONF
165         select GPIOLIB_IRQCHIP
166
167 config PINCTRL_PISTACHIO
168         def_bool y if MACH_PISTACHIO
169         depends on GPIOLIB
170         select PINMUX
171         select GENERIC_PINCONF
172         select GPIOLIB_IRQCHIP
173         select OF_GPIO
174
175 config PINCTRL_ST
176         bool
177         depends on OF
178         select PINMUX
179         select PINCONF
180         select GPIOLIB_IRQCHIP
181
182 config PINCTRL_TZ1090
183         bool "Toumaz Xenif TZ1090 pin control driver"
184         depends on SOC_TZ1090
185         select PINMUX
186         select GENERIC_PINCONF
187
188 config PINCTRL_TZ1090_PDC
189         bool "Toumaz Xenif TZ1090 PDC pin control driver"
190         depends on SOC_TZ1090
191         select PINMUX
192         select PINCONF
193
194 config PINCTRL_U300
195         bool "U300 pin controller driver"
196         depends on ARCH_U300
197         select PINMUX
198         select GENERIC_PINCONF
199
200 config PINCTRL_COH901
201         bool "ST-Ericsson U300 COH 901 335/571 GPIO"
202         depends on GPIOLIB && ARCH_U300 && PINCTRL_U300
203         select GPIOLIB_IRQCHIP
204         help
205           Say yes here to support GPIO interface on ST-Ericsson U300.
206           The names of the two IP block variants supported are
207           COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
208           ports of 8 GPIO pins each.
209
210 config PINCTRL_MAX77620
211         tristate "MAX77620/MAX20024 Pincontrol support"
212         depends on MFD_MAX77620
213         select PINMUX
214         select GENERIC_PINCONF
215         help
216           Say Yes here to enable Pin control support for Maxim PMIC MAX77620.
217           This PMIC has 8 GPIO pins that work as GPIO as well as special
218           function in alternate mode. This driver also configure push-pull,
219           open drain, FPS slots etc.
220
221 config PINCTRL_PALMAS
222         tristate "Pinctrl driver for the PALMAS Series MFD devices"
223         depends on OF && MFD_PALMAS
224         select PINMUX
225         select GENERIC_PINCONF
226         help
227           Palmas device supports the configuration of pins for different
228           functionality. This driver supports the pinmux, push-pull and
229           open drain configuration for the Palmas series devices like
230           TPS65913, TPS80036 etc.
231
232 config PINCTRL_PIC32
233         bool "Microchip PIC32 pin controller driver"
234         depends on OF
235         depends on MACH_PIC32
236         select PINMUX
237         select GENERIC_PINCONF
238         select GPIOLIB_IRQCHIP
239         select OF_GPIO
240         help
241           This is the pin controller and gpio driver for Microchip PIC32
242           microcontrollers. This option is selected automatically when specific
243           machine and arch are selected to build.
244
245 config PINCTRL_PIC32MZDA
246         def_bool y if PIC32MZDA
247         select PINCTRL_PIC32
248
249 config PINCTRL_ZYNQ
250         bool "Pinctrl driver for Xilinx Zynq"
251         depends on ARCH_ZYNQ
252         select PINMUX
253         select GENERIC_PINCONF
254         help
255           This selects the pinctrl driver for Xilinx Zynq.
256
257 source "drivers/pinctrl/aspeed/Kconfig"
258 source "drivers/pinctrl/bcm/Kconfig"
259 source "drivers/pinctrl/berlin/Kconfig"
260 source "drivers/pinctrl/freescale/Kconfig"
261 source "drivers/pinctrl/intel/Kconfig"
262 source "drivers/pinctrl/mvebu/Kconfig"
263 source "drivers/pinctrl/nomadik/Kconfig"
264 source "drivers/pinctrl/pxa/Kconfig"
265 source "drivers/pinctrl/qcom/Kconfig"
266 source "drivers/pinctrl/samsung/Kconfig"
267 source "drivers/pinctrl/sh-pfc/Kconfig"
268 source "drivers/pinctrl/spear/Kconfig"
269 source "drivers/pinctrl/stm32/Kconfig"
270 source "drivers/pinctrl/sunxi/Kconfig"
271 source "drivers/pinctrl/tegra/Kconfig"
272 source "drivers/pinctrl/uniphier/Kconfig"
273 source "drivers/pinctrl/vt8500/Kconfig"
274 source "drivers/pinctrl/mediatek/Kconfig"
275
276 config PINCTRL_XWAY
277         bool
278         depends on SOC_TYPE_XWAY
279         depends on PINCTRL_LANTIQ
280
281 config PINCTRL_TB10X
282         bool
283         depends on OF && ARC_PLAT_TB10X
284         select GPIOLIB
285
286 endmenu