aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/gpio.txt10
-rw-r--r--arch/alpha/Kconfig3
-rw-r--r--arch/arm/Kconfig3
-rw-r--r--arch/arm/plat-orion/gpio.c2
-rw-r--r--arch/arm64/Kconfig3
-rw-r--r--arch/avr32/Kconfig3
-rw-r--r--arch/blackfin/Kconfig3
-rw-r--r--arch/hexagon/Kconfig3
-rw-r--r--arch/ia64/Kconfig3
-rw-r--r--arch/m68k/Kconfig3
-rw-r--r--arch/metag/Kconfig3
-rw-r--r--arch/microblaze/Kconfig3
-rw-r--r--arch/mips/Kconfig3
-rw-r--r--arch/openrisc/Kconfig3
-rw-r--r--arch/powerpc/Kconfig5
-rw-r--r--arch/sh/Kconfig3
-rw-r--r--arch/sparc/Kconfig5
-rw-r--r--arch/unicore32/Kconfig3
-rw-r--r--arch/x86/Kconfig3
-rw-r--r--arch/xtensa/Kconfig3
-rw-r--r--drivers/gpio/Kconfig1
-rw-r--r--drivers/gpio/gpio-lpc32xx.c2
22 files changed, 7 insertions, 66 deletions
diff --git a/Documentation/gpio.txt b/Documentation/gpio.txt
index 77a1d11af723..6f83fa965b4b 100644
--- a/Documentation/gpio.txt
+++ b/Documentation/gpio.txt
@@ -72,11 +72,11 @@ in this document, but drivers acting as clients to the GPIO interface must
72not care how it's implemented.) 72not care how it's implemented.)
73 73
74That said, if the convention is supported on their platform, drivers should 74That said, if the convention is supported on their platform, drivers should
75use it when possible. Platforms must declare GENERIC_GPIO support in their 75use it when possible. Platforms must select ARCH_REQUIRE_GPIOLIB or
76Kconfig (boolean true), and provide an <asm/gpio.h> file. Drivers that can't 76ARCH_WANT_OPTIONAL_GPIOLIB in their Kconfig. Drivers that can't work without
77work without standard GPIO calls should have Kconfig entries which depend 77standard GPIO calls should have Kconfig entries which depend on GPIOLIB. The
78on GENERIC_GPIO. The GPIO calls are available, either as "real code" or as 78GPIO calls are available, either as "real code" or as optimized-away stubs,
79optimized-away stubs, when drivers use the include file: 79when drivers use the include file:
80 80
81 #include <linux/gpio.h> 81 #include <linux/gpio.h>
82 82
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig
index 8a33ba01301f..282ff372a06e 100644
--- a/arch/alpha/Kconfig
+++ b/arch/alpha/Kconfig
@@ -56,9 +56,6 @@ config GENERIC_CALIBRATE_DELAY
56 bool 56 bool
57 default y 57 default y
58 58
59config GENERIC_GPIO
60 bool
61
62config ZONE_DMA 59config ZONE_DMA
63 bool 60 bool
64 default y 61 default y
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 13b739469c51..ceac9a43da7d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -107,9 +107,6 @@ config MIGHT_HAVE_PCI
107config SYS_SUPPORTS_APM_EMULATION 107config SYS_SUPPORTS_APM_EMULATION
108 bool 108 bool
109 109
110config GENERIC_GPIO
111 bool
112
113config HAVE_TCM 110config HAVE_TCM
114 bool 111 bool
115 select GENERIC_ALLOCATOR 112 select GENERIC_ALLOCATOR
diff --git a/arch/arm/plat-orion/gpio.c b/arch/arm/plat-orion/gpio.c
index c29ee7ea200b..59ddf4d0aca9 100644
--- a/arch/arm/plat-orion/gpio.c
+++ b/arch/arm/plat-orion/gpio.c
@@ -150,7 +150,7 @@ err_out:
150} 150}
151 151
152/* 152/*
153 * GENERIC_GPIO primitives. 153 * GPIO primitives.
154 */ 154 */
155static int orion_gpio_request(struct gpio_chip *chip, unsigned pin) 155static int orion_gpio_request(struct gpio_chip *chip, unsigned pin)
156{ 156{
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 9b6d19f74078..e6e700740b7e 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -92,9 +92,6 @@ config SWIOTLB
92config IOMMU_HELPER 92config IOMMU_HELPER
93 def_bool SWIOTLB 93 def_bool SWIOTLB
94 94
95config GENERIC_GPIO
96 bool
97
98source "init/Kconfig" 95source "init/Kconfig"
99 96
100source "kernel/Kconfig.freezer" 97source "kernel/Kconfig.freezer"
diff --git a/arch/avr32/Kconfig b/arch/avr32/Kconfig
index d22c6b46601c..ff775b8e3228 100644
--- a/arch/avr32/Kconfig
+++ b/arch/avr32/Kconfig
@@ -26,9 +26,6 @@ config AVR32
26 There is an AVR32 Linux project with a web page at 26 There is an AVR32 Linux project with a web page at
27 http://avr32linux.org/. 27 http://avr32linux.org/.
28 28
29config GENERIC_GPIO
30 def_bool n
31
32config STACKTRACE_SUPPORT 29config STACKTRACE_SUPPORT
33 def_bool y 30 def_bool y
34 31
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig
index 20e203aef0fe..71dd50b7c13a 100644
--- a/arch/blackfin/Kconfig
+++ b/arch/blackfin/Kconfig
@@ -55,9 +55,6 @@ config GENERIC_BUG
55config ZONE_DMA 55config ZONE_DMA
56 def_bool y 56 def_bool y
57 57
58config GENERIC_GPIO
59 def_bool n
60
61config FORCE_MAX_ZONEORDER 58config FORCE_MAX_ZONEORDER
62 int 59 int
63 default "14" 60 default "14"
diff --git a/arch/hexagon/Kconfig b/arch/hexagon/Kconfig
index e4decc6b8947..21d6ba9782e5 100644
--- a/arch/hexagon/Kconfig
+++ b/arch/hexagon/Kconfig
@@ -170,9 +170,6 @@ source "mm/Kconfig"
170 170
171source "kernel/Kconfig.hz" 171source "kernel/Kconfig.hz"
172 172
173config GENERIC_GPIO
174 def_bool n
175
176endmenu 173endmenu
177 174
178source "init/Kconfig" 175source "init/Kconfig"
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
index 9a02f71c6b1f..38ef339190ee 100644
--- a/arch/ia64/Kconfig
+++ b/arch/ia64/Kconfig
@@ -101,9 +101,6 @@ config GENERIC_CALIBRATE_DELAY
101config HAVE_SETUP_PER_CPU_AREA 101config HAVE_SETUP_PER_CPU_AREA
102 def_bool y 102 def_bool y
103 103
104config GENERIC_GPIO
105 bool
106
107config DMI 104config DMI
108 bool 105 bool
109 default y 106 default y
diff --git a/arch/m68k/Kconfig b/arch/m68k/Kconfig
index 6de813370b8c..821170e5f6ed 100644
--- a/arch/m68k/Kconfig
+++ b/arch/m68k/Kconfig
@@ -35,9 +35,6 @@ config ARCH_HAS_ILOG2_U32
35config ARCH_HAS_ILOG2_U64 35config ARCH_HAS_ILOG2_U64
36 bool 36 bool
37 37
38config GENERIC_GPIO
39 bool
40
41config GENERIC_HWEIGHT 38config GENERIC_HWEIGHT
42 bool 39 bool
43 default y 40 default y
diff --git a/arch/metag/Kconfig b/arch/metag/Kconfig
index afc8973d1488..0e97f5c50ff4 100644
--- a/arch/metag/Kconfig
+++ b/arch/metag/Kconfig
@@ -54,9 +54,6 @@ config GENERIC_HWEIGHT
54config GENERIC_CALIBRATE_DELAY 54config GENERIC_CALIBRATE_DELAY
55 def_bool y 55 def_bool y
56 56
57config GENERIC_GPIO
58 def_bool n
59
60config NO_IOPORT 57config NO_IOPORT
61 def_bool y 58 def_bool y
62 59
diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
index 1323fa2530eb..4fb682a7d4e9 100644
--- a/arch/microblaze/Kconfig
+++ b/arch/microblaze/Kconfig
@@ -56,9 +56,6 @@ config GENERIC_HWEIGHT
56config GENERIC_CALIBRATE_DELAY 56config GENERIC_CALIBRATE_DELAY
57 def_bool y 57 def_bool y
58 58
59config GENERIC_GPIO
60 bool
61
62config GENERIC_CSUM 59config GENERIC_CSUM
63 def_bool y 60 def_bool y
64 61
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index ff0e563206cf..539398179584 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -1004,9 +1004,6 @@ config GENERIC_ISA_DMA_SUPPORT_BROKEN
1004config ISA_DMA_API 1004config ISA_DMA_API
1005 bool 1005 bool
1006 1006
1007config GENERIC_GPIO
1008 bool
1009
1010config HOLES_IN_ZONE 1007config HOLES_IN_ZONE
1011 bool 1008 bool
1012 1009
diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig
index e32440268899..6c404eee9901 100644
--- a/arch/openrisc/Kconfig
+++ b/arch/openrisc/Kconfig
@@ -44,9 +44,6 @@ config GENERIC_HWEIGHT
44config NO_IOPORT 44config NO_IOPORT
45 def_bool y 45 def_bool y
46 46
47config GENERIC_GPIO
48 def_bool n
49
50config TRACE_IRQFLAGS_SUPPORT 47config TRACE_IRQFLAGS_SUPPORT
51 def_bool y 48 def_bool y
52 49
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index ea5bb045983a..9c5bc6882e08 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -82,11 +82,6 @@ config GENERIC_HWEIGHT
82 bool 82 bool
83 default y 83 default y
84 84
85config GENERIC_GPIO
86 bool
87 help
88 Generic GPIO API support
89
90config PPC 85config PPC
91 bool 86 bool
92 default y 87 default y
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index 5e859633ce69..f9391a692ef6 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -92,9 +92,6 @@ config GENERIC_CSUM
92config GENERIC_HWEIGHT 92config GENERIC_HWEIGHT
93 def_bool y 93 def_bool y
94 94
95config GENERIC_GPIO
96 def_bool n
97
98config GENERIC_CALIBRATE_DELAY 95config GENERIC_CALIBRATE_DELAY
99 bool 96 bool
100 97
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
index 3d361f236308..90b3a0f66d90 100644
--- a/arch/sparc/Kconfig
+++ b/arch/sparc/Kconfig
@@ -135,11 +135,6 @@ config GENERIC_ISA_DMA
135 bool 135 bool
136 default y if SPARC32 136 default y if SPARC32
137 137
138config GENERIC_GPIO
139 bool
140 help
141 Generic GPIO API support
142
143config ARCH_SUPPORTS_DEBUG_PAGEALLOC 138config ARCH_SUPPORTS_DEBUG_PAGEALLOC
144 def_bool y if SPARC64 139 def_bool y if SPARC64
145 140
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig
index 468cd706be1d..41bcc0013442 100644
--- a/arch/unicore32/Kconfig
+++ b/arch/unicore32/Kconfig
@@ -23,9 +23,6 @@ config UNICORE32
23 designs licensed by PKUnity Ltd. 23 designs licensed by PKUnity Ltd.
24 Please see web page at <http://www.pkunity.com/>. 24 Please see web page at <http://www.pkunity.com/>.
25 25
26config GENERIC_GPIO
27 bool
28
29config GENERIC_CSUM 26config GENERIC_CSUM
30 def_bool y 27 def_bool y
31 28
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 70c0f3da0476..a6298c20c6ce 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -172,9 +172,6 @@ config GENERIC_BUG_RELATIVE_POINTERS
172config GENERIC_HWEIGHT 172config GENERIC_HWEIGHT
173 def_bool y 173 def_bool y
174 174
175config GENERIC_GPIO
176 bool
177
178config ARCH_MAY_HAVE_PC_FDC 175config ARCH_MAY_HAVE_PC_FDC
179 def_bool y 176 def_bool y
180 depends on ISA_DMA_API 177 depends on ISA_DMA_API
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index b09de49dbec5..acdfc615cca2 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -33,9 +33,6 @@ config RWSEM_XCHGADD_ALGORITHM
33config GENERIC_HWEIGHT 33config GENERIC_HWEIGHT
34 def_bool y 34 def_bool y
35 35
36config GENERIC_GPIO
37 bool
38
39config ARCH_HAS_ILOG2_U32 36config ARCH_HAS_ILOG2_U32
40 def_bool n 37 def_bool n
41 38
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 93aaadf99f28..5d53aba8e1c6 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -38,7 +38,6 @@ config GPIO_DEVRES
38menuconfig GPIOLIB 38menuconfig GPIOLIB
39 bool "GPIO Support" 39 bool "GPIO Support"
40 depends on ARCH_WANT_OPTIONAL_GPIOLIB || ARCH_REQUIRE_GPIOLIB 40 depends on ARCH_WANT_OPTIONAL_GPIOLIB || ARCH_REQUIRE_GPIOLIB
41 select GENERIC_GPIO
42 help 41 help
43 This enables GPIO support through the generic GPIO library. 42 This enables GPIO support through the generic GPIO library.
44 You only need to enable this, if you also want to enable 43 You only need to enable this, if you also want to enable
diff --git a/drivers/gpio/gpio-lpc32xx.c b/drivers/gpio/gpio-lpc32xx.c
index 36d7dee07b28..4ad9c6b6a134 100644
--- a/drivers/gpio/gpio-lpc32xx.c
+++ b/drivers/gpio/gpio-lpc32xx.c
@@ -255,7 +255,7 @@ static int __get_gpo_state_p3(struct lpc32xx_gpio_chip *group,
255} 255}
256 256
257/* 257/*
258 * GENERIC_GPIO primitives. 258 * GPIO primitives.
259 */ 259 */
260static int lpc32xx_gpio_dir_input_p012(struct gpio_chip *chip, 260static int lpc32xx_gpio_dir_input_p012(struct gpio_chip *chip,
261 unsigned pin) 261 unsigned pin)