led: triggers: Initialize LED_INIT_DEFAULT_TRIGGER if trigger is brought after class
Trigger driver can be initialized after the LED class device driver. In such case led_trigger_set_default() won't be called and flag LED_INIT_DEFAULT_TRIGGER should be set from led_trigger_register(). Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
This commit is contained in:
parent
02d31765bb
commit
8146aace60
|
@ -251,8 +251,10 @@ int led_trigger_register(struct led_trigger *trig)
|
|||
list_for_each_entry(led_cdev, &leds_list, node) {
|
||||
down_write(&led_cdev->trigger_lock);
|
||||
if (!led_cdev->trigger && led_cdev->default_trigger &&
|
||||
!strcmp(led_cdev->default_trigger, trig->name))
|
||||
!strcmp(led_cdev->default_trigger, trig->name)) {
|
||||
led_cdev->flags |= LED_INIT_DEFAULT_TRIGGER;
|
||||
led_trigger_set(led_cdev, trig);
|
||||
}
|
||||
up_write(&led_cdev->trigger_lock);
|
||||
}
|
||||
up_read(&leds_list_lock);
|
||||
|
|
Loading…
Reference in a new issue