diff options
| -rw-r--r-- | drivers/leds/leds-cobalt-raq.c | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/drivers/leds/leds-cobalt-raq.c b/drivers/leds/leds-cobalt-raq.c index ff0e8c3fbf9b..4a231e8d3151 100644 --- a/drivers/leds/leds-cobalt-raq.c +++ b/drivers/leds/leds-cobalt-raq.c @@ -48,11 +48,6 @@ static void raq_web_led_set(struct led_classdev *led_cdev, spin_unlock_irqrestore(&led_value_lock, flags); } -static struct led_classdev raq_web_led = { - .name = "raq-web", - .brightness_set = raq_web_led_set, -}; - static void raq_power_off_led_set(struct led_classdev *led_cdev, enum led_brightness brightness) { @@ -69,10 +64,16 @@ static void raq_power_off_led_set(struct led_classdev *led_cdev, spin_unlock_irqrestore(&led_value_lock, flags); } -static struct led_classdev raq_power_off_led = { - .name = "raq-power-off", - .brightness_set = raq_power_off_led_set, - .default_trigger = "power-off", +static struct led_classdev raq_leds[] = { + { + .name = "raq-web", + .brightness_set = raq_web_led_set, + }, + { + .name = "raq-power-off", + .brightness_set = raq_power_off_led_set, + .default_trigger = "power-off", + }, }; static int __devinit cobalt_raq_led_probe(struct platform_device *pdev) @@ -88,19 +89,12 @@ static int __devinit cobalt_raq_led_probe(struct platform_device *pdev) if (!led_port) return -ENOMEM; - retval = led_classdev_register(&pdev->dev, &raq_power_off_led); + retval = led_classdevs_register(&pdev->dev, raq_leds, ARRAY_SIZE(raq_leds)); if (retval) goto err_iounmap; - retval = led_classdev_register(&pdev->dev, &raq_web_led); - if (retval) - goto err_unregister; - return 0; -err_unregister: - led_classdev_unregister(&raq_power_off_led); - err_iounmap: iounmap(led_port); led_port = NULL; @@ -110,8 +104,7 @@ err_iounmap: static int __devexit cobalt_raq_led_remove(struct platform_device *pdev) { - led_classdev_unregister(&raq_power_off_led); - led_classdev_unregister(&raq_web_led); + led_classdevs_unregister(raq_leds, ARRAY_SIZE(raq_leds)); if (led_port) { iounmap(led_port); |
