Message ID | 87y6wsh100.fsf@deeprootsystems.com (mailing list archive) |
---|---|
State | Not Applicable |
Delegated to: | Kevin Hilman |
Headers | show |
>In fact, you wouldn't even need a custom governor. > To avoid governor picking overdrive OPP: > > # echo 550000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq > > To allow overdrive: > > # echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq Sure. Now is someone going to fix up every root file system which users have around. It would be better to init the limit in the driver for this version of OMAP. Even if you do that someone still needs to turn on and off the limit dynamically or create a custom governor. Until that kind of smart control is pervasive it is safer to just put the interface a layer down for expert use. But like I was saying, people are free to set the clock to what ever they want. On a properly characterized part it might even be safe for many years. A 3440 will sit well above 600MHz in nominal. Regards, Richard W. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
"Woodruff, Richard" <r-woodruff2@ti.com> writes: >>In fact, you wouldn't even need a custom governor. >> To avoid governor picking overdrive OPP: >> >> # echo 550000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq >> >> To allow overdrive: >> >> # echo 600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq > > Sure. Now is someone going to fix up every root file system which users have around. I'm not suggesting this as the standard way. The point was to say that a custom governor is not the only way. > It would be better to init the limit in the driver for this version of OMAP. Agreed. CPUfreq policy is just as easily set in the kernel at init time. Then the default would be set right, and the rootfs would be left to change it if desired. Kevin > Even if you do that someone still needs to turn on and off the limit > dynamically or create a custom governor. > > Until that kind of smart control is pervasive it is safer to just put the interface a layer down for expert use. > > But like I was saying, people are free to set the clock to what ever they want. On a properly characterized part it might even be safe for many years. A 3440 will sit well above 600MHz in nominal. > > Regards, > Richard W. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Sat, 2009-01-31 at 00:21 +0100, ext Kevin Hilman wrote: > CPUfreq policy is just as easily set in the kernel at init time. Then > the default would be set right, and the rootfs would be left to change > it if desired. But in general the situation is more complex and knowledge about the packaging and its thermal model is needed. Note that with packaging i refer to both the omap package (does it use stacked memory or not, is it a memory combo, etc) and the _device_ package. Not getting errors is not a good indication that the system is really operating in a safe mode; the device might be stable all the time but its life be more than halved.
diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c index 2389eb6..e9a75a3 100644 --- a/arch/arm/mach-omap2/clock34xx.c +++ b/arch/arm/mach-omap2/clock34xx.c @@ -698,8 +698,7 @@ void omap2_clk_init_cpufreq_table(struct cpufreq_frequency_table **table) if (!mpu_opps) return; - /* Avoid registering the 120% Overdrive with CPUFreq */ - prcm = mpu_opps + MAX_VDD1_OPP - 1; + prcm = mpu_opps + MAX_VDD1_OPP; for (; prcm->rate; prcm--) { freq_table[i].index = i; freq_table[i].frequency = prcm->rate / 1000;