|
@@ -124,9 +124,9 @@ static int ot200_led_probe(struct platform_device *pdev)
|
|
|
leds[i].cdev.name = leds[i].name;
|
|
leds[i].cdev.name = leds[i].name;
|
|
|
leds[i].cdev.brightness_set = ot200_led_brightness_set;
|
|
leds[i].cdev.brightness_set = ot200_led_brightness_set;
|
|
|
|
|
|
|
|
- ret = led_classdev_register(&pdev->dev, &leds[i].cdev);
|
|
|
|
|
|
|
+ ret = devm_led_classdev_register(&pdev->dev, &leds[i].cdev);
|
|
|
if (ret < 0)
|
|
if (ret < 0)
|
|
|
- goto err;
|
|
|
|
|
|
|
+ return ret;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
leds_front = 0; /* turn off all front leds */
|
|
leds_front = 0; /* turn off all front leds */
|
|
@@ -135,27 +135,10 @@ static int ot200_led_probe(struct platform_device *pdev)
|
|
|
outb(leds_back, 0x5a);
|
|
outb(leds_back, 0x5a);
|
|
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
|
-
|
|
|
|
|
-err:
|
|
|
|
|
- for (i = i - 1; i >= 0; i--)
|
|
|
|
|
- led_classdev_unregister(&leds[i].cdev);
|
|
|
|
|
-
|
|
|
|
|
- return ret;
|
|
|
|
|
-}
|
|
|
|
|
-
|
|
|
|
|
-static int ot200_led_remove(struct platform_device *pdev)
|
|
|
|
|
-{
|
|
|
|
|
- int i;
|
|
|
|
|
-
|
|
|
|
|
- for (i = 0; i < ARRAY_SIZE(leds); i++)
|
|
|
|
|
- led_classdev_unregister(&leds[i].cdev);
|
|
|
|
|
-
|
|
|
|
|
- return 0;
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
static struct platform_driver ot200_led_driver = {
|
|
static struct platform_driver ot200_led_driver = {
|
|
|
.probe = ot200_led_probe,
|
|
.probe = ot200_led_probe,
|
|
|
- .remove = ot200_led_remove,
|
|
|
|
|
.driver = {
|
|
.driver = {
|
|
|
.name = "leds-ot200",
|
|
.name = "leds-ot200",
|
|
|
},
|
|
},
|