Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux

Pull removal of GENERIC_GPIO from Grant Likely:
"GENERIC_GPIO now synonymous with GPIOLIB. There are no longer any
valid cases for enableing GENERIC_GPIO without GPIOLIB, even though it
is possible to do so which has been causing confusion and breakage.
This branch does the work to completely eliminate GENERIC_GPIO."

* tag 'gpio-for-linus' of git://git.secretlab.ca/git/linux:
gpio: update gpio Chinese documentation
Remove GENERIC_GPIO config option
Convert selectors of GENERIC_GPIO to GPIOLIB
blackfin: force use of gpiolib
m68k: coldfire: use gpiolib
mips: pnx833x: remove requirement for GENERIC_GPIO
openrisc: default GENERIC_GPIO to false
avr32: default GENERIC_GPIO to false
xtensa: remove explicit selection of GENERIC_GPIO
sh: replace CONFIG_GENERIC_GPIO by CONFIG_GPIOLIB
powerpc: remove redundant GENERIC_GPIO selection
unicore32: default GENERIC_GPIO to false
unicore32: remove unneeded select GENERIC_GPIO
arm: plat-orion: use GPIO driver on CONFIG_GPIOLIB
arm: remove redundant GENERIC_GPIO selection
mips: alchemy: require gpiolib
mips: txx9: change GENERIC_GPIO to GPIOLIB
mips: loongson: use GPIO driver on CONFIG_GPIOLIB
mips: remove redundant GENERIC_GPIO select

+76 -155
+5 -5
Documentation/gpio.txt
··· 72 72 not care how it's implemented.) 73 73 74 74 That said, if the convention is supported on their platform, drivers should 75 - use it when possible. Platforms must declare GENERIC_GPIO support in their 76 - Kconfig (boolean true), and provide an <asm/gpio.h> file. Drivers that can't 77 - work without standard GPIO calls should have Kconfig entries which depend 78 - on GENERIC_GPIO. The GPIO calls are available, either as "real code" or as 79 - optimized-away stubs, when drivers use the include file: 75 + use it when possible. Platforms must select ARCH_REQUIRE_GPIOLIB or 76 + ARCH_WANT_OPTIONAL_GPIOLIB in their Kconfig. Drivers that can't work without 77 + standard GPIO calls should have Kconfig entries which depend on GPIOLIB. The 78 + GPIO calls are available, either as "real code" or as optimized-away stubs, 79 + when drivers use the include file: 80 80 81 81 #include <linux/gpio.h> 82 82
+4 -4
Documentation/zh_CN/gpio.txt
··· 84 84 控制器的抽象函数来实现它。(有一些可选的代码能支持这种策略的实现,本文档 85 85 后面会介绍,但作为 GPIO 接口的客户端驱动程序必须与它的实现无关。) 86 86 87 - 也就是说,如果在他们的平台上支持这个公约,驱动应尽可能的使用它。平台 88 - 必须在 Kconfig 中声明对 GENERIC_GPIO的支持 (布尔型 true),并提供 89 - 一个 <asm/gpio.h> 文件。那些调用标准 GPIO 函数的驱动应该在 Kconfig 90 - 入口中声明依赖GENERIC_GPIO。当驱动包含文件: 87 + 也就是说,如果在他们的平台上支持这个公约,驱动应尽可能的使用它。同时,平台 88 + 必须在 Kconfig 中选择 ARCH_REQUIRE_GPIOLIB 或者 ARCH_WANT_OPTIONAL_GPIOLIB 89 + 选项。那些调用标准 GPIO 函数的驱动应该在 Kconfig 入口中声明依赖GENERIC_GPIO。 90 + 当驱动包含文件: 91 91 92 92 #include <linux/gpio.h> 93 93
-3
arch/alpha/Kconfig
··· 55 55 bool 56 56 default y 57 57 58 - config GENERIC_GPIO 59 - bool 60 - 61 58 config ZONE_DMA 62 59 bool 63 60 default y
-3
arch/arm/Kconfig
··· 109 109 config SYS_SUPPORTS_APM_EMULATION 110 110 bool 111 111 112 - config GENERIC_GPIO 113 - bool 114 - 115 112 config HAVE_TCM 116 113 bool 117 114 select GENERIC_ALLOCATOR
+1 -1
arch/arm/plat-orion/Makefile
··· 3 3 # 4 4 ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include 5 5 6 - orion-gpio-$(CONFIG_GENERIC_GPIO) += gpio.o 6 + orion-gpio-$(CONFIG_GPIOLIB) += gpio.o 7 7 obj-$(CONFIG_PLAT_ORION_LEGACY) += irq.o pcie.o time.o common.o mpp.o 8 8 obj-$(CONFIG_PLAT_ORION_LEGACY) += $(orion-gpio-y)
+1 -1
arch/arm/plat-orion/gpio.c
··· 150 150 } 151 151 152 152 /* 153 - * GENERIC_GPIO primitives. 153 + * GPIO primitives. 154 154 */ 155 155 static int orion_gpio_request(struct gpio_chip *chip, unsigned pin) 156 156 {
-3
arch/arm64/Kconfig
··· 95 95 config IOMMU_HELPER 96 96 def_bool SWIOTLB 97 97 98 - config GENERIC_GPIO 99 - bool 100 - 101 98 source "init/Kconfig" 102 99 103 100 source "kernel/Kconfig.freezer"
-3
arch/avr32/Kconfig
··· 26 26 There is an AVR32 Linux project with a web page at 27 27 http://avr32linux.org/. 28 28 29 - config GENERIC_GPIO 30 - def_bool y 31 - 32 29 config STACKTRACE_SUPPORT 33 30 def_bool y 34 31
+1 -4
arch/blackfin/Kconfig
··· 27 27 select HAVE_OPROFILE 28 28 select HAVE_PERF_EVENTS 29 29 select ARCH_HAVE_CUSTOM_GPIO_H 30 - select ARCH_WANT_OPTIONAL_GPIOLIB 30 + select ARCH_REQUIRE_GPIOLIB 31 31 select HAVE_UID16 32 32 select HAVE_UNDERSCORE_SYMBOL_PREFIX 33 33 select VIRT_TO_BUS ··· 50 50 depends on BUG 51 51 52 52 config ZONE_DMA 53 - def_bool y 54 - 55 - config GENERIC_GPIO 56 53 def_bool y 57 54 58 55 config FORCE_MAX_ZONEORDER
-3
arch/hexagon/Kconfig
··· 155 155 156 156 source "kernel/Kconfig.hz" 157 157 158 - config GENERIC_GPIO 159 - def_bool n 160 - 161 158 endmenu 162 159 163 160 source "init/Kconfig"
-3
arch/ia64/Kconfig
··· 101 101 config HAVE_SETUP_PER_CPU_AREA 102 102 def_bool y 103 103 104 - config GENERIC_GPIO 105 - bool 106 - 107 104 config DMI 108 105 bool 109 106 default y
-3
arch/m68k/Kconfig
··· 35 35 config ARCH_HAS_ILOG2_U64 36 36 bool 37 37 38 - config GENERIC_GPIO 39 - bool 40 - 41 38 config GENERIC_HWEIGHT 42 39 bool 43 40 default y
+1 -2
arch/m68k/Kconfig.cpu
··· 22 22 23 23 config COLDFIRE 24 24 bool "Coldfire CPU family support" 25 - select GENERIC_GPIO 26 - select ARCH_WANT_OPTIONAL_GPIOLIB 25 + select ARCH_REQUIRE_GPIOLIB 27 26 select ARCH_HAVE_CUSTOM_GPIO_H 28 27 select CPU_HAS_NO_BITFIELDS 29 28 select CPU_HAS_NO_MULDIV64
-3
arch/metag/Kconfig
··· 52 52 config GENERIC_CALIBRATE_DELAY 53 53 def_bool y 54 54 55 - config GENERIC_GPIO 56 - def_bool n 57 - 58 55 config NO_IOPORT 59 56 def_bool y 60 57
-3
arch/microblaze/Kconfig
··· 54 54 config GENERIC_CALIBRATE_DELAY 55 55 def_bool y 56 56 57 - config GENERIC_GPIO 58 - bool 59 - 60 57 config GENERIC_CSUM 61 58 def_bool y 62 59
+1 -9
arch/mips/Kconfig
··· 61 61 select SYS_HAS_CPU_MIPS32_R1 62 62 select SYS_SUPPORTS_32BIT_KERNEL 63 63 select SYS_SUPPORTS_APM_EMULATION 64 - select GENERIC_GPIO 65 - select ARCH_WANT_OPTIONAL_GPIOLIB 64 + select ARCH_REQUIRE_GPIOLIB 66 65 select SYS_SUPPORTS_ZBOOT 67 66 select USB_ARCH_HAS_OHCI 68 67 select USB_ARCH_HAS_EHCI ··· 224 225 select SYS_SUPPORTS_ZBOOT_UART16550 225 226 select DMA_NONCOHERENT 226 227 select IRQ_CPU 227 - select GENERIC_GPIO 228 228 select ARCH_REQUIRE_GPIOLIB 229 229 select SYS_HAS_EARLY_PRINTK 230 230 select HAVE_PWM ··· 935 937 bool 936 938 937 939 config GPIO_TXX9 938 - select GENERIC_GPIO 939 940 select ARCH_REQUIRE_GPIOLIB 940 941 bool 941 942 ··· 1004 1007 select GENERIC_ISA_DMA 1005 1008 1006 1009 config ISA_DMA_API 1007 - bool 1008 - 1009 - config GENERIC_GPIO 1010 1010 bool 1011 1011 1012 1012 config HOLES_IN_ZONE ··· 1106 1112 select SYS_SUPPORTS_32BIT_KERNEL 1107 1113 select SYS_SUPPORTS_LITTLE_ENDIAN 1108 1114 select SYS_SUPPORTS_BIG_ENDIAN 1109 - select GENERIC_GPIO 1110 1115 select CPU_MIPSR2_IRQ_VI 1111 1116 1112 1117 config SOC_PNX8335 ··· 1196 1203 bool "Loongson 2F" 1197 1204 depends on SYS_HAS_CPU_LOONGSON2F 1198 1205 select CPU_LOONGSON2 1199 - select GENERIC_GPIO 1200 1206 select ARCH_REQUIRE_GPIOLIB 1201 1207 help 1202 1208 The Loongson 2F processor implements the MIPS III instruction set
+1 -1
arch/mips/loongson/common/Makefile
··· 4 4 5 5 obj-y += setup.o init.o cmdline.o env.o time.o reset.o irq.o \ 6 6 pci.o bonito-irq.o mem.o machtype.o platform.o 7 - obj-$(CONFIG_GENERIC_GPIO) += gpio.o 7 + obj-$(CONFIG_GPIOLIB) += gpio.o 8 8 9 9 # 10 10 # Serial port support
+1 -1
arch/mips/txx9/generic/setup.c
··· 118 118 119 119 /* GPIO support */ 120 120 121 - #ifdef CONFIG_GENERIC_GPIO 121 + #ifdef CONFIG_GPIOLIB 122 122 int gpio_to_irq(unsigned gpio) 123 123 { 124 124 return -EINVAL;
-3
arch/openrisc/Kconfig
··· 44 44 config NO_IOPORT 45 45 def_bool y 46 46 47 - config GENERIC_GPIO 48 - def_bool y 49 - 50 47 config TRACE_IRQFLAGS_SUPPORT 51 48 def_bool y 52 49
-5
arch/powerpc/Kconfig
··· 82 82 bool 83 83 default y 84 84 85 - config GENERIC_GPIO 86 - bool 87 - help 88 - Generic GPIO API support 89 - 90 85 config PPC 91 86 bool 92 87 default y
-1
arch/powerpc/platforms/40x/Kconfig
··· 138 138 bool "PPC4xx GPIO support" 139 139 depends on 40x 140 140 select ARCH_REQUIRE_GPIOLIB 141 - select GENERIC_GPIO 142 141 help 143 142 Enable gpiolib support for ppc40x based boards 144 143
-1
arch/powerpc/platforms/44x/Kconfig
··· 248 248 bool "PPC4xx GPIO support" 249 249 depends on 44x 250 250 select ARCH_REQUIRE_GPIOLIB 251 - select GENERIC_GPIO 252 251 help 253 252 Enable gpiolib support for ppc440 based boards 254 253
+1 -2
arch/powerpc/platforms/85xx/Kconfig
··· 203 203 select DEFAULT_UIMAGE 204 204 select SWIOTLB 205 205 select MMIO_NVRAM 206 - select GENERIC_GPIO 207 206 select ARCH_REQUIRE_GPIOLIB 208 207 select GE_FPGA 209 208 help ··· 327 328 select PPC_E500MC 328 329 select PHYS_64BIT 329 330 select SWIOTLB 330 - select GENERIC_GPIO 331 + select GPIOLIB 331 332 select ARCH_REQUIRE_GPIOLIB 332 333 select HAS_RAPIDIO 333 334 select PPC_EPAPR_HV_PIC
-3
arch/powerpc/platforms/86xx/Kconfig
··· 37 37 bool "GE PPC9A" 38 38 select DEFAULT_UIMAGE 39 39 select MMIO_NVRAM 40 - select GENERIC_GPIO 41 40 select ARCH_REQUIRE_GPIOLIB 42 41 select GE_FPGA 43 42 help ··· 46 47 bool "GE SBC310" 47 48 select DEFAULT_UIMAGE 48 49 select MMIO_NVRAM 49 - select GENERIC_GPIO 50 50 select ARCH_REQUIRE_GPIOLIB 51 51 select GE_FPGA 52 52 help ··· 55 57 bool "GE SBC610" 56 58 select DEFAULT_UIMAGE 57 59 select MMIO_NVRAM 58 - select GENERIC_GPIO 59 60 select ARCH_REQUIRE_GPIOLIB 60 61 select GE_FPGA 61 62 select HAS_RAPIDIO
-1
arch/powerpc/platforms/8xx/Kconfig
··· 114 114 115 115 config 8xx_GPIO 116 116 bool "GPIO API Support" 117 - select GENERIC_GPIO 118 117 select ARCH_REQUIRE_GPIOLIB 119 118 help 120 119 Saying Y here will cause the ports on an MPC8xx processor to be used
-4
arch/powerpc/platforms/Kconfig
··· 302 302 config QE_GPIO 303 303 bool "QE GPIO support" 304 304 depends on QUICC_ENGINE 305 - select GENERIC_GPIO 306 305 select ARCH_REQUIRE_GPIOLIB 307 306 help 308 307 Say Y here if you're going to use hardware that connects to the ··· 314 315 select PPC_LIB_RHEAP 315 316 select PPC_PCI_CHOICE 316 317 select ARCH_REQUIRE_GPIOLIB 317 - select GENERIC_GPIO 318 318 help 319 319 The CPM2 (Communications Processor Module) is a coprocessor on 320 320 embedded CPUs made by Freescale. Selecting this option means that ··· 351 353 config SIMPLE_GPIO 352 354 bool "Support for simple, memory-mapped GPIO controllers" 353 355 depends on PPC 354 - select GENERIC_GPIO 355 356 select ARCH_REQUIRE_GPIOLIB 356 357 help 357 358 Say Y here to support simple, memory-mapped GPIO controllers. ··· 361 364 config MCU_MPC8349EMITX 362 365 bool "MPC8349E-mITX MCU driver" 363 366 depends on I2C=y && PPC_83xx 364 - select GENERIC_GPIO 365 367 select ARCH_REQUIRE_GPIOLIB 366 368 help 367 369 Say Y here to enable soft power-off functionality on the Freescale
-3
arch/sh/Kconfig
··· 93 93 config GENERIC_HWEIGHT 94 94 def_bool y 95 95 96 - config GENERIC_GPIO 97 - def_bool n 98 - 99 96 config GENERIC_CALIBRATE_DELAY 100 97 bool 101 98
+1 -1
arch/sh/boards/mach-sdk7786/Makefile
··· 1 1 obj-y := fpga.o irq.o nmi.o setup.o 2 2 3 - obj-$(CONFIG_GENERIC_GPIO) += gpio.o 3 + obj-$(CONFIG_GPIOLIB) += gpio.o 4 4 obj-$(CONFIG_HAVE_SRAM_POOL) += sram.o
+1 -1
arch/sh/boards/mach-x3proto/Makefile
··· 1 1 obj-y += setup.o ilsel.o 2 2 3 - obj-$(CONFIG_GENERIC_GPIO) += gpio.o 3 + obj-$(CONFIG_GPIOLIB) += gpio.o
+1 -1
arch/sh/kernel/cpu/sh2a/Makefile
··· 21 21 pinmux-$(CONFIG_CPU_SUBTYPE_SH7264) := pinmux-sh7264.o 22 22 pinmux-$(CONFIG_CPU_SUBTYPE_SH7269) := pinmux-sh7269.o 23 23 24 - obj-$(CONFIG_GENERIC_GPIO) += $(pinmux-y) 24 + obj-$(CONFIG_GPIOLIB) += $(pinmux-y)
+1 -1
arch/sh/kernel/cpu/sh3/Makefile
··· 30 30 pinmux-$(CONFIG_CPU_SUBTYPE_SH7720) := pinmux-sh7720.o 31 31 32 32 obj-y += $(clock-y) 33 - obj-$(CONFIG_GENERIC_GPIO) += $(pinmux-y) 33 + obj-$(CONFIG_GPIOLIB) += $(pinmux-y)
+1 -1
arch/sh/kernel/cpu/sh4a/Makefile
··· 47 47 48 48 obj-y += $(clock-y) 49 49 obj-$(CONFIG_SMP) += $(smp-y) 50 - obj-$(CONFIG_GENERIC_GPIO) += $(pinmux-y) 50 + obj-$(CONFIG_GPIOLIB) += $(pinmux-y) 51 51 obj-$(CONFIG_PERF_EVENTS) += perf_event.o 52 52 obj-$(CONFIG_HAVE_HW_BREAKPOINT) += ubc.o
-5
arch/sparc/Kconfig
··· 137 137 bool 138 138 default y if SPARC32 139 139 140 - config GENERIC_GPIO 141 - bool 142 - help 143 - Generic GPIO API support 144 - 145 140 config ARCH_SUPPORTS_DEBUG_PAGEALLOC 146 141 def_bool y if SPARC64 147 142
+1 -5
arch/unicore32/Kconfig
··· 23 23 designs licensed by PKUnity Ltd. 24 24 Please see web page at <http://www.pkunity.com/>. 25 25 26 - config GENERIC_GPIO 27 - def_bool y 28 - 29 26 config GENERIC_CSUM 30 27 def_bool y 31 28 ··· 153 156 154 157 config LEDS 155 158 def_bool y 156 - depends on GENERIC_GPIO 159 + depends on GPIOLIB 157 160 158 161 config ALIGNMENT_TRAP 159 162 def_bool y ··· 216 219 config PUV3_GPIO 217 220 bool 218 221 depends on !ARCH_FPGA 219 - select GENERIC_GPIO 220 222 select GPIO_SYSFS 221 223 default y 222 224
-3
arch/x86/Kconfig
··· 174 174 config GENERIC_HWEIGHT 175 175 def_bool y 176 176 177 - config GENERIC_GPIO 178 - bool 179 - 180 177 config ARCH_MAY_HAVE_PC_FDC 181 178 def_bool y 182 179 depends on ISA_DMA_API
-3
arch/xtensa/Kconfig
··· 33 33 config GENERIC_HWEIGHT 34 34 def_bool y 35 35 36 - config GENERIC_GPIO 37 - bool 38 - 39 36 config ARCH_HAS_ILOG2_U32 40 37 def_bool n 41 38
-1
arch/xtensa/configs/iss_defconfig
··· 10 10 CONFIG_GENERIC_FIND_NEXT_BIT=y 11 11 CONFIG_GENERIC_HWEIGHT=y 12 12 CONFIG_GENERIC_HARDIRQS=y 13 - CONFIG_GENERIC_GPIO=y 14 13 # CONFIG_ARCH_HAS_ILOG2_U32 is not set 15 14 # CONFIG_ARCH_HAS_ILOG2_U64 is not set 16 15 CONFIG_NO_IOPORT=y
-1
arch/xtensa/configs/s6105_defconfig
··· 10 10 CONFIG_GENERIC_FIND_NEXT_BIT=y 11 11 CONFIG_GENERIC_HWEIGHT=y 12 12 CONFIG_GENERIC_HARDIRQS=y 13 - CONFIG_GENERIC_GPIO=y 14 13 # CONFIG_ARCH_HAS_ILOG2_U32 is not set 15 14 # CONFIG_ARCH_HAS_ILOG2_U64 is not set 16 15 CONFIG_NO_IOPORT=y
+1 -1
drivers/extcon/Kconfig
··· 16 16 17 17 config EXTCON_GPIO 18 18 tristate "GPIO extcon support" 19 - depends on GENERIC_GPIO 19 + depends on GPIOLIB 20 20 help 21 21 Say Y here to enable GPIO based extcon support. Note that GPIO 22 22 extcon supports single state per extcon instance.
-1
drivers/gpio/Kconfig
··· 38 38 menuconfig GPIOLIB 39 39 bool "GPIO Support" 40 40 depends on ARCH_WANT_OPTIONAL_GPIOLIB || ARCH_REQUIRE_GPIOLIB 41 - select GENERIC_GPIO 42 41 help 43 42 This enables GPIO support through the generic GPIO library. 44 43 You only need to enable this, if you also want to enable
+1 -1
drivers/gpio/gpio-lpc32xx.c
··· 255 255 } 256 256 257 257 /* 258 - * GENERIC_GPIO primitives. 258 + * GPIO primitives. 259 259 */ 260 260 static int lpc32xx_gpio_dir_input_p012(struct gpio_chip *chip, 261 261 unsigned pin)
+2 -2
drivers/i2c/busses/Kconfig
··· 363 363 364 364 config I2C_CBUS_GPIO 365 365 tristate "CBUS I2C driver" 366 - depends on GENERIC_GPIO 366 + depends on GPIOLIB 367 367 help 368 368 Support for CBUS access using I2C API. Mostly relevant for Nokia 369 369 Internet Tablets (770, N800 and N810). ··· 436 436 437 437 config I2C_GPIO 438 438 tristate "GPIO-based bitbanging I2C" 439 - depends on GENERIC_GPIO 439 + depends on GPIOLIB 440 440 select I2C_ALGOBIT 441 441 help 442 442 This is a very simple bitbanging I2C driver utilizing the
+2 -2
drivers/i2c/muxes/Kconfig
··· 7 7 8 8 config I2C_ARB_GPIO_CHALLENGE 9 9 tristate "GPIO-based I2C arbitration" 10 - depends on GENERIC_GPIO && OF 10 + depends on GPIOLIB && OF 11 11 help 12 12 If you say yes to this option, support will be included for an 13 13 I2C multimaster arbitration scheme using GPIOs and a challenge & ··· 19 19 20 20 config I2C_MUX_GPIO 21 21 tristate "GPIO-based I2C multiplexer" 22 - depends on GENERIC_GPIO 22 + depends on GPIOLIB 23 23 help 24 24 If you say yes to this option, support will be included for a 25 25 GPIO based I2C multiplexer. This driver provides access to
+3 -3
drivers/input/keyboard/Kconfig
··· 175 175 176 176 config KEYBOARD_GPIO 177 177 tristate "GPIO Buttons" 178 - depends on GENERIC_GPIO 178 + depends on GPIOLIB 179 179 help 180 180 This driver implements support for buttons connected 181 181 to GPIO pins of various CPUs (and some other chips). ··· 190 190 191 191 config KEYBOARD_GPIO_POLLED 192 192 tristate "Polled GPIO buttons" 193 - depends on GENERIC_GPIO 193 + depends on GPIOLIB 194 194 select INPUT_POLLDEV 195 195 help 196 196 This driver implements support for buttons connected ··· 241 241 242 242 config KEYBOARD_MATRIX 243 243 tristate "GPIO driven matrix keypad support" 244 - depends on GENERIC_GPIO 244 + depends on GPIOLIB 245 245 select INPUT_MATRIXKMAP 246 246 help 247 247 Enable support for GPIO driven matrix keypad.
+4 -4
drivers/input/misc/Kconfig
··· 214 214 config INPUT_GP2A 215 215 tristate "Sharp GP2AP002A00F I2C Proximity/Opto sensor driver" 216 216 depends on I2C 217 - depends on GENERIC_GPIO 217 + depends on GPIOLIB 218 218 help 219 219 Say Y here if you have a Sharp GP2AP002A00F proximity/als combo-chip 220 220 hooked to an I2C bus. ··· 224 224 225 225 config INPUT_GPIO_TILT_POLLED 226 226 tristate "Polled GPIO tilt switch" 227 - depends on GENERIC_GPIO 227 + depends on GPIOLIB 228 228 select INPUT_POLLDEV 229 229 help 230 230 This driver implements support for tilt switches connected ··· 472 472 473 473 config INPUT_GPIO_ROTARY_ENCODER 474 474 tristate "Rotary encoders connected to GPIO pins" 475 - depends on GPIOLIB && GENERIC_GPIO 475 + depends on GPIOLIB 476 476 help 477 477 Say Y here to add support for rotary encoders connected to GPIO lines. 478 478 Check file:Documentation/input/rotary-encoder.txt for more ··· 484 484 config INPUT_RB532_BUTTON 485 485 tristate "Mikrotik Routerboard 532 button interface" 486 486 depends on MIKROTIK_RB532 487 - depends on GPIOLIB && GENERIC_GPIO 487 + depends on GPIOLIB 488 488 select INPUT_POLLDEV 489 489 help 490 490 Say Y here if you want support for the S1 button built into
+1 -1
drivers/input/mouse/Kconfig
··· 295 295 296 296 config MOUSE_GPIO 297 297 tristate "GPIO mouse" 298 - depends on GENERIC_GPIO 298 + depends on GPIOLIB 299 299 select INPUT_POLLDEV 300 300 help 301 301 This driver simulates a mouse on GPIO lines of various CPUs (and some
+3 -3
drivers/leds/Kconfig
··· 173 173 config LEDS_GPIO 174 174 tristate "LED Support for GPIO connected LEDs" 175 175 depends on LEDS_CLASS 176 - depends on GENERIC_GPIO 176 + depends on GPIOLIB 177 177 help 178 178 This option enables support for the LEDs connected to GPIO 179 179 outputs. To be useful the particular board must have LEDs ··· 362 362 config LEDS_LT3593 363 363 tristate "LED driver for LT3593 controllers" 364 364 depends on LEDS_CLASS 365 - depends on GENERIC_GPIO 365 + depends on GPIOLIB 366 366 help 367 367 This option enables support for LEDs driven by a Linear Technology 368 368 LT3593 controller. This controller uses a special one-wire pulse ··· 431 431 432 432 config LEDS_RENESAS_TPU 433 433 bool "LED support for Renesas TPU" 434 - depends on LEDS_CLASS=y && HAVE_CLK && GENERIC_GPIO 434 + depends on LEDS_CLASS=y && HAVE_CLK && GPIOLIB 435 435 help 436 436 This option enables build of the LED TPU platform driver, 437 437 suitable to drive any TPU channel on newer Renesas SoCs.
+1 -1
drivers/mtd/maps/Kconfig
··· 419 419 420 420 config MTD_GPIO_ADDR 421 421 tristate "GPIO-assisted Flash Chip Support" 422 - depends on GENERIC_GPIO || GPIOLIB 422 + depends on GPIOLIB 423 423 depends on MTD_COMPLEX_MAPPINGS 424 424 help 425 425 Map driver which allows flashes to be partially physically addressed
+1 -1
drivers/mtd/nand/Kconfig
··· 89 89 90 90 config MTD_NAND_GPIO 91 91 tristate "GPIO NAND Flash driver" 92 - depends on GENERIC_GPIO && ARM 92 + depends on GPIOLIB && ARM 93 93 help 94 94 This enables a GPIO based NAND flash driver. 95 95
+1 -1
drivers/net/phy/Kconfig
··· 126 126 127 127 config MDIO_GPIO 128 128 tristate "Support for GPIO lib-based bitbanged MDIO buses" 129 - depends on MDIO_BITBANG && GENERIC_GPIO 129 + depends on MDIO_BITBANG && GPIOLIB 130 130 ---help--- 131 131 Supports GPIO lib-based MDIO busses. 132 132
+13 -13
drivers/pinctrl/sh-pfc/Kconfig
··· 6 6 7 7 config PINCTRL_SH_PFC 8 8 # XXX move off the gpio dependency 9 - depends on GENERIC_GPIO 9 + depends on GPIOLIB 10 10 select GPIO_SH_PFC if ARCH_REQUIRE_GPIOLIB 11 11 select PINMUX 12 12 select PINCONF ··· 40 40 config PINCTRL_PFC_SH7203 41 41 def_bool y 42 42 depends on CPU_SUBTYPE_SH7203 43 - depends on GENERIC_GPIO 43 + depends on GPIOLIB 44 44 select PINCTRL_SH_PFC 45 45 46 46 config PINCTRL_PFC_SH7264 47 47 def_bool y 48 48 depends on CPU_SUBTYPE_SH7264 49 - depends on GENERIC_GPIO 49 + depends on GPIOLIB 50 50 select PINCTRL_SH_PFC 51 51 52 52 config PINCTRL_PFC_SH7269 53 53 def_bool y 54 54 depends on CPU_SUBTYPE_SH7269 55 - depends on GENERIC_GPIO 55 + depends on GPIOLIB 56 56 select PINCTRL_SH_PFC 57 57 58 58 config PINCTRL_PFC_SH7372 ··· 68 68 config PINCTRL_PFC_SH7720 69 69 def_bool y 70 70 depends on CPU_SUBTYPE_SH7720 71 - depends on GENERIC_GPIO 71 + depends on GPIOLIB 72 72 select PINCTRL_SH_PFC 73 73 74 74 config PINCTRL_PFC_SH7722 75 75 def_bool y 76 76 depends on CPU_SUBTYPE_SH7722 77 - depends on GENERIC_GPIO 77 + depends on GPIOLIB 78 78 select PINCTRL_SH_PFC 79 79 80 80 config PINCTRL_PFC_SH7723 81 81 def_bool y 82 82 depends on CPU_SUBTYPE_SH7723 83 - depends on GENERIC_GPIO 83 + depends on GPIOLIB 84 84 select PINCTRL_SH_PFC 85 85 86 86 config PINCTRL_PFC_SH7724 87 87 def_bool y 88 88 depends on CPU_SUBTYPE_SH7724 89 - depends on GENERIC_GPIO 89 + depends on GPIOLIB 90 90 select PINCTRL_SH_PFC 91 91 92 92 config PINCTRL_PFC_SH7734 93 93 def_bool y 94 94 depends on CPU_SUBTYPE_SH7734 95 - depends on GENERIC_GPIO 95 + depends on GPIOLIB 96 96 select PINCTRL_SH_PFC 97 97 98 98 config PINCTRL_PFC_SH7757 99 99 def_bool y 100 100 depends on CPU_SUBTYPE_SH7757 101 - depends on GENERIC_GPIO 101 + depends on GPIOLIB 102 102 select PINCTRL_SH_PFC 103 103 104 104 config PINCTRL_PFC_SH7785 105 105 def_bool y 106 106 depends on CPU_SUBTYPE_SH7785 107 - depends on GENERIC_GPIO 107 + depends on GPIOLIB 108 108 select PINCTRL_SH_PFC 109 109 110 110 config PINCTRL_PFC_SH7786 111 111 def_bool y 112 112 depends on CPU_SUBTYPE_SH7786 113 - depends on GENERIC_GPIO 113 + depends on GPIOLIB 114 114 select PINCTRL_SH_PFC 115 115 116 116 config PINCTRL_PFC_SHX3 117 117 def_bool y 118 118 depends on CPU_SUBTYPE_SHX3 119 - depends on GENERIC_GPIO 119 + depends on GPIOLIB 120 120 select PINCTRL_SH_PFC 121 121 122 122 endif
+1 -1
drivers/regulator/Kconfig
··· 66 66 67 67 config REGULATOR_GPIO 68 68 tristate "GPIO regulator support" 69 - depends on GENERIC_GPIO 69 + depends on GPIOLIB 70 70 help 71 71 This driver provides support for regulators that can be 72 72 controlled via gpios.
+4 -4
drivers/spi/Kconfig
··· 62 62 63 63 config SPI_ATH79 64 64 tristate "Atheros AR71XX/AR724X/AR913X SPI controller driver" 65 - depends on ATH79 && GENERIC_GPIO 65 + depends on ATH79 && GPIOLIB 66 66 select SPI_BITBANG 67 67 help 68 68 This enables support for the SPI controller present on the ··· 175 175 176 176 config SPI_GPIO 177 177 tristate "GPIO-based bitbanging SPI Master" 178 - depends on GENERIC_GPIO 178 + depends on GPIOLIB 179 179 select SPI_BITBANG 180 180 help 181 181 This simple GPIO bitbanging SPI master uses the arch-neutral GPIO ··· 259 259 260 260 config SPI_OC_TINY 261 261 tristate "OpenCores tiny SPI" 262 - depends on GENERIC_GPIO 262 + depends on GPIOLIB 263 263 select SPI_BITBANG 264 264 help 265 265 This is the driver for OpenCores tiny SPI master controller. ··· 457 457 458 458 config SPI_TXX9 459 459 tristate "Toshiba TXx9 SPI controller" 460 - depends on GENERIC_GPIO && CPU_TX49XX 460 + depends on GPIOLIB && CPU_TX49XX 461 461 help 462 462 SPI driver for Toshiba TXx9 MIPS SoCs 463 463
+1 -1
drivers/staging/android/Kconfig
··· 54 54 55 55 config ANDROID_TIMED_GPIO 56 56 tristate "Android timed gpio driver" 57 - depends on GENERIC_GPIO && ANDROID_TIMED_OUTPUT 57 + depends on GPIOLIB && ANDROID_TIMED_OUTPUT 58 58 default n 59 59 60 60 config ANDROID_LOW_MEMORY_KILLER
+1 -1
drivers/staging/iio/accel/Kconfig
··· 61 61 depends on SPI 62 62 select IIO_TRIGGER if IIO_BUFFER 63 63 depends on !IIO_BUFFER || IIO_KFIFO_BUF 64 - depends on GENERIC_GPIO 64 + depends on GPIOLIB 65 65 help 66 66 Say yes here to build SPI support for the ST microelectronics 67 67 accelerometer. The driver supplies direct access via sysfs files
+1 -1
drivers/staging/iio/adc/Kconfig
··· 73 73 config AD7816 74 74 tristate "Analog Devices AD7816/7/8 temperature sensor and ADC driver" 75 75 depends on SPI 76 - depends on GENERIC_GPIO 76 + depends on GPIOLIB 77 77 help 78 78 Say yes here to build support for Analog Devices AD7816/7/8 79 79 temperature sensors and ADC.
+1 -1
drivers/staging/iio/addac/Kconfig
··· 5 5 6 6 config ADT7316 7 7 tristate "Analog Devices ADT7316/7/8 ADT7516/7/9 temperature sensor, ADC and DAC driver" 8 - depends on GENERIC_GPIO 8 + depends on GPIOLIB 9 9 help 10 10 Say yes here to build support for Analog Devices ADT7316, ADT7317, ADT7318 11 11 and ADT7516, ADT7517, ADT7519 temperature sensors, ADC and DAC.
+2 -2
drivers/staging/iio/resolver/Kconfig
··· 13 13 config AD2S1200 14 14 tristate "Analog Devices ad2s1200/ad2s1205 driver" 15 15 depends on SPI 16 - depends on GENERIC_GPIO 16 + depends on GPIOLIB 17 17 help 18 18 Say yes here to build support for Analog Devices spi resolver 19 19 to digital converters, ad2s1200 and ad2s1205, provides direct access ··· 22 22 config AD2S1210 23 23 tristate "Analog Devices ad2s1210 driver" 24 24 depends on SPI 25 - depends on GENERIC_GPIO 25 + depends on GPIOLIB 26 26 help 27 27 Say yes here to build support for Analog Devices spi resolver 28 28 to digital converters, ad2s1210, provides direct access via sysfs.
+1 -1
drivers/staging/iio/trigger/Kconfig
··· 14 14 15 15 config IIO_GPIO_TRIGGER 16 16 tristate "GPIO trigger" 17 - depends on GENERIC_GPIO 17 + depends on GPIOLIB 18 18 help 19 19 Provides support for using GPIO pins as IIO triggers. 20 20
+1 -1
drivers/usb/phy/Kconfig
··· 128 128 129 129 config USB_GPIO_VBUS 130 130 tristate "GPIO based peripheral-only VBUS sensing 'transceiver'" 131 - depends on GENERIC_GPIO 131 + depends on GPIOLIB 132 132 help 133 133 Provides simple GPIO VBUS sensing for controllers with an 134 134 internal transceiver via the usb_phy interface, and
+1 -1
drivers/video/Kconfig
··· 2483 2483 tristate "Solomon SSD1307 framebuffer support" 2484 2484 depends on FB && I2C 2485 2485 depends on OF 2486 - depends on GENERIC_GPIO 2486 + depends on GPIOLIB 2487 2487 select FB_SYS_FOPS 2488 2488 select FB_SYS_FILLRECT 2489 2489 select FB_SYS_COPYAREA
+2 -2
drivers/video/backlight/Kconfig
··· 36 36 37 37 config LCD_L4F00242T03 38 38 tristate "Epson L4F00242T03 LCD" 39 - depends on SPI_MASTER && GENERIC_GPIO 39 + depends on SPI_MASTER && GPIOLIB 40 40 help 41 41 SPI driver for Epson L4F00242T03. This provides basic support 42 42 for init and powering the LCD up/down through a sysfs interface. 43 43 44 44 config LCD_LMS283GF05 45 45 tristate "Samsung LMS283GF05 LCD" 46 - depends on SPI_MASTER && GENERIC_GPIO 46 + depends on SPI_MASTER && GPIOLIB 47 47 help 48 48 SPI driver for Samsung LMS283GF05. This provides basic support 49 49 for powering the LCD up/down through a sysfs interface.
+1 -1
drivers/w1/masters/Kconfig
··· 50 50 51 51 config W1_MASTER_GPIO 52 52 tristate "GPIO 1-wire busmaster" 53 - depends on GENERIC_GPIO 53 + depends on GPIOLIB 54 54 help 55 55 Say Y here if you want to communicate with your 1-wire devices using 56 56 GPIO pins. This driver uses the GPIO API to control the wire.
+3 -3
include/linux/gpio.h
··· 39 39 const char *label; 40 40 }; 41 41 42 - #ifdef CONFIG_GENERIC_GPIO 42 + #ifdef CONFIG_GPIOLIB 43 43 44 44 #ifdef CONFIG_ARCH_HAVE_CUSTOM_GPIO_H 45 45 #include <asm/gpio.h> ··· 74 74 75 75 #endif /* ! CONFIG_ARCH_HAVE_CUSTOM_GPIO_H */ 76 76 77 - #else /* ! CONFIG_GENERIC_GPIO */ 77 + #else /* ! CONFIG_GPIOLIB */ 78 78 79 79 #include <linux/kernel.h> 80 80 #include <linux/types.h> ··· 226 226 WARN_ON(1); 227 227 } 228 228 229 - #endif /* ! CONFIG_GENERIC_GPIO */ 229 + #endif /* ! CONFIG_GPIOLIB */ 230 230 231 231 struct device; 232 232