diff --git a/target/linux/generic-2.6/config-2.6.23 b/target/linux/generic-2.6/config-2.6.23 index e92c8b3f1..734842144 100644 --- a/target/linux/generic-2.6/config-2.6.23 +++ b/target/linux/generic-2.6/config-2.6.23 @@ -677,6 +677,7 @@ CONFIG_LEDS_TRIGGER_HEARTBEAT=y # CONFIG_LEDS_TRIGGER_IDE_DISK is not set # CONFIG_LEDS_TRIGGER_MORSE is not set CONFIG_LEDS_TRIGGER_TIMER=y +# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set # CONFIG_LEGACY_PTYS is not set CONFIG_LIBCRC32C=m # CONFIG_LIBERTAS is not set diff --git a/target/linux/generic-2.6/files/drivers/leds/ledtrig-default-on.c b/target/linux/generic-2.6/files/drivers/leds/ledtrig-default-on.c new file mode 100644 index 000000000..92995e40c --- /dev/null +++ b/target/linux/generic-2.6/files/drivers/leds/ledtrig-default-on.c @@ -0,0 +1,45 @@ +/* + * LED Kernel Default ON Trigger + * + * Copyright 2008 Nick Forbes + * + * Based on Richard Purdie's ledtrig-timer.c. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + */ + +#include +#include +#include +#include +#include "leds.h" + +static void defon_trig_activate(struct led_classdev *led_cdev) +{ + led_set_brightness(led_cdev, LED_FULL); +} + +static struct led_trigger defon_led_trigger = { + .name = "default-on", + .activate = defon_trig_activate, +}; + +static int __init defon_trig_init(void) +{ + return led_trigger_register(&defon_led_trigger); +} + +static void __exit defon_trig_exit(void) +{ + led_trigger_unregister(&defon_led_trigger); +} + +module_init(defon_trig_init); +module_exit(defon_trig_exit); + +MODULE_AUTHOR("Nick Forbes "); +MODULE_DESCRIPTION("Default-ON LED trigger"); +MODULE_LICENSE("GPL"); diff --git a/target/linux/generic-2.6/patches-2.6.23/402-ledtrig_default_on.patch b/target/linux/generic-2.6/patches-2.6.23/402-ledtrig_default_on.patch new file mode 100644 index 000000000..a59915c3e --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.23/402-ledtrig_default_on.patch @@ -0,0 +1,23 @@ +diff -ur linux-2.6.23.1.orig/drivers/leds/Kconfig linux-2.6.23.1/drivers/leds/Kconfig +--- linux-2.6.23.1.orig/drivers/leds/Kconfig 2007-12-01 00:41:03.000000000 +1300 ++++ linux-2.6.23.1/drivers/leds/Kconfig 2007-12-01 01:26:43.000000000 +1300 +@@ -137,4 +137,11 @@ + tristate "LED Morse Trigger" + depends on LEDS_TRIGGERS + ++config LEDS_TRIGGER_DEFAULT_ON ++ tristate "LED Default ON Trigger" ++ depends on LEDS_TRIGGERS ++ help ++ This allows LEDs to be initialised in the ON state. ++ If unsure, say Y. ++ + endif # NEW_LEDS +diff -ur linux-2.6.23.1.orig/drivers/leds/Makefile linux-2.6.23.1/drivers/leds/Makefile +--- linux-2.6.23.1.orig/drivers/leds/Makefile 2007-12-01 00:41:03.000000000 +1300 ++++ linux-2.6.23.1/drivers/leds/Makefile 2007-12-01 01:27:12.000000000 +1300 +@@ -23,3 +23,4 @@ + obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK) += ledtrig-ide-disk.o + obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT) += ledtrig-heartbeat.o + obj-$(CONFIG_LEDS_TRIGGER_MORSE) += ledtrig-morse.o ++obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON) += ledtrig-default-on.o