2004-09-20 03:12:47

by Con Kolivas

[permalink] [raw]
Subject: [PATCH] Add on-demand cpu-freq governor as default option

Index: linux-2.6.9-rc2-mm1/drivers/cpufreq/Kconfig
===================================================================
--- linux-2.6.9-rc2-mm1.orig/drivers/cpufreq/Kconfig 2004-09-19 19:49:57.716825544 +1000
+++ linux-2.6.9-rc2-mm1/drivers/cpufreq/Kconfig 2004-09-19 19:52:36.919623040 +1000
@@ -36,6 +36,17 @@ config CPU_FREQ_DEFAULT_GOV_USERSPACE
program shall be able to set the CPU dynamically without having
to enable the userspace governor manually.

+config CPU_FREQ_DEFAULT_GOV_ONDEMAND
+ bool "ondemand"
+ select CPU_FREQ_GOV_ONDEMAND
+ help
+ Use the CPUFreq governor 'ondemand' as default.
+ This governor does a periodic polling and
+ changes frequency based on the CPU utilization.
+ The support for this governor depends on CPU capability to
+ do fast frequency switching (i.e, very low latency frequency
+ transitions).
+
endchoice

config CPU_FREQ_GOV_PERFORMANCE
Index: linux-2.6.9-rc2-mm1/include/linux/cpufreq.h
===================================================================
--- linux-2.6.9-rc2-mm1.orig/include/linux/cpufreq.h 2004-09-19 19:49:57.765818096 +1000
+++ linux-2.6.9-rc2-mm1/include/linux/cpufreq.h 2004-09-19 19:52:36.919623040 +1000
@@ -323,6 +323,9 @@ extern struct cpufreq_governor cpufreq_g
#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE)
extern struct cpufreq_governor cpufreq_gov_userspace;
#define CPUFREQ_DEFAULT_GOVERNOR &cpufreq_gov_userspace
+#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND)
+extern struct cpufreq_governor cpufreq_gov_dbs;
+#define CPUFREQ_DEFAULT_GOVERNOR &cpufreq_gov_dbs
#endif



Attachments:
(No filename) (160.00 B)
ondemand_governor.diff (1.55 kB)
ondemand_governor_default.diff
Download all attachments

2004-09-20 17:04:17

by Dominik Brodowski

[permalink] [raw]
Subject: Re: [PATCH] Add on-demand cpu-freq governor as default option

I'm sorry, but this can't be done at the moment. The default cpufreq
governor needs to be one which can't fail to start up. And on-demand has
quite strict requirements on when it allows to be started and when it
doesn't.

Dominik