Hello, I have noticed that enabling the MFGPT timer in kernel config results in a lower power consumption on the Yeeloong. It also seems that the CPU temperature is generally a bit lower. My guess is that's due to MFGPT allowing the kernel to utilize the "wait instruction" to put the CPU in a low-power state. I have read that MFGPT causes side effects by making system clock run incorrect, but so far I did not observe any problem with clock.
Linux 3.1.0-libre-lemote-rm1 CONFIG_CS5536_MFGPT n CONFIG_R4K_TIMER_FOR_CPUFREQ y system type : lemote-yeeloong-2f-8.9inches processor : 0 cpu model : ICT Loongson-2 V0.3 FPU V0.1 BogoMIPS : 797.00 wait instruction : no microsecond timers : yes tlb_entries : 64 extra interrupt vector : no hardware watchpoint : yes, count: 0, address/irw mask: [] ASEs implemented : shadow register sets : 1 kscratch registers : 0 core : 0 VCED exceptions : not available VCEI exceptions : not available Linux 3.1.0-libre-lemote-rm2-mfgpt CONFIG_CS5536_MFGPT y CONFIG_R4K_TIMER_FOR_CPUFREQ n + unbreak_CS5536_MFGPT.patch + loongson_cpufreq_include.patch Patches are attached; I'd like to propose these to be included in the loongson-community kernel release to allow people experiment with enabling MFGPT a bit more easily. system type : lemote-yeeloong-2f-8.9inches processor : 0 cpu model : ICT Loongson-2 V0.3 FPU V0.1 BogoMIPS : 528.38 wait instruction : yes microsecond timers : yes tlb_entries : 64 extra interrupt vector : no hardware watchpoint : yes, count: 0, address/irw mask: [] ASEs implemented : shadow register sets : 1 kscratch registers : 0 core : 0 VCED exceptions : not available VCEI exceptions : not available Power consumption at idle (X.org at GDM login screen): Linux 3.1.0-libre-lemote-rm1 12.2 to 12.3 watt Linux 3.1.0-libre-lemote-rm2-mfgpt 11.5 to 11.6 watt (-6%) -- With respect, Roman ~~~~~~~~~~~~~~~~~~~~~~~~~~~ "Stallman had a printer, with code he could not see. So he began to tinker, and set the software free."
--- a/arch/mips/kernel/cpufreq/loongson2_cpufreq.c 2011-03-20 06:05:11.796814431 +0500 +++ b/arch/mips/kernel/cpufreq/loongson2_cpufreq.c 2011-03-20 05:36:21.000000000 +0500 @@ -11,6 +11,7 @@ #include <linux/delay.h> #include <linux/module.h> #include <linux/platform_device.h> +#include <linux/sched.h> #include <loongson.h>
--- orig/arch/mips/loongson/Kconfig 2011-03-20 05:56:40.196878054 +0500 +++ new/arch/mips/loongson/Kconfig 2011-03-20 05:57:06.615428946 +0500 @@ -110,7 +110,6 @@ config CS5536_MFGPT bool "CS5536 MFGPT Timer" - depends on BROKEN depends on CS5536 select MIPS_EXTERNAL_TIMER help
signature.asc
Description: PGP signature
