ARM: pxa: reduce the scope of get_clk_frequency_khz()

get_clk_frequency_khz() is used in private cpufreq driver. In order to meet
the change of different pxa silicons, checking cpuid is introduced in
get_clk_frequency_khz(). While more pxa silicons are supported, the workload
of checking cpuid is higher.

So restrict the scope of get_clk_frequency_khz() on pxa2xx. Different pxa
silcions use different private cpufreq driver to avoid too much checking
on cpuid.

Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com>
Cc: Eric Miao <eric.y.miao@gmail.com>
Signed-off-by: Eric Miao <eric.y.miao@gmail.com>
This commit is contained in:
Haojian Zhuang 2010-09-19 20:09:10 -04:00 committed by Eric Miao
parent 759305c62f
commit ecf89b8a91
2 changed files with 4 additions and 4 deletions

View File

@ -159,7 +159,7 @@ static int pxa3xx_cpufreq_verify(struct cpufreq_policy *policy)
static unsigned int pxa3xx_cpufreq_get(unsigned int cpu) static unsigned int pxa3xx_cpufreq_get(unsigned int cpu)
{ {
return get_clk_frequency_khz(0); return pxa3xx_get_clk_frequency_khz(0);
} }
static int pxa3xx_cpufreq_set(struct cpufreq_policy *policy, static int pxa3xx_cpufreq_set(struct cpufreq_policy *policy,
@ -212,7 +212,8 @@ static int pxa3xx_cpufreq_init(struct cpufreq_policy *policy)
policy->cpuinfo.min_freq = 104000; policy->cpuinfo.min_freq = 104000;
policy->cpuinfo.max_freq = (cpu_is_pxa320()) ? 806000 : 624000; policy->cpuinfo.max_freq = (cpu_is_pxa320()) ? 806000 : 624000;
policy->cpuinfo.transition_latency = 1000; /* FIXME: 1 ms, assumed */ policy->cpuinfo.transition_latency = 1000; /* FIXME: 1 ms, assumed */
policy->cur = policy->min = policy->max = get_clk_frequency_khz(0); policy->max = pxa3xx_get_clk_frequency_khz(0);
policy->cur = policy->min = policy->max;
if (cpu_is_pxa300() || cpu_is_pxa310()) if (cpu_is_pxa300() || cpu_is_pxa310())
ret = setup_freqs_table(policy, ARRAY_AND_SIZE(pxa300_freqs)); ret = setup_freqs_table(policy, ARRAY_AND_SIZE(pxa300_freqs));

View File

@ -66,8 +66,7 @@ unsigned int get_clk_frequency_khz(int info)
return pxa25x_get_clk_frequency_khz(info); return pxa25x_get_clk_frequency_khz(info);
else if (cpu_is_pxa27x()) else if (cpu_is_pxa27x())
return pxa27x_get_clk_frequency_khz(info); return pxa27x_get_clk_frequency_khz(info);
else return 0;
return pxa3xx_get_clk_frequency_khz(info);
} }
EXPORT_SYMBOL(get_clk_frequency_khz); EXPORT_SYMBOL(get_clk_frequency_khz);