From a150ef02d5d538f17fef6b0731344b156f03e3bb Mon Sep 17 00:00:00 2001 From: Dave Jones Date: Fri, 7 May 2004 17:41:58 +0100 Subject: [PATCH] [CPUFREQ] sa11x0 ->get sa11x0_getspeed can be used by both cpu-sa1100.c and cpu-sa1110.c as ->get() function. Update calling conventions, and un-export it as we fixed the handling of cpufreq_get in the cpufreq core. Also, remove special call to userspace-governor init as it isn't needed any longer. --- arch/arm/mach-sa1100/cpu-sa1100.c | 8 +++++--- arch/arm/mach-sa1100/cpu-sa1110.c | 9 +++++---- arch/arm/mach-sa1100/generic.c | 6 ++++-- arch/arm/mach-sa1100/generic.h | 2 +- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/arch/arm/mach-sa1100/cpu-sa1100.c b/arch/arm/mach-sa1100/cpu-sa1100.c index 3014d3d661380..6648d462e5cd2 100644 --- a/arch/arm/mach-sa1100/cpu-sa1100.c +++ b/arch/arm/mach-sa1100/cpu-sa1100.c @@ -180,7 +180,7 @@ static int sa1100_target(struct cpufreq_policy *policy, unsigned int target_freq, unsigned int relation) { - unsigned int cur = sa11x0_getspeed(); + unsigned int cur = sa11x0_getspeed(0); unsigned int new_ppcr; struct cpufreq_freqs freqs; @@ -221,7 +221,7 @@ static int __init sa1100_cpu_init(struct cpufreq_policy *policy) { if (policy->cpu != 0) return -EINVAL; - policy->cur = policy->min = policy->max = sa11x0_getspeed(); + policy->cur = policy->min = policy->max = sa11x0_getspeed(0); policy->governor = CPUFREQ_DEFAULT_GOVERNOR; policy->cpuinfo.min_freq = 59000; policy->cpuinfo.max_freq = 287000; @@ -230,15 +230,17 @@ static int __init sa1100_cpu_init(struct cpufreq_policy *policy) } static struct cpufreq_driver sa1100_driver = { + .flags = (CPUFREQ_PANIC_OUTOFSYNC | + CPUFREQ_PANIC_RESUME_OUTOFSYNC), .verify = sa11x0_verify_speed, .target = sa1100_target, + .get = sa11x0_getspeed, .init = sa1100_cpu_init, .name = "sa1100", }; static int __init sa1100_dram_init(void) { - cpufreq_gov_userspace_init(); if ((processor_id & CPU_SA1100_MASK) == CPU_SA1100_ID) return cpufreq_register_driver(&sa1100_driver); else diff --git a/arch/arm/mach-sa1100/cpu-sa1110.c b/arch/arm/mach-sa1100/cpu-sa1110.c index 8643bb5b0aa3e..b17ca12a9b9d7 100644 --- a/arch/arm/mach-sa1100/cpu-sa1110.c +++ b/arch/arm/mach-sa1100/cpu-sa1110.c @@ -238,7 +238,7 @@ static int sa1110_target(struct cpufreq_policy *policy, return -EINVAL; } - freqs.old = sa11x0_getspeed(); + freqs.old = sa11x0_getspeed(0); freqs.new = sa11x0_ppcr_to_freq(ppcr); freqs.cpu = 0; @@ -320,7 +320,7 @@ static int __init sa1110_cpu_init(struct cpufreq_policy *policy) { if (policy->cpu != 0) return -EINVAL; - policy->cur = policy->min = policy->max = sa11x0_getspeed(); + policy->cur = policy->min = policy->max = sa11x0_getspeed(0); policy->governor = CPUFREQ_DEFAULT_GOVERNOR; policy->cpuinfo.min_freq = 59000; policy->cpuinfo.max_freq = 287000; @@ -329,8 +329,11 @@ static int __init sa1110_cpu_init(struct cpufreq_policy *policy) } static struct cpufreq_driver sa1110_driver = { + .flags = (CPUFREQ_PANIC_OUTOFSYNC | + CPUFREQ_PANIC_RESUME_OUTOFSYNC), .verify = sa11x0_verify_speed, .target = sa1110_target, + .get = sa11x0_getspeed, .init = sa1110_cpu_init, .name = "sa1110", }; @@ -354,8 +357,6 @@ static int __init sa1110_clk_init(void) sdram->tck, sdram->trcd, sdram->trp, sdram->twr, sdram->refresh, sdram->cas_latency); - cpufreq_gov_userspace_init(); - memcpy(&sdram_params, sdram, sizeof(sdram_params)); return cpufreq_register_driver(&sa1110_driver); diff --git a/arch/arm/mach-sa1100/generic.c b/arch/arm/mach-sa1100/generic.c index bc14c39bb796d..4fe5a5a4a8c83 100644 --- a/arch/arm/mach-sa1100/generic.c +++ b/arch/arm/mach-sa1100/generic.c @@ -96,11 +96,13 @@ int sa11x0_verify_speed(struct cpufreq_policy *policy) return 0; } -unsigned int sa11x0_getspeed(void) +unsigned int sa11x0_getspeed(unsigned int cpu) { + if (cpu) + return 0; return cclk_frequency_100khz[PPCR & 0xf] * 100; } -EXPORT_SYMBOL(sa11x0_getspeed); + #else /* * We still need to provide this so building without cpufreq works. diff --git a/arch/arm/mach-sa1100/generic.h b/arch/arm/mach-sa1100/generic.h index 956ede770ab46..4649fc5c5c4ea 100644 --- a/arch/arm/mach-sa1100/generic.h +++ b/arch/arm/mach-sa1100/generic.h @@ -22,5 +22,5 @@ struct cpufreq_policy; extern unsigned int sa11x0_freq_to_ppcr(unsigned int khz); extern int sa11x0_verify_speed(struct cpufreq_policy *policy); -extern unsigned int sa11x0_getspeed(void); +extern unsigned int sa11x0_getspeed(unsigned int cpu); extern unsigned int sa11x0_ppcr_to_freq(unsigned int idx); -- 2.53.0