diff options
author | Peter Boonstoppel <pboonstoppel@nvidia.com> | 2011-08-16 12:01:29 -0700 |
---|---|---|
committer | Varun Colbert <vcolbert@nvidia.com> | 2011-08-19 15:24:21 -0700 |
commit | 5199a8871c7921d5276f175579ebdea440adf1df (patch) | |
tree | c796ce22665edd98e0c0bdda2837346bd93b9a65 /arch | |
parent | 713b0fe85ab640016918062fed8b62486f88f92e (diff) |
ARM: tegra: power: Don't clip EDP limits to cpufreq tables
Always use maximum possible frequency when applying EDP
capping. Toggled through CONFIG_TEGRA_EDP_EXACT_FREQ.
Bug 863761
Change-Id: I327440546991ad4f3abc78100a3a18017f3464b6
Reviewed-on: http://git-master/r/47169
Reviewed-by: Varun Colbert <vcolbert@nvidia.com>
Tested-by: Varun Colbert <vcolbert@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-tegra/cpu-tegra.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/cpu-tegra.c b/arch/arm/mach-tegra/cpu-tegra.c index 043d17ec6c11..6eb676db4ebd 100644 --- a/arch/arm/mach-tegra/cpu-tegra.c +++ b/arch/arm/mach-tegra/cpu-tegra.c @@ -107,15 +107,18 @@ static unsigned int edp_limit; static void edp_update_limit(void) { - int i; unsigned int limit = cpumask_weight(&edp_cpumask); if (!cpu_edp_limits) return; BUG_ON((edp_thermal_index >= cpu_edp_limits_size) || (limit == 0)); +#ifdef CONFIG_TEGRA_EDP_EXACT_FREQ + edp_limit = cpu_edp_limits[edp_thermal_index].freq_limits[limit - 1]; +#else limit = cpu_edp_limits[edp_thermal_index].freq_limits[limit - 1]; + int i; for (i = 0; freq_table[i].frequency != CPUFREQ_TABLE_END; i++) { if (freq_table[i].frequency > limit) { break; @@ -123,6 +126,7 @@ static void edp_update_limit(void) } BUG_ON(i == 0); /* min freq above the limit or table empty */ edp_limit = freq_table[i-1].frequency; +#endif } static unsigned int edp_governor_speed(unsigned int requested_speed) |