Skip to content

Commit

Permalink
mfd: 88pm800: Fix potential NULL pdata dereference
Browse files Browse the repository at this point in the history
User pass platform data to device, and platform data may be
NULL. Add the check for pdata.

Signed-off-by: Chao Xie <chao.xie@marvell.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
  • Loading branch information
Chao Xie authored and Samuel Ortiz committed Sep 2, 2013
1 parent f4388ca commit b432fc2
Showing 1 changed file with 6 additions and 4 deletions.
10 changes: 6 additions & 4 deletions drivers/mfd/88pm800.c
Original file line number Diff line number Diff line change
Expand Up @@ -333,9 +333,11 @@ static int device_rtc_init(struct pm80x_chip *chip,
{
int ret;

rtc_devs[0].platform_data = pdata->rtc;
rtc_devs[0].pdata_size =
pdata->rtc ? sizeof(struct pm80x_rtc_pdata) : 0;
if (pdata) {
rtc_devs[0].platform_data = pdata->rtc;
rtc_devs[0].pdata_size =
pdata->rtc ? sizeof(struct pm80x_rtc_pdata) : 0;
}
ret = mfd_add_devices(chip->dev, 0, &rtc_devs[0],
ARRAY_SIZE(rtc_devs), NULL, 0, NULL);
if (ret) {
Expand Down Expand Up @@ -578,7 +580,7 @@ static int pm800_probe(struct i2c_client *client,
goto err_device_init;
}

if (pdata->plat_config)
if (pdata && pdata->plat_config)
pdata->plat_config(chip, pdata);

return 0;
Expand Down

0 comments on commit b432fc2

Please sign in to comment.