Source
244
244
}
245
245
/* Add to the list of led triggers */
246
246
list_add_tail(&trig->next_trig, &trigger_list);
247
247
up_write(&triggers_list_lock);
248
248
249
249
/* Register with any LEDs that have this as a default trigger */
250
250
down_read(&leds_list_lock);
251
251
list_for_each_entry(led_cdev, &leds_list, node) {
252
252
down_write(&led_cdev->trigger_lock);
253
253
if (!led_cdev->trigger && led_cdev->default_trigger &&
254
-
!strcmp(led_cdev->default_trigger, trig->name))
254
+
!strcmp(led_cdev->default_trigger, trig->name)) {
255
+
led_cdev->flags |= LED_INIT_DEFAULT_TRIGGER;
255
256
led_trigger_set(led_cdev, trig);
257
+
}
256
258
up_write(&led_cdev->trigger_lock);
257
259
}
258
260
up_read(&leds_list_lock);
259
261
260
262
return 0;
261
263
}
262
264
EXPORT_SYMBOL_GPL(led_trigger_register);
263
265
264
266
void led_trigger_unregister(struct led_trigger *trig)
265
267
{