linux/drivers/gpio
Grant Likely 594fa265e0 of/gpio: stop using device_node data pointer to find gpio_chip
Currently the kernel uses the struct device_node.data pointer to resolve
a struct gpio_chip pointer from a device tree node.  However, the .data
member doesn't provide any type checking and there aren't any rules
enforced on what it should be used for.  There's no guarantee that the
data stored in it actually points to an gpio_chip pointer.

Instead of relying on the .data pointer, this patch modifies the code
to add a lookup function which scans through the registered gpio_chips
and returns the gpio_chip that has a pointer to the specified
device_node.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Anton Vorontsov <avorontsov@ru.mvista.com>
CC: Grant Likely <grant.likely@secretlab.ca>
CC: David Brownell <dbrownell@users.sourceforge.net>
CC: Bill Gatliff <bgat@billgatliff.com>
CC: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
CC: Jean Delvare <khali@linux-fr.org>
CC: linux-kernel@vger.kernel.org
CC: devicetree-discuss@lists.ozlabs.org
2010-07-05 16:14:30 -06:00
..
adp5520-gpio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
adp5588-gpio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
bt8xxgpio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
cs5535-gpio.c gpiolib: make names array and its values const 2010-05-27 09:12:41 -07:00
gpiolib.c of/gpio: stop using device_node data pointer to find gpio_chip 2010-07-05 16:14:30 -06:00
it8761e_gpio.c drivers/gpio/it8761e_gpio: check return value of gpiochip_remove() 2010-05-27 09:12:42 -07:00
janz-ttl.c gpio: Add support for Janz VMOD-TTL Digital IO module 2010-05-28 01:37:33 +02:00
Kconfig gpio: rdc321x needs to select MFD_CORE 2010-05-28 01:37:48 +02:00
langwell_gpio.c gpio: add Penwell gpio support 2010-05-27 09:12:42 -07:00
Makefile gpio: Add TC35892 GPIO driver 2010-05-28 01:37:43 +02:00
max730x.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
max732x.c gpio: max732x: fix input configuration for open-drain pins 2010-05-27 09:12:41 -07:00
max7300.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
max7301.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
mc33880.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
mcp23s08.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pca953x.c gpiolib: make names array and its values const 2010-05-27 09:12:41 -07:00
pcf857x.c Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging 2009-09-23 09:30:48 -07:00
pl061.c pl061: fix offset value range checking 2010-05-27 09:12:41 -07:00
rdc321x-gpio.c gpio: Fix inverted rdc321x gpio data out registers 2010-05-28 01:37:59 +02:00
sch_gpio.c gpio: Fix sch_gpio warning 2010-03-07 22:17:37 +01:00
tc35892-gpio.c gpio: Add TC35892 GPIO driver 2010-05-28 01:37:43 +02:00
timbgpio.c drivers/gpio/timbgpio.c: add missing unlock 2010-04-07 08:38:02 -07:00
twl4030-gpio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ucb1400_gpio.c mfd/gpio: add a GPIO interface to the UCB1400 MFD chip driver via gpiolib 2009-09-23 07:39:48 -07:00
vr41xx_giu.c headers: smp_lock.h redux 2009-07-12 12:22:34 -07:00
wm831x-gpio.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
wm8350-gpiolib.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
wm8994-gpio.c Merge branch 'topic/asoc' into for-linus 2010-05-20 12:00:43 +02:00
xilinx_gpio.c of/gpio: Kill of_gpio_chip and add members directly to gpio_chip 2010-07-05 16:14:30 -06:00