Commit d4158965 authored by Sachin Kamat's avatar Sachin Kamat Committed by Bryan Wu

leds: Use devm_kzalloc in leds-regulator.c file

devm_kzalloc() makes cleanup simpler.
Signed-off-by: default avatarSachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: default avatarBryan Wu <bryan.wu@canonical.com>
parent 0b7da746
...@@ -158,7 +158,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev) ...@@ -158,7 +158,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev)
return PTR_ERR(vcc); return PTR_ERR(vcc);
} }
led = kzalloc(sizeof(*led), GFP_KERNEL); led = devm_kzalloc(&pdev->dev, sizeof(*led), GFP_KERNEL);
if (led == NULL) { if (led == NULL) {
ret = -ENOMEM; ret = -ENOMEM;
goto err_vcc; goto err_vcc;
...@@ -169,7 +169,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev) ...@@ -169,7 +169,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev)
dev_err(&pdev->dev, "Invalid default brightness %d\n", dev_err(&pdev->dev, "Invalid default brightness %d\n",
pdata->brightness); pdata->brightness);
ret = -EINVAL; ret = -EINVAL;
goto err_led; goto err_vcc;
} }
led->value = pdata->brightness; led->value = pdata->brightness;
...@@ -190,7 +190,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev) ...@@ -190,7 +190,7 @@ static int __devinit regulator_led_probe(struct platform_device *pdev)
ret = led_classdev_register(&pdev->dev, &led->cdev); ret = led_classdev_register(&pdev->dev, &led->cdev);
if (ret < 0) { if (ret < 0) {
cancel_work_sync(&led->work); cancel_work_sync(&led->work);
goto err_led; goto err_vcc;
} }
/* to expose the default value to userspace */ /* to expose the default value to userspace */
...@@ -201,8 +201,6 @@ static int __devinit regulator_led_probe(struct platform_device *pdev) ...@@ -201,8 +201,6 @@ static int __devinit regulator_led_probe(struct platform_device *pdev)
return 0; return 0;
err_led:
kfree(led);
err_vcc: err_vcc:
regulator_put(vcc); regulator_put(vcc);
return ret; return ret;
...@@ -216,7 +214,6 @@ static int __devexit regulator_led_remove(struct platform_device *pdev) ...@@ -216,7 +214,6 @@ static int __devexit regulator_led_remove(struct platform_device *pdev)
cancel_work_sync(&led->work); cancel_work_sync(&led->work);
regulator_led_disable(led); regulator_led_disable(led);
regulator_put(led->vcc); regulator_put(led->vcc);
kfree(led);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment