Skip to content

Commit

Permalink
leds: Use devm_kzalloc in leds-max8997.c file
Browse files Browse the repository at this point in the history
devm_kzalloc() makes code cleanup simpler.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Bryan Wu <bryan.wu@canonical.com>
  • Loading branch information
Sachin Kamat authored and Bryan Wu committed Jul 23, 2012
1 parent d415896 commit 7f13bbf
Showing 1 changed file with 6 additions and 15 deletions.
21 changes: 6 additions & 15 deletions drivers/leds/leds-max8997.c
Original file line number Diff line number Diff line change
Expand Up @@ -276,11 +276,9 @@ static int __devinit max8997_led_probe(struct platform_device *pdev)
return -ENODEV;
}

led = kzalloc(sizeof(*led), GFP_KERNEL);
if (led == NULL) {
ret = -ENOMEM;
goto err_mem;
}
led = devm_kzalloc(&pdev->dev, sizeof(*led), GFP_KERNEL);
if (led == NULL)
return -ENOMEM;

led->id = pdev->id;
snprintf(name, sizeof(name), "max8997-led%d", pdev->id);
Expand Down Expand Up @@ -315,23 +313,17 @@ static int __devinit max8997_led_probe(struct platform_device *pdev)

ret = led_classdev_register(&pdev->dev, &led->cdev);
if (ret < 0)
goto err_led;
return ret;

ret = device_create_file(led->cdev.dev, &dev_attr_mode);
if (ret != 0) {
dev_err(&pdev->dev,
"failed to create file: %d\n", ret);
goto err_file;
led_classdev_unregister(&led->cdev);
return ret;
}

return 0;

err_file:
led_classdev_unregister(&led->cdev);
err_led:
kfree(led);
err_mem:
return ret;
}

static int __devexit max8997_led_remove(struct platform_device *pdev)
Expand All @@ -340,7 +332,6 @@ static int __devexit max8997_led_remove(struct platform_device *pdev)

device_remove_file(led->cdev.dev, &dev_attr_mode);
led_classdev_unregister(&led->cdev);
kfree(led);

return 0;
}
Expand Down

0 comments on commit 7f13bbf

Please sign in to comment.