diff options
author | Inha Song <ideal.song@samsung.com> | 2015-08-07 10:35:59 +0900 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2015-08-11 15:09:13 +0100 |
commit | dd30acc889f586cecdea0d7f401f3dc80752b41e (patch) | |
tree | 75844c7603469a7ed1a14190789d4eda6b1deacd /drivers/mfd/wm8994-irq.c | |
parent | ff066f731a71409a3c29d8bd1d702867167c6994 (diff) | |
download | talos-obmc-linux-dd30acc889f586cecdea0d7f401f3dc80752b41e.tar.gz talos-obmc-linux-dd30acc889f586cecdea0d7f401f3dc80752b41e.zip |
mfd: wm8994: Fix NULL pointer exception on missing pdata
If we use the dev_get_platdata, pdata can be NULL in DT environments.
Actually, NULL pointer exception is occurs with error messages like this:
[ 1.226583] Unable to handle kernel NULL pointer dereference at virtual address 00000044
[ 1.467910] [<c02f1e38>] (wm8994_irq_init) from [<c02f1bd4>] (wm8994_i2c_probe+0x684/0x858)
[ 1.476241] [<c02f1bd4>] (wm8994_i2c_probe) from [<c0371c78>] (i2c_device_probe+0x11c/0x17c)
In wm8994-core, we already checked whether platform data is NULL and set the
wm8994->pdata to platform data if platform data is not NULL.
So, we can use wm8994->pdata instead of platform data.
Signed-off-by: Inha Song <ideal.song@samsung.com>
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd/wm8994-irq.c')
-rw-r--r-- | drivers/mfd/wm8994-irq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mfd/wm8994-irq.c b/drivers/mfd/wm8994-irq.c index 6f1427d32a93..18710f3b5c53 100644 --- a/drivers/mfd/wm8994-irq.c +++ b/drivers/mfd/wm8994-irq.c @@ -186,7 +186,7 @@ int wm8994_irq_init(struct wm8994 *wm8994) { int ret; unsigned long irqflags; - struct wm8994_pdata *pdata = dev_get_platdata(wm8994->dev); + struct wm8994_pdata *pdata = &wm8994->pdata; if (!wm8994->irq) { dev_warn(wm8994->dev, |