提交 a0193cbe 编写于 作者: F Fabio Baltieri 提交者: Bryan Wu

leds: use led_set_brightness in led_trigger_event

Fix led_trigger_event() to use led_set_brightness() instead of
__led_set_brightness(), so that any pending blink timer is stopped before
setting the new brightness value.  Without this fix LED status may be
overridden by a pending timer.

This allows a trigger to use a mix of led_trigger_event(),
led_trigger_blink() and led_trigger_blink_oneshot() without races.

(applied over: leds: Rename led_brightness_set() to led_set_brightness())
Signed-off-by: NFabio Baltieri <fabio.baltieri@gmail.com>
Cc: Shuah Khan <shuahkhan@gmail.com>
Signed-off-by: NBryan Wu <bryan.wu@canonical.com>
上级 19cd67e2
......@@ -224,7 +224,7 @@ void led_trigger_event(struct led_trigger *trig,
struct led_classdev *led_cdev;
led_cdev = list_entry(entry, struct led_classdev, trig_list);
__led_set_brightness(led_cdev, brightness);
led_set_brightness(led_cdev, brightness);
}
read_unlock(&trig->leddev_list_lock);
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册