summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2012-04-13 10:16:06 +0200
committerAnton Vorontsov <anton.vorontsov@linaro.org>2012-05-05 03:59:47 -0700
commitec511672b97383107d87e86921b1f0392bc1d000 (patch)
tree938e81a3e423ed76410d844eac9699bdddda4e04
parentcc28e17100a6b051ef966de81bb2d4a97b2a6645 (diff)
downloadlinux-ec511672b97383107d87e86921b1f0392bc1d000.tar.gz
linux-ec511672b97383107d87e86921b1f0392bc1d000.tar.bz2
linux-ec511672b97383107d87e86921b1f0392bc1d000.zip
ab8500_btemp: Harden platform data check
If no platform data at all is supplied the driver crashes, extend the checks to be more careful so we can compile in the driver and boot also without platform data present. Acked-by: Arun Murthy <arun.murthy@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
-rw-r--r--drivers/power/ab8500_btemp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/power/ab8500_btemp.c b/drivers/power/ab8500_btemp.c
index d8bb99394ac0..e266f038a110 100644
--- a/drivers/power/ab8500_btemp.c
+++ b/drivers/power/ab8500_btemp.c
@@ -978,12 +978,12 @@ static int __devinit ab8500_btemp_probe(struct platform_device *pdev)
/* get btemp specific platform data */
plat_data = pdev->dev.platform_data;
- di->pdata = plat_data->btemp;
- if (!di->pdata) {
+ if (!plat_data || !plat_data->btemp) {
dev_err(di->dev, "no btemp platform data supplied\n");
ret = -EINVAL;
goto free_device_info;
}
+ di->pdata = plat_data->btemp;
/* get battery specific platform data */
di->bat = plat_data->battery;