aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/leds/led-triggers.c
diff options
context:
space:
mode:
authorPaul Collins <paul@briny.ondioline.org>2006-10-01 02:27:41 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-10-01 03:39:21 -0400
commite3e5fc91d9828a9b94a3992de47d47d2d2e34ec6 (patch)
treead4af3aeb264438772e85e9c901b15459ade0cbb /drivers/leds/led-triggers.c
parentfd7bcea35e7efb108c34ee2b3840942a3749cadb (diff)
[PATCH] leds: turn LED off when changing triggers
I was playing with LED triggers when I noticed that changing from heartbeat (or ide-disk) to "none" at the right moment would leave the LED stuck on. This is easy to reproduce by doing "find / >/dev/null" with the ide-disk trigger enabled and then switching to "none". Here is a patch that fixes the problem by explicitly turning the LED off after removing the existing trigger. Signed-off-by: Paul Collins <paul@ondioline.org> Acked-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/leds/led-triggers.c')
-rw-r--r--drivers/leds/led-triggers.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c
index 47f0ff196328..454fb0901f82 100644
--- a/drivers/leds/led-triggers.c
+++ b/drivers/leds/led-triggers.c
@@ -125,6 +125,7 @@ void led_trigger_set(struct led_classdev *led_cdev, struct led_trigger *trigger)
125 write_unlock_irqrestore(&led_cdev->trigger->leddev_list_lock, flags); 125 write_unlock_irqrestore(&led_cdev->trigger->leddev_list_lock, flags);
126 if (led_cdev->trigger->deactivate) 126 if (led_cdev->trigger->deactivate)
127 led_cdev->trigger->deactivate(led_cdev); 127 led_cdev->trigger->deactivate(led_cdev);
128 led_set_brightness(led_cdev, LED_OFF);
128 } 129 }
129 if (trigger) { 130 if (trigger) {
130 write_lock_irqsave(&trigger->leddev_list_lock, flags); 131 write_lock_irqsave(&trigger->leddev_list_lock, flags);