summary refs log tree commit diff
path: root/drivers/leds
diff options
context:
space:
mode:
authorVasily Khoruzhick <anarsoul@gmail.com>2011-01-07 16:28:16 +0000
committerAnton Vorontsov <cbouatmailru@gmail.com>2011-01-31 16:30:24 +0300
commit0b9536c957095eb1497828aa51b34ac695f67eae (patch)
tree2620b5af70a2d8f13edefd62d1337bc9f071b6f9 /drivers/leds
parent51d07566045787b99219d809639c8724506fc78a (diff)
downloadlinux-0b9536c957095eb1497828aa51b34ac695f67eae.tar.gz
leds: Add ability to blink via simple trigger
As blink API is now available, it's possible to add ability to blink via
simple trigger.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
Diffstat (limited to 'drivers/leds')
-rw-r--r--drivers/leds/led-triggers.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/leds/led-triggers.c b/drivers/leds/led-triggers.c
index c41eb6180c9c..4bebae733349 100644
--- a/drivers/leds/led-triggers.c
+++ b/drivers/leds/led-triggers.c
@@ -231,6 +231,26 @@ void led_trigger_event(struct led_trigger *trigger,
 }
 EXPORT_SYMBOL_GPL(led_trigger_event);
 
+void led_trigger_blink(struct led_trigger *trigger,
+		       unsigned long *delay_on,
+		       unsigned long *delay_off)
+{
+	struct list_head *entry;
+
+	if (!trigger)
+		return;
+
+	read_lock(&trigger->leddev_list_lock);
+	list_for_each(entry, &trigger->led_cdevs) {
+		struct led_classdev *led_cdev;
+
+		led_cdev = list_entry(entry, struct led_classdev, trig_list);
+		led_blink_set(led_cdev, delay_on, delay_off);
+	}
+	read_unlock(&trigger->leddev_list_lock);
+}
+EXPORT_SYMBOL_GPL(led_trigger_blink);
+
 void led_trigger_register_simple(const char *name, struct led_trigger **tp)
 {
 	struct led_trigger *trigger;