Messages in this thread Patch in this message | | | From | Florian Fainelli <> | Date | Fri, 26 Nov 2010 10:39:54 +0100 | Subject | [PATCH 1/2] rdc321x-gpio: fix null pointer dereference while accessing platform_data |
| |
rdc321x-gpio currently fetches its driver specific data by using the platform_ device->platform_data pointer, this is wrong because the mfd device which registers our platform_device has been added using mfd_add_device() which sets the platform_device->driver_data pointer instead.
Signed-off-by: Florian Fainelli <florian@openwrt.org> CC: stable@kernel.org --- This patch should be applied for the next 2.6.36 stable release.
diff --git a/drivers/gpio/rdc321x-gpio.c b/drivers/gpio/rdc321x-gpio.c index 2762698..897e057 100644 --- a/drivers/gpio/rdc321x-gpio.c +++ b/drivers/gpio/rdc321x-gpio.c @@ -135,7 +135,7 @@ static int __devinit rdc321x_gpio_probe(struct platform_device *pdev) struct rdc321x_gpio *rdc321x_gpio_dev; struct rdc321x_gpio_pdata *pdata; - pdata = pdev->dev.platform_data; + pdata = platform_get_drvdata(pdev); if (!pdata) { dev_err(&pdev->dev, "no platform data supplied\n"); return -ENODEV;
| |