Kconfig (361b79119a4b7f53f728913b5ed2c8d2d10c16f5) Kconfig (60f749f8e4cfdfffa5f29c966050ed680eeedac2)
1#
2# GPIO infrastructure and drivers
3#
4
5config ARCH_HAVE_CUSTOM_GPIO_H
6 bool
7 help
8 Selecting this config option from the architecture Kconfig allows
9 the architecture to provide a custom asm/gpio.h implementation
10 overriding the default implementations. New uses of this are
11 strongly discouraged.
12
1#
2# GPIO infrastructure and drivers
3#
4
5config ARCH_HAVE_CUSTOM_GPIO_H
6 bool
7 help
8 Selecting this config option from the architecture Kconfig allows
9 the architecture to provide a custom asm/gpio.h implementation
10 overriding the default implementations. New uses of this are
11 strongly discouraged.
12
13config ARCH_WANT_OPTIONAL_GPIOLIB
14 bool
15 help
16 Select this config option from the architecture Kconfig, if
17 it is possible to use gpiolib on the architecture, but let the
18 user decide whether to actually build it or not.
19 Select this instead of ARCH_REQUIRE_GPIOLIB, if your architecture does
20 not depend on GPIOs being available, but rather let the user
21 decide whether he needs it or not.
22
23config ARCH_REQUIRE_GPIOLIB
24 bool
25 select GPIOLIB
26 help
27 Platforms select gpiolib if they use this infrastructure
28 for all their GPIOs, usually starting with ones integrated
29 into SOC processors.
30 Selecting this from the architecture code will cause the gpiolib
31 code to always get built in.
32
33
13menuconfig GPIOLIB
14 bool "GPIO Support"
15 select ANON_INODES
16 help
17 This enables GPIO support through the generic GPIO library.
18 You only need to enable this, if you also want to enable
19 one or more of the GPIO drivers below.
20
21 If unsure, say N.
22
23if GPIOLIB
24
25config GPIO_DEVRES
26 def_bool y
27 depends on HAS_IOMEM
28
29config OF_GPIO
30 def_bool y
31 depends on OF
34menuconfig GPIOLIB
35 bool "GPIO Support"
36 select ANON_INODES
37 help
38 This enables GPIO support through the generic GPIO library.
39 You only need to enable this, if you also want to enable
40 one or more of the GPIO drivers below.
41
42 If unsure, say N.
43
44if GPIOLIB
45
46config GPIO_DEVRES
47 def_bool y
48 depends on HAS_IOMEM
49
50config OF_GPIO
51 def_bool y
52 depends on OF
53 depends on HAS_IOMEM
32
33config GPIO_ACPI
34 def_bool y
35 depends on ACPI
36
37config GPIOLIB_IRQCHIP
38 select IRQ_DOMAIN
39 bool

--- 61 unchanged lines hidden (view full) ---

101config GPIO_AMDPT
102 tristate "AMD Promontory GPIO support"
103 depends on ACPI
104 select GPIO_GENERIC
105 help
106 driver for GPIO functionality on Promontory IOHub
107 Require ACPI ASL code to enumerate as a platform device.
108
54
55config GPIO_ACPI
56 def_bool y
57 depends on ACPI
58
59config GPIOLIB_IRQCHIP
60 select IRQ_DOMAIN
61 bool

--- 61 unchanged lines hidden (view full) ---

123config GPIO_AMDPT
124 tristate "AMD Promontory GPIO support"
125 depends on ACPI
126 select GPIO_GENERIC
127 help
128 driver for GPIO functionality on Promontory IOHub
129 Require ACPI ASL code to enumerate as a platform device.
130
109config GPIO_ASPEED
110 tristate "Aspeed GPIO support"
111 depends on (ARCH_ASPEED || COMPILE_TEST) && OF_GPIO
112 select GPIOLIB_IRQCHIP
113 help
114 Say Y here to support Aspeed AST2400 and AST2500 GPIO controllers.
115
116config GPIO_ATH79
117 tristate "Atheros AR71XX/AR724X/AR913X GPIO support"
118 default y if ATH79
119 depends on ATH79 || COMPILE_TEST
120 select GPIO_GENERIC
121 select GPIOLIB_IRQCHIP
122 help
123 Select this option to enable GPIO driver for
124 Atheros AR71XX/AR724X/AR913X SoC devices.
125
131config GPIO_ATH79
132 tristate "Atheros AR71XX/AR724X/AR913X GPIO support"
133 default y if ATH79
134 depends on ATH79 || COMPILE_TEST
135 select GPIO_GENERIC
136 select GPIOLIB_IRQCHIP
137 help
138 Select this option to enable GPIO driver for
139 Atheros AR71XX/AR724X/AR913X SoC devices.
140
126config GPIO_AXP209
127 tristate "X-Powers AXP209 PMIC GPIO Support"
128 depends on MFD_AXP20X
129 help
130 Say yes to enable GPIO support for the AXP209 PMIC
131
132config GPIO_BCM_KONA
133 bool "Broadcom Kona GPIO"
134 depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST)
135 help
136 Turn on GPIO support for Broadcom "Kona" chips.
137
138config GPIO_BRCMSTB
139 tristate "BRCMSTB GPIO support"

--- 35 unchanged lines hidden (view full) ---

175config GPIO_EP93XX
176 def_bool y
177 depends on ARCH_EP93XX
178 select GPIO_GENERIC
179
180config GPIO_ETRAXFS
181 bool "Axis ETRAX FS General I/O"
182 depends on CRIS || COMPILE_TEST
141config GPIO_BCM_KONA
142 bool "Broadcom Kona GPIO"
143 depends on OF_GPIO && (ARCH_BCM_MOBILE || COMPILE_TEST)
144 help
145 Turn on GPIO support for Broadcom "Kona" chips.
146
147config GPIO_BRCMSTB
148 tristate "BRCMSTB GPIO support"

--- 35 unchanged lines hidden (view full) ---

184config GPIO_EP93XX
185 def_bool y
186 depends on ARCH_EP93XX
187 select GPIO_GENERIC
188
189config GPIO_ETRAXFS
190 bool "Axis ETRAX FS General I/O"
191 depends on CRIS || COMPILE_TEST
183 depends on OF
192 depends on OF_GPIO
184 select GPIO_GENERIC
185 select GPIOLIB_IRQCHIP
186 help
187 Say yes here to support the GPIO controller on Axis ETRAX FS SoCs.
188
189config GPIO_GE_FPGA
190 bool "GE FPGA based GPIO"
191 depends on GE_FPGA

--- 9 unchanged lines hidden (view full) ---

201config GPIO_GENERIC_PLATFORM
202 tristate "Generic memory-mapped GPIO controller support (MMIO platform device)"
203 select GPIO_GENERIC
204 help
205 Say yes here to support basic platform_device memory-mapped GPIO controllers.
206
207config GPIO_GRGPIO
208 tristate "Aeroflex Gaisler GRGPIO support"
193 select GPIO_GENERIC
194 select GPIOLIB_IRQCHIP
195 help
196 Say yes here to support the GPIO controller on Axis ETRAX FS SoCs.
197
198config GPIO_GE_FPGA
199 bool "GE FPGA based GPIO"
200 depends on GE_FPGA

--- 9 unchanged lines hidden (view full) ---

210config GPIO_GENERIC_PLATFORM
211 tristate "Generic memory-mapped GPIO controller support (MMIO platform device)"
212 select GPIO_GENERIC
213 help
214 Say yes here to support basic platform_device memory-mapped GPIO controllers.
215
216config GPIO_GRGPIO
217 tristate "Aeroflex Gaisler GRGPIO support"
209 depends on OF
218 depends on OF_GPIO
210 select GPIO_GENERIC
211 select IRQ_DOMAIN
212 help
213 Select this to support Aeroflex Gaisler GRGPIO cores from the GRLIB
214 VHDL IP core library.
215
216config GPIO_ICH
217 tristate "Intel ICH GPIO"

--- 81 unchanged lines hidden (view full) ---

299 select IRQ_DOMAIN
300 help
301 Say Y here if you're going to use hardware that connects to the
302 MPC512x/831x/834x/837x/8572/8610/QorIQ GPIOs.
303
304config GPIO_MVEBU
305 def_bool y
306 depends on PLAT_ORION
219 select GPIO_GENERIC
220 select IRQ_DOMAIN
221 help
222 Select this to support Aeroflex Gaisler GRGPIO cores from the GRLIB
223 VHDL IP core library.
224
225config GPIO_ICH
226 tristate "Intel ICH GPIO"

--- 81 unchanged lines hidden (view full) ---

308 select IRQ_DOMAIN
309 help
310 Say Y here if you're going to use hardware that connects to the
311 MPC512x/831x/834x/837x/8572/8610/QorIQ GPIOs.
312
313config GPIO_MVEBU
314 def_bool y
315 depends on PLAT_ORION
307 depends on OF
316 depends on OF_GPIO
308 select GENERIC_IRQ_CHIP
309
310config GPIO_MXC
311 def_bool y
312 depends on ARCH_MXC
313 select GPIO_GENERIC
314 select GENERIC_IRQ_CHIP
315

--- 76 unchanged lines hidden (view full) ---

392 bool
393 select GENERIC_IRQ_CHIP
394 select OF_GPIO
395
396config GPIO_TEGRA
397 bool "NVIDIA Tegra GPIO support"
398 default ARCH_TEGRA
399 depends on ARCH_TEGRA || COMPILE_TEST
317 select GENERIC_IRQ_CHIP
318
319config GPIO_MXC
320 def_bool y
321 depends on ARCH_MXC
322 select GPIO_GENERIC
323 select GENERIC_IRQ_CHIP
324

--- 76 unchanged lines hidden (view full) ---

401 bool
402 select GENERIC_IRQ_CHIP
403 select OF_GPIO
404
405config GPIO_TEGRA
406 bool "NVIDIA Tegra GPIO support"
407 default ARCH_TEGRA
408 depends on ARCH_TEGRA || COMPILE_TEST
400 depends on OF
409 depends on OF_GPIO
401 help
402 Say yes here to support GPIO pins on NVIDIA Tegra SoCs.
403
404config GPIO_TS4800
405 tristate "TS-4800 DIO blocks and compatibles"
406 depends on OF_GPIO
407 depends on SOC_IMX51 || COMPILE_TEST
408 select GPIO_GENERIC

--- 151 unchanged lines hidden (view full) ---

560 tristate "F71869, F71869A, F71882FG, F71889F and F81866 GPIO support"
561 help
562 This option enables support for GPIOs found on Fintek Super-I/O
563 chips F71869, F71869A, F71882FG, F71889F and F81866.
564
565 To compile this driver as a module, choose M here: the module will
566 be called f7188x-gpio.
567
410 help
411 Say yes here to support GPIO pins on NVIDIA Tegra SoCs.
412
413config GPIO_TS4800
414 tristate "TS-4800 DIO blocks and compatibles"
415 depends on OF_GPIO
416 depends on SOC_IMX51 || COMPILE_TEST
417 select GPIO_GENERIC

--- 151 unchanged lines hidden (view full) ---

569 tristate "F71869, F71869A, F71882FG, F71889F and F81866 GPIO support"
570 help
571 This option enables support for GPIOs found on Fintek Super-I/O
572 chips F71869, F71869A, F71882FG, F71889F and F81866.
573
574 To compile this driver as a module, choose M here: the module will
575 be called f7188x-gpio.
576
568config GPIO_GPIO_MM
569 tristate "Diamond Systems GPIO-MM GPIO support"
570 depends on ISA_BUS_API
571 help
572 Enables GPIO support for the Diamond Systems GPIO-MM and GPIO-MM-12.
573
574 The Diamond Systems GPIO-MM device features 48 lines of digital I/O
575 via the emulation of dual 82C55A PPI chips. This driver provides GPIO
576 support for these 48 channels of digital I/O.
577
578 The base port addresses for the devices may be configured via the base
579 array module parameter.
580
581config GPIO_IT87
582 tristate "IT87xx GPIO support"
583 help
584 Say yes here to support GPIO functionality of IT87xx Super I/O chips.
585
586 This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
587 supports the IT8761E, IT8620E and IT8628E Super I/O chip as well.
588

--- 190 unchanged lines hidden (view full) ---

779config GPIO_TPIC2810
780 tristate "TPIC2810 8-Bit I2C GPO expander"
781 help
782 Say yes here to enable the GPO driver for the TI TPIC2810 chip.
783
784 To compile this driver as a module, choose M here: the module will
785 be called gpio-tpic2810.
786
577config GPIO_IT87
578 tristate "IT87xx GPIO support"
579 help
580 Say yes here to support GPIO functionality of IT87xx Super I/O chips.
581
582 This driver is tested with ITE IT8728 and IT8732 Super I/O chips, and
583 supports the IT8761E, IT8620E and IT8628E Super I/O chip as well.
584

--- 190 unchanged lines hidden (view full) ---

775config GPIO_TPIC2810
776 tristate "TPIC2810 8-Bit I2C GPO expander"
777 help
778 Say yes here to enable the GPO driver for the TI TPIC2810 chip.
779
780 To compile this driver as a module, choose M here: the module will
781 be called gpio-tpic2810.
782
787config GPIO_TS4900
788 tristate "Technologic Systems FPGA I2C GPIO"
789 select REGMAP_I2C
790 help
791 Say yes here to enabled the GPIO driver for Technologic's FPGA core.
792 Series supported include TS-4100, TS-4900, TS-7970 and TS-7990.
793
794endmenu
795
796menu "MFD GPIO expanders"
797
798config GPIO_ADP5520
799 tristate "GPIO Support for ADP5520 PMIC"
800 depends on PMIC_ADP5520
801 help

--- 189 unchanged lines hidden (view full) ---

991
992config GPIO_UCB1400
993 tristate "Philips UCB1400 GPIO"
994 depends on UCB1400_CORE
995 help
996 This enables support for the Philips UCB1400 GPIO pins.
997 The UCB1400 is an AC97 audio codec.
998
783endmenu
784
785menu "MFD GPIO expanders"
786
787config GPIO_ADP5520
788 tristate "GPIO Support for ADP5520 PMIC"
789 depends on PMIC_ADP5520
790 help

--- 189 unchanged lines hidden (view full) ---

980
981config GPIO_UCB1400
982 tristate "Philips UCB1400 GPIO"
983 depends on UCB1400_CORE
984 help
985 This enables support for the Philips UCB1400 GPIO pins.
986 The UCB1400 is an AC97 audio codec.
987
999config GPIO_WHISKEY_COVE
1000 tristate "GPIO support for Whiskey Cove PMIC"
1001 depends on INTEL_SOC_PMIC
1002 select GPIOLIB_IRQCHIP
1003 help
1004 Support for GPIO pins on Whiskey Cove PMIC.
1005
1006 Say Yes if you have a Intel SoC based tablet with Whiskey Cove PMIC
1007 inside.
1008
1009 This driver can also be built as a module. If so, the module will be
1010 called gpio-wcove.
1011
1012config GPIO_WM831X
1013 tristate "WM831x GPIOs"
1014 depends on MFD_WM831X
1015 help
1016 Say yes here to access the GPIO signals of WM831x power management
1017 chips from Wolfson Microelectronics.
1018
1019config GPIO_WM8350

--- 99 unchanged lines hidden (view full) ---

1119
1120endmenu
1121
1122menu "SPI GPIO expanders"
1123 depends on SPI_MASTER
1124
1125config GPIO_74X164
1126 tristate "74x164 serial-in/parallel-out 8-bits shift register"
988config GPIO_WM831X
989 tristate "WM831x GPIOs"
990 depends on MFD_WM831X
991 help
992 Say yes here to access the GPIO signals of WM831x power management
993 chips from Wolfson Microelectronics.
994
995config GPIO_WM8350

--- 99 unchanged lines hidden (view full) ---

1095
1096endmenu
1097
1098menu "SPI GPIO expanders"
1099 depends on SPI_MASTER
1100
1101config GPIO_74X164
1102 tristate "74x164 serial-in/parallel-out 8-bits shift register"
1127 depends on OF
1103 depends on OF_GPIO
1128 help
1129 Driver for 74x164 compatible serial-in/parallel-out 8-outputs
1130 shift registers. This driver can be used to provide access
1131 to more gpio outputs.
1132
1133config GPIO_MAX7301
1134 tristate "Maxim MAX7301 GPIO expander"
1135 select GPIO_MAX730X

--- 14 unchanged lines hidden (view full) ---

1150
1151endmenu
1152
1153menu "SPI or I2C GPIO expanders"
1154 depends on (SPI_MASTER && !I2C) || I2C
1155
1156config GPIO_MCP23S08
1157 tristate "Microchip MCP23xxx I/O expander"
1104 help
1105 Driver for 74x164 compatible serial-in/parallel-out 8-outputs
1106 shift registers. This driver can be used to provide access
1107 to more gpio outputs.
1108
1109config GPIO_MAX7301
1110 tristate "Maxim MAX7301 GPIO expander"
1111 select GPIO_MAX730X

--- 14 unchanged lines hidden (view full) ---

1126
1127endmenu
1128
1129menu "SPI or I2C GPIO expanders"
1130 depends on (SPI_MASTER && !I2C) || I2C
1131
1132config GPIO_MCP23S08
1133 tristate "Microchip MCP23xxx I/O expander"
1134 depends on OF_GPIO
1158 select GPIOLIB_IRQCHIP
1159 help
1160 SPI/I2C driver for Microchip MCP23S08/MCP23S17/MCP23008/MCP23017
1161 I/O expanders.
1162 This provides a GPIO interface supporting inputs and outputs.
1163 The I2C versions of the chips can be used as interrupt-controller.
1164
1165endmenu

--- 18 unchanged lines hidden ---
1135 select GPIOLIB_IRQCHIP
1136 help
1137 SPI/I2C driver for Microchip MCP23S08/MCP23S17/MCP23008/MCP23017
1138 I/O expanders.
1139 This provides a GPIO interface supporting inputs and outputs.
1140 The I2C versions of the chips can be used as interrupt-controller.
1141
1142endmenu

--- 18 unchanged lines hidden ---