aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
authorSteven Miao <realmz6@gmail.com>2012-10-08 02:18:34 -0400
committerBob Liu <lliubbo@gmail.com>2012-10-08 02:36:30 -0400
commit5204e4787b89a281be88a2eb57407165da2757ad (patch)
tree9f005fe4320ec3e543ea11858f3367d4efbde6e1 /arch/blackfin
parente334492632babe99db5ac6811fec15312eedb2ca (diff)
Blackfin: fix wrong place disabled irq
Shouldn't disable irq before send ipi. Signed-off-by: Steven Miao <realmz6@gmail.com> Signed-off-by: Bob Liu <lliubbo@gmail.com>
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/kernel/reboot.c1
-rw-r--r--arch/blackfin/mach-common/cpufreq.c4
2 files changed, 1 insertions, 4 deletions
diff --git a/arch/blackfin/kernel/reboot.c b/arch/blackfin/kernel/reboot.c
index 5272e6eefd92..c4f50a328501 100644
--- a/arch/blackfin/kernel/reboot.c
+++ b/arch/blackfin/kernel/reboot.c
@@ -86,7 +86,6 @@ void native_machine_restart(char *cmd)
86void machine_restart(char *cmd) 86void machine_restart(char *cmd)
87{ 87{
88 native_machine_restart(cmd); 88 native_machine_restart(cmd);
89 local_irq_disable();
90 if (smp_processor_id()) 89 if (smp_processor_id())
91 smp_call_function((void *)bfin_reset, 0, 1); 90 smp_call_function((void *)bfin_reset, 0, 1);
92 else 91 else
diff --git a/arch/blackfin/mach-common/cpufreq.c b/arch/blackfin/mach-common/cpufreq.c
index 65a4511e1d1f..d88bd31319e6 100644
--- a/arch/blackfin/mach-common/cpufreq.c
+++ b/arch/blackfin/mach-common/cpufreq.c
@@ -134,7 +134,7 @@ static int bfin_target(struct cpufreq_policy *poli,
134 unsigned int plldiv; 134 unsigned int plldiv;
135#endif 135#endif
136 unsigned int index, cpu; 136 unsigned int index, cpu;
137 unsigned long flags, cclk_hz; 137 unsigned long cclk_hz;
138 struct cpufreq_freqs freqs; 138 struct cpufreq_freqs freqs;
139 static unsigned long lpj_ref; 139 static unsigned long lpj_ref;
140 static unsigned int lpj_ref_freq; 140 static unsigned int lpj_ref_freq;
@@ -165,7 +165,6 @@ static int bfin_target(struct cpufreq_policy *poli,
165 165
166 cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE); 166 cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE);
167 if (cpu == CPUFREQ_CPU) { 167 if (cpu == CPUFREQ_CPU) {
168 flags = hard_local_irq_save();
169#ifndef CONFIG_BF60x 168#ifndef CONFIG_BF60x
170 plldiv = (bfin_read_PLL_DIV() & SSEL) | 169 plldiv = (bfin_read_PLL_DIV() & SSEL) |
171 dpm_state_table[index].csel; 170 dpm_state_table[index].csel;
@@ -194,7 +193,6 @@ static int bfin_target(struct cpufreq_policy *poli,
194 loops_per_jiffy = cpufreq_scale(lpj_ref, 193 loops_per_jiffy = cpufreq_scale(lpj_ref,
195 lpj_ref_freq, freqs.new); 194 lpj_ref_freq, freqs.new);
196 } 195 }
197 hard_local_irq_restore(flags);
198 } 196 }
199 /* TODO: just test case for cycles clock source, remove later */ 197 /* TODO: just test case for cycles clock source, remove later */
200 cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE); 198 cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);