summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNaga Radhesh <naga.radheshy@stericsson.com>2012-02-27 12:41:16 +0530
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:01:39 +0200
commit713724046af865d0650e430f2101693fd5947969 (patch)
tree2198e58521ba38d9473c3114256db89bb99a4cb8
parent2ab2bbebe4ad7f2e6edef2f4fb11d275ec9b0737 (diff)
ab8500-pwm: check for valid platform data pointer
Before accessing platform data, check whether platform pointer is valid or not. ST-Ericsson ID: 366316 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Signed-off-by: Naga Radhesh <naga.radheshy@stericsson.com> Change-Id: I176dd81743d1c063f6814c35992cc8813ac57055 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50530 Reviewed-by: QATOOLS Reviewed-by: QABUILD Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com>
-rw-r--r--drivers/misc/ab8500-pwm.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/misc/ab8500-pwm.c b/drivers/misc/ab8500-pwm.c
index d7a62767a58..01d329ba76c 100644
--- a/drivers/misc/ab8500-pwm.c
+++ b/drivers/misc/ab8500-pwm.c
@@ -206,10 +206,16 @@ static int __devinit ab8500_pwm_probe(struct platform_device *pdev)
{
struct ab8500 *parent = dev_get_drvdata(pdev->dev.parent);
struct ab8500_platform_data *plat = dev_get_platdata(parent->dev);
- struct ab8500_pwmled_platform_data *pdata = plat->pwmled;
+ struct ab8500_pwmled_platform_data *pdata;
struct pwm_device *pwm;
int ret = 0 , i;
+ /* get pwmled specific platform data */
+ if (!plat->pwmled) {
+ dev_err(&pdev->dev, "no pwm platform data supplied\n");
+ return -EINVAL;
+ }
+ pdata = plat->pwmled;
/*
* Nothing to be done in probe, this is required to get the
* device which is required for ab8500 read and write