GNU Linux-libre 4.19.286-gnu1
[releases.git] / drivers / leds / trigger / ledtrig-mtd.c
1 /*
2  * LED MTD trigger
3  *
4  * Copyright 2016 Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
5  *
6  * Based on LED IDE-Disk Activity Trigger
7  *
8  * Copyright 2006 Openedhand Ltd.
9  *
10  * Author: Richard Purdie <rpurdie@openedhand.com>
11  *
12  * This program is free software; you can redistribute it and/or modify
13  * it under the terms of the GNU General Public License version 2 as
14  * published by the Free Software Foundation.
15  *
16  */
17
18 #include <linux/kernel.h>
19 #include <linux/init.h>
20 #include <linux/leds.h>
21
22 #define BLINK_DELAY 30
23
24 DEFINE_LED_TRIGGER(ledtrig_mtd);
25 DEFINE_LED_TRIGGER(ledtrig_nand);
26
27 void ledtrig_mtd_activity(void)
28 {
29         unsigned long blink_delay = BLINK_DELAY;
30
31         led_trigger_blink_oneshot(ledtrig_mtd,
32                                   &blink_delay, &blink_delay, 0);
33         led_trigger_blink_oneshot(ledtrig_nand,
34                                   &blink_delay, &blink_delay, 0);
35 }
36 EXPORT_SYMBOL(ledtrig_mtd_activity);
37
38 static int __init ledtrig_mtd_init(void)
39 {
40         led_trigger_register_simple("mtd", &ledtrig_mtd);
41         led_trigger_register_simple("nand-disk", &ledtrig_nand);
42
43         return 0;
44 }
45 device_initcall(ledtrig_mtd_init);