xref: /openbmc/linux/drivers/leds/trigger/ledtrig-mtd.c (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
1d2912cb1SThomas Gleixner // SPDX-License-Identifier: GPL-2.0-only
24b721174SEzequiel Garcia /*
34b721174SEzequiel Garcia  * LED MTD trigger
44b721174SEzequiel Garcia  *
54b721174SEzequiel Garcia  * Copyright 2016 Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
64b721174SEzequiel Garcia  *
74b721174SEzequiel Garcia  * Based on LED IDE-Disk Activity Trigger
84b721174SEzequiel Garcia  *
94b721174SEzequiel Garcia  * Copyright 2006 Openedhand Ltd.
104b721174SEzequiel Garcia  *
114b721174SEzequiel Garcia  * Author: Richard Purdie <rpurdie@openedhand.com>
124b721174SEzequiel Garcia  */
134b721174SEzequiel Garcia 
144b721174SEzequiel Garcia #include <linux/kernel.h>
154b721174SEzequiel Garcia #include <linux/init.h>
164b721174SEzequiel Garcia #include <linux/leds.h>
174b721174SEzequiel Garcia 
184b721174SEzequiel Garcia #define BLINK_DELAY 30
194b721174SEzequiel Garcia 
204b721174SEzequiel Garcia DEFINE_LED_TRIGGER(ledtrig_mtd);
214b721174SEzequiel Garcia DEFINE_LED_TRIGGER(ledtrig_nand);
224b721174SEzequiel Garcia 
ledtrig_mtd_activity(void)234b721174SEzequiel Garcia void ledtrig_mtd_activity(void)
244b721174SEzequiel Garcia {
25*e298d8a3SHans de Goede 	led_trigger_blink_oneshot(ledtrig_mtd, BLINK_DELAY, BLINK_DELAY, 0);
26*e298d8a3SHans de Goede 	led_trigger_blink_oneshot(ledtrig_nand, BLINK_DELAY, BLINK_DELAY, 0);
274b721174SEzequiel Garcia }
284b721174SEzequiel Garcia EXPORT_SYMBOL(ledtrig_mtd_activity);
294b721174SEzequiel Garcia 
ledtrig_mtd_init(void)304b721174SEzequiel Garcia static int __init ledtrig_mtd_init(void)
314b721174SEzequiel Garcia {
324b721174SEzequiel Garcia 	led_trigger_register_simple("mtd", &ledtrig_mtd);
334b721174SEzequiel Garcia 	led_trigger_register_simple("nand-disk", &ledtrig_nand);
344b721174SEzequiel Garcia 
354b721174SEzequiel Garcia 	return 0;
364b721174SEzequiel Garcia }
374b721174SEzequiel Garcia device_initcall(ledtrig_mtd_init);
38