Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

leds: leds-cobalt-qube: Use devm_led_classdev_register

Use resource-managed function devm_led_classdev_register instead
of led_classdev_register to make the error-path simpler.

To be compatible with the change, goto is replaced with direct
return, unneeded label err_null is dropped and unnecessary variable
retval is removed. Also, remove redundant cobalt_qube_led_remove.

Signed-off-by: Vaishali Thakkar <vthakkar1994@gmail.com>
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>

authored by

Vaishali Thakkar and committed by
Jacek Anaszewski
aa4e2524 6a13feb9

+1 -22
+1 -22
drivers/leds/leds-cobalt-qube.c
··· 36 36 static int cobalt_qube_led_probe(struct platform_device *pdev) 37 37 { 38 38 struct resource *res; 39 - int retval; 40 39 41 40 res = platform_get_resource(pdev, IORESOURCE_MEM, 0); 42 41 if (!res) ··· 48 49 led_value = LED_FRONT_LEFT | LED_FRONT_RIGHT; 49 50 writeb(led_value, led_port); 50 51 51 - retval = led_classdev_register(&pdev->dev, &qube_front_led); 52 - if (retval) 53 - goto err_null; 54 - 55 - return 0; 56 - 57 - err_null: 58 - led_port = NULL; 59 - 60 - return retval; 61 - } 62 - 63 - static int cobalt_qube_led_remove(struct platform_device *pdev) 64 - { 65 - led_classdev_unregister(&qube_front_led); 66 - 67 - if (led_port) 68 - led_port = NULL; 69 - 70 - return 0; 52 + return devm_led_classdev_register(&pdev->dev, &qube_front_led); 71 53 } 72 54 73 55 static struct platform_driver cobalt_qube_led_driver = { 74 56 .probe = cobalt_qube_led_probe, 75 - .remove = cobalt_qube_led_remove, 76 57 .driver = { 77 58 .name = "cobalt-qube-leds", 78 59 },