diff options
author | Leon Woestenberg <leon.woestenberg@gmail.com> | 2007-12-07 16:38:03 +0000 |
---|---|---|
committer | Leon Woestenberg <leon.woestenberg@gmail.com> | 2007-12-07 16:38:03 +0000 |
commit | 46c78def93e1fc4adcc4af96aaeda288f8be4d55 (patch) | |
tree | 0063b54b42930e3db9b44e314596629fcf1a228d /packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch | |
parent | 16263835f024bde8c8fd7a69f1ac49b3506c8e39 (diff) |
linux-2.6.23: Add LED trigger for CPU activity. Added powerpc hook. Build module for MPC8313E-RDB machine.
Diffstat (limited to 'packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch')
-rw-r--r-- | packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch b/packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch new file mode 100644 index 0000000000..b377355815 --- /dev/null +++ b/packages/linux/linux-2.6.23/leds-cpu-activity-powerpc.patch @@ -0,0 +1,46 @@ +Index: linux-2.6.23/arch/powerpc/kernel/idle.c +=================================================================== +--- linux-2.6.23.orig/arch/powerpc/kernel/idle.c 2007-10-09 22:31:38.000000000 +0200 ++++ linux-2.6.23/arch/powerpc/kernel/idle.c 2007-12-05 11:34:39.000000000 +0100 +@@ -19,6 +19,7 @@ + * 2 of the License, or (at your option) any later version. + */ + ++#include <linux/leds.h> + #include <linux/sched.h> + #include <linux/kernel.h> + #include <linux/smp.h> +@@ -50,6 +51,12 @@ + __setup("powersave=off", powersave_off); + + /* ++ * CPU activity indicator. ++ */ ++void (*leds_idle)(int is_idle); ++EXPORT_SYMBOL(leds_idle); ++ ++/* + * The body of the idle task. + */ + void cpu_idle(void) +@@ -59,6 +66,8 @@ + + set_thread_flag(TIF_POLLING_NRFLAG); + while (1) { ++ if (leds_idle) ++ leds_idle(1); + while (!need_resched() && !cpu_should_die()) { + ppc64_runlatch_off(); + +@@ -92,8 +101,11 @@ + ppc64_runlatch_on(); + if (cpu_should_die()) + cpu_die(); ++ if (leds_idle) ++ leds_idle(0); + preempt_enable_no_resched(); + schedule(); ++ + preempt_disable(); + } + } |