gpio: Fix null pointer dereference while accessing rdc321x 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 Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
parent
90a8a73c06
commit
fa6469cb5b
@ -135,7 +135,7 @@ static int __devinit rdc321x_gpio_probe(struct platform_device *pdev)
|
|||||||
struct rdc321x_gpio *rdc321x_gpio_dev;
|
struct rdc321x_gpio *rdc321x_gpio_dev;
|
||||||
struct rdc321x_gpio_pdata *pdata;
|
struct rdc321x_gpio_pdata *pdata;
|
||||||
|
|
||||||
pdata = pdev->dev.platform_data;
|
pdata = platform_get_drvdata(pdev);
|
||||||
if (!pdata) {
|
if (!pdata) {
|
||||||
dev_err(&pdev->dev, "no platform data supplied\n");
|
dev_err(&pdev->dev, "no platform data supplied\n");
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user