mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-04 17:44:14 +08:00
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>
This commit is contained in:
parent
e334492632
commit
5204e4787b
@ -86,7 +86,6 @@ void native_machine_restart(char *cmd)
|
|||||||
void machine_restart(char *cmd)
|
void machine_restart(char *cmd)
|
||||||
{
|
{
|
||||||
native_machine_restart(cmd);
|
native_machine_restart(cmd);
|
||||||
local_irq_disable();
|
|
||||||
if (smp_processor_id())
|
if (smp_processor_id())
|
||||||
smp_call_function((void *)bfin_reset, 0, 1);
|
smp_call_function((void *)bfin_reset, 0, 1);
|
||||||
else
|
else
|
||||||
|
@ -134,7 +134,7 @@ static int bfin_target(struct cpufreq_policy *poli,
|
|||||||
unsigned int plldiv;
|
unsigned int plldiv;
|
||||||
#endif
|
#endif
|
||||||
unsigned int index, cpu;
|
unsigned int index, cpu;
|
||||||
unsigned long flags, cclk_hz;
|
unsigned long cclk_hz;
|
||||||
struct cpufreq_freqs freqs;
|
struct cpufreq_freqs freqs;
|
||||||
static unsigned long lpj_ref;
|
static unsigned long lpj_ref;
|
||||||
static unsigned int lpj_ref_freq;
|
static unsigned int lpj_ref_freq;
|
||||||
@ -165,7 +165,6 @@ static int bfin_target(struct cpufreq_policy *poli,
|
|||||||
|
|
||||||
cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE);
|
cpufreq_notify_transition(&freqs, CPUFREQ_PRECHANGE);
|
||||||
if (cpu == CPUFREQ_CPU) {
|
if (cpu == CPUFREQ_CPU) {
|
||||||
flags = hard_local_irq_save();
|
|
||||||
#ifndef CONFIG_BF60x
|
#ifndef CONFIG_BF60x
|
||||||
plldiv = (bfin_read_PLL_DIV() & SSEL) |
|
plldiv = (bfin_read_PLL_DIV() & SSEL) |
|
||||||
dpm_state_table[index].csel;
|
dpm_state_table[index].csel;
|
||||||
@ -194,7 +193,6 @@ static int bfin_target(struct cpufreq_policy *poli,
|
|||||||
loops_per_jiffy = cpufreq_scale(lpj_ref,
|
loops_per_jiffy = cpufreq_scale(lpj_ref,
|
||||||
lpj_ref_freq, freqs.new);
|
lpj_ref_freq, freqs.new);
|
||||||
}
|
}
|
||||||
hard_local_irq_restore(flags);
|
|
||||||
}
|
}
|
||||||
/* TODO: just test case for cycles clock source, remove later */
|
/* TODO: just test case for cycles clock source, remove later */
|
||||||
cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);
|
cpufreq_notify_transition(&freqs, CPUFREQ_POSTCHANGE);
|
||||||
|
Loading…
Reference in New Issue
Block a user