drm: Use max() to make the ioctl alloc size code cleaner
[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_BCM2835
71         bool
72         select PINMUX
73         select PINCONF
74
75 config 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
88 config PINCTRL_LANTIQ
89         bool
90         depends on LANTIQ
91         select PINMUX
92         select PINCONF
93
94 config PINCTRL_FALCON
95         bool
96         depends on SOC_FALCON
97         depends on PINCTRL_LANTIQ
98
99 config PINCTRL_MESON
100         bool
101         select PINMUX
102         select PINCONF
103         select GENERIC_PINCONF
104         select OF_GPIO
105         select REGMAP_MMIO
106
107 config PINCTRL_ROCKCHIP
108         bool
109         select PINMUX
110         select GENERIC_PINCONF
111         select GENERIC_IRQ_CHIP
112         select MFD_SYSCON
113
114 config 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
123 config PINCTRL_SIRF
124         bool "CSR SiRFprimaII pin controller driver"
125         depends on ARCH_SIRF
126         select PINMUX
127         select GPIOLIB_IRQCHIP
128
129 config PINCTRL_ST
130         bool
131         depends on OF
132         select PINMUX
133         select PINCONF
134         select GPIOLIB_IRQCHIP
135
136 config PINCTRL_TEGRA
137         bool
138         select PINMUX
139         select PINCONF
140
141 config PINCTRL_TEGRA20
142         bool
143         select PINCTRL_TEGRA
144
145 config PINCTRL_TEGRA30
146         bool
147         select PINCTRL_TEGRA
148
149 config PINCTRL_TEGRA114
150         bool
151         select PINCTRL_TEGRA
152
153 config PINCTRL_TEGRA124
154         bool
155         select PINCTRL_TEGRA
156
157 config PINCTRL_TEGRA_XUSB
158         def_bool y if ARCH_TEGRA
159         select GENERIC_PHY
160         select PINCONF
161         select PINMUX
162
163 config PINCTRL_TZ1090
164         bool "Toumaz Xenif TZ1090 pin control driver"
165         depends on SOC_TZ1090
166         select PINMUX
167         select GENERIC_PINCONF
168
169 config PINCTRL_TZ1090_PDC
170         bool "Toumaz Xenif TZ1090 PDC pin control driver"
171         depends on SOC_TZ1090
172         select PINMUX
173         select PINCONF
174
175 config PINCTRL_U300
176         bool "U300 pin controller driver"
177         depends on ARCH_U300
178         select PINMUX
179         select GENERIC_PINCONF
180
181 config 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
191 config 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
202 config 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
210 source "drivers/pinctrl/berlin/Kconfig"
211 source "drivers/pinctrl/freescale/Kconfig"
212 source "drivers/pinctrl/intel/Kconfig"
213 source "drivers/pinctrl/mvebu/Kconfig"
214 source "drivers/pinctrl/nomadik/Kconfig"
215 source "drivers/pinctrl/qcom/Kconfig"
216 source "drivers/pinctrl/samsung/Kconfig"
217 source "drivers/pinctrl/sh-pfc/Kconfig"
218 source "drivers/pinctrl/spear/Kconfig"
219 source "drivers/pinctrl/sunxi/Kconfig"
220 source "drivers/pinctrl/vt8500/Kconfig"
221
222 config PINCTRL_XWAY
223         bool
224         depends on SOC_TYPE_XWAY
225         depends on PINCTRL_LANTIQ
226
227 config PINCTRL_TB10X
228         bool
229         depends on ARC_PLAT_TB10X
230
231 endmenu
232
233 endif