diff options
Diffstat (limited to 'drivers/leds/led-class.c')
-rw-r--r-- | drivers/leds/led-class.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/leds/led-class.c b/drivers/leds/led-class.c index ee74ee7b2acc..6c4a326176d7 100644 --- a/drivers/leds/led-class.c +++ b/drivers/leds/led-class.c | |||
@@ -34,14 +34,11 @@ static ssize_t led_brightness_show(struct device *dev, | |||
34 | struct device_attribute *attr, char *buf) | 34 | struct device_attribute *attr, char *buf) |
35 | { | 35 | { |
36 | struct led_classdev *led_cdev = dev_get_drvdata(dev); | 36 | struct led_classdev *led_cdev = dev_get_drvdata(dev); |
37 | ssize_t ret = 0; | ||
38 | 37 | ||
39 | /* no lock needed for this */ | 38 | /* no lock needed for this */ |
40 | led_update_brightness(led_cdev); | 39 | led_update_brightness(led_cdev); |
41 | sprintf(buf, "%u\n", led_cdev->brightness); | ||
42 | ret = strlen(buf) + 1; | ||
43 | 40 | ||
44 | return ret; | 41 | return sprintf(buf, "%u\n", led_cdev->brightness); |
45 | } | 42 | } |
46 | 43 | ||
47 | static ssize_t led_brightness_store(struct device *dev, | 44 | static ssize_t led_brightness_store(struct device *dev, |
@@ -113,6 +110,9 @@ int led_classdev_register(struct device *parent, struct led_classdev *led_cdev) | |||
113 | if (rc) | 110 | if (rc) |
114 | goto err_out; | 111 | goto err_out; |
115 | 112 | ||
113 | #ifdef CONFIG_LEDS_TRIGGERS | ||
114 | init_rwsem(&led_cdev->trigger_lock); | ||
115 | #endif | ||
116 | /* add to the list of leds */ | 116 | /* add to the list of leds */ |
117 | down_write(&leds_list_lock); | 117 | down_write(&leds_list_lock); |
118 | list_add_tail(&led_cdev->node, &leds_list); | 118 | list_add_tail(&led_cdev->node, &leds_list); |
@@ -121,8 +121,6 @@ int led_classdev_register(struct device *parent, struct led_classdev *led_cdev) | |||
121 | led_update_brightness(led_cdev); | 121 | led_update_brightness(led_cdev); |
122 | 122 | ||
123 | #ifdef CONFIG_LEDS_TRIGGERS | 123 | #ifdef CONFIG_LEDS_TRIGGERS |
124 | init_rwsem(&led_cdev->trigger_lock); | ||
125 | |||
126 | rc = device_create_file(led_cdev->dev, &dev_attr_trigger); | 124 | rc = device_create_file(led_cdev->dev, &dev_attr_trigger); |
127 | if (rc) | 125 | if (rc) |
128 | goto err_out_led_list; | 126 | goto err_out_led_list; |
@@ -147,7 +145,7 @@ err_out: | |||
147 | EXPORT_SYMBOL_GPL(led_classdev_register); | 145 | EXPORT_SYMBOL_GPL(led_classdev_register); |
148 | 146 | ||
149 | /** | 147 | /** |
150 | * __led_classdev_unregister - unregisters a object of led_properties class. | 148 | * led_classdev_unregister - unregisters a object of led_properties class. |
151 | * @led_cdev: the led device to unregister | 149 | * @led_cdev: the led device to unregister |
152 | * | 150 | * |
153 | * Unregisters a previously registered via led_classdev_register object. | 151 | * Unregisters a previously registered via led_classdev_register object. |