WSL2-Linux-Kernel/drivers/gpio
Shawn Guo 7e6086d9e5 gpio/mxc: specify gpio base for device tree probe
Currently, unlike the non-DT probe where the gpio base is specified
with pdev->id, the DT probe uses the base dynamically allocated by
gpio core, which uses a completely different numbering scheme.  This
causes two issues to user space applications which access sysfs entry
/sys/class/gpio/gpioN.

* It breaks the compatibility with user space applications between
  non-DT and DT kernels.

* It's not intuitive and sometimes hard for users to map the Linux
  gpio number to the actual hardware pin.

Use alias to identify the gpio port/bank, and then the gpio base
can be specified with port id to solve above issues.  If alias is not
defined in device tree, the base number dynamically allocated by gpio
core will be used.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Tested-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2012-08-07 08:55:22 +02:00
..
Kconfig MFD bits for the 3.6 merge window. 2012-07-30 12:41:17 -07:00
Makefile MFD bits for the 3.6 merge window. 2012-07-30 12:41:17 -07:00
devres.c gpio: export devm_gpio_request_one 2012-07-05 14:49:13 +02:00
gpio-74x164.c drivers/gpio: Fix drivers who are implicit users of module.h 2011-10-31 19:31:47 -04:00
gpio-ab8500.c gpio: ab8500: fix MODULE_ALIAS for ab8500 2011-07-28 16:19:23 -06:00
gpio-adp5520.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-adp5588.c gpio: Fix uninitialized variable bit in adp5588_irq_handler 2012-04-10 14:20:55 -06:00
gpio-amd8111.c gpio: add a driver for GPIO pins found on AMD-8111 south bridge chips 2012-07-12 13:40:13 +02:00
gpio-arizona.c gpiolib: Add support for Wolfson Microelectronics Arizona class devices 2012-07-17 20:59:53 +02:00
gpio-bt8xx.c gpio: Convert drivers to use module_pci_driver() 2012-04-07 14:30:35 -06:00
gpio-cs5535.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-da9052.c Changes queued in gpio/next for the start of the 3.3 merge window 2012-01-07 12:15:36 -08:00
gpio-davinci.c gpio/davinci: fix enabling unbanked GPIO IRQs 2012-03-12 11:53:33 -06:00
gpio-em.c gpio: Emma Mobile GPIO driver V2 2012-05-18 00:00:45 +02:00
gpio-ep93xx.c gpio/generic: initialize basic_mmio_gpio shadow variables properly 2012-05-19 12:17:35 -06:00
gpio-ge.c powerpc/85xx: Board support for GE IMP3A 2012-03-16 11:15:48 -05:00
gpio-generic.c gpio/generic: initialize basic_mmio_gpio shadow variables properly 2012-05-19 12:17:35 -06:00
gpio-ich.c gpio: Add support for Intel ICHx/3100/Series[56] GPIO 2012-05-01 12:00:21 +02:00
gpio-it8761e.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-janz-ttl.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-ks8695.c ARM: 7036/1: mach-ks8695: break out GPIO driver specifics 2011-08-22 09:12:54 +01:00
gpio-langwell.c gpio/langwell: re-read the IRQ status register after each iteration 2012-05-10 16:35:28 -06:00
gpio-lpc32xx.c gpio: gpio-lpc32xx: Add gpio_to_irq mapping 2012-07-12 13:40:17 +02:00
gpio-max730x.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-max732x.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-max7300.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-max7301.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-mc9s08dz60.c ARM/mx35/3ds: gpio: add mc9s08dz60 gpio function 2012-01-30 07:49:08 -07:00
gpio-mc33880.c drivers/gpio: Fix drivers who are implicit users of module.h 2011-10-31 19:31:47 -04:00
gpio-mcp23s08.c gpio-mcp23s08: dbg_show: fix pullup configuration display 2012-05-18 16:48:35 -06:00
gpio-ml-ioh.c gpio: Convert drivers to use module_pci_driver() 2012-04-07 14:30:35 -06:00
gpio-mm-lantiq.c GPIO: MIPS: lantiq: convert gpio-mm-lantiq to OF and of_mm_gpio 2012-05-21 14:31:53 +01:00
gpio-mpc8xxx.c gpio: mpc8xxx: Prevent NULL pointer deref in demux handler 2012-05-18 16:48:36 -06:00
gpio-mpc5200.c drivers/gpio: Fix drivers who are implicit users of module.h 2011-10-31 19:31:47 -04:00
gpio-msic.c gpio: msic: Fix calculating register address in msic_gpio_to_oreg() 2012-08-05 01:09:50 +02:00
gpio-msm-v1.c gpio_msm: Move Qualcomm v6 MSM driver into drivers 2011-08-01 04:58:00 -07:00
gpio-msm-v2.c gpio_msm: Move Qualcomm MSM v2 gpio driver into drivers 2011-08-01 04:58:00 -07:00
gpio-mxc.c gpio/mxc: specify gpio base for device tree probe 2012-08-07 08:55:22 +02:00
gpio-mxs.c arm-soc: device tree conversions, part 2 2012-05-26 12:57:47 -07:00
gpio-omap.c GPIO changes for v3.6: 2012-07-26 13:56:38 -07:00
gpio-pca953x.c gpio/pca953x: increase variables size to support 24 bit of data 2012-07-17 21:00:18 +02:00
gpio-pcf857x.c gpio: pcf857x: share 8/16 bit access functions 2012-07-12 13:40:17 +02:00
gpio-pch.c GPIO driver changes for v3.5 merge window 2012-05-24 14:01:46 -07:00
gpio-pl061.c gpio/gpio-pl061: No need of thaw and poweroff routines for hibernate 2012-02-16 06:37:51 -07:00
gpio-pxa.c GPIO: gpio-pxa: fix devicetree functions 2012-08-05 11:39:41 +02:00
gpio-rc5t583.c gpio/rc5t583: add gpio driver for RICOH PMIC RC5T583 2012-05-18 22:59:28 -06:00
gpio-rdc321x.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-sa1100.c ARM: 7342/2: sa1100: prepare for sparse irq conversion 2012-03-25 23:57:20 +01:00
gpio-samsung.c gpio: samsung: add flags specifier to device-tree binding 2012-07-17 21:00:15 +02:00
gpio-sch.c gpio-sch: Fix leak of resource 2012-08-05 00:33:48 +02:00
gpio-sodaville.c gpio/generic: initialize basic_mmio_gpio shadow variables properly 2012-05-19 12:17:35 -06:00
gpio-sta2x11.c gpio-sta2x11: don't use pdata if null 2012-07-05 14:48:49 +02:00
gpio-stmpe.c GPIO changes for v3.4 2012-03-28 14:08:46 -07:00
gpio-stp-xway.c GPIO: MIPS: lantiq: convert gpio-stp-xway to OF 2012-05-21 14:31:53 +01:00
gpio-sx150x.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-tc3589x.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-tegra.c gpio: tegra: Hide tegra_gpio_enable/disable() 2012-04-18 10:26:38 -06:00
gpio-timberdale.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-tnetv107x.c ARM: 7039/1: mach-davinci: move DaVinci TNET GPIO driver to GPIO subsystem 2011-08-22 09:12:55 +01:00
gpio-tps6586x.c gpio: tps6586x: Add gpio support through platform driver 2012-07-25 00:36:54 +02:00
gpio-tps65910.c gpio/gpio-tps65910: gpio_chip.of_node referenced without CONFIG_OF_GPIO defined 2012-07-10 22:53:31 +02:00
gpio-tps65912.c tps65912: gpio: add gpio driver 2011-07-31 23:28:22 +02:00
gpio-twl4030.c gpio/twl: Add DT support to gpio-twl4030 driver 2012-03-22 13:05:55 +01:00
gpio-ucb1400.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-vr41xx.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-vx855.c gpio: Convert GPIO drivers to module_platform_driver 2012-01-02 00:26:06 -07:00
gpio-wm831x.c mfd: Convert wm831x to irq_domain 2012-05-20 17:27:07 +02:00
gpio-wm8350.c gpio: reorganize drivers 2011-06-06 10:10:11 -06:00
gpio-wm8994.c GPIO changes for v3.6: 2012-07-26 13:56:38 -07:00
gpio-xilinx.c gpiolib: output basic details and consolidate gpio device drivers 2011-12-12 13:40:16 -07:00
gpiolib-of.c gpio: of_get_named_gpio_flags() return -EPROBE_DEFER if GPIO not yet available 2012-07-17 21:00:21 +02:00
gpiolib.c gpiolib: Defer failed gpio requests by default 2012-07-17 21:00:20 +02:00