Commit f214be50 authored by Zhiwu Song's avatar Zhiwu Song Committed by Daniel Lezcano

clocksource: marco: Fix the affinity set for local timer of CPU1

irqchip will reject the affinity set to CPUs which is not online
yet. but in the CPU1 wakeup stage, OS only sets CPU1 to be online
after local timer is set, so that causes the irq_set_affinity not
work. this patch moves to irq_force_affinity() for the low level
boot stage.
Signed-off-by: default avatarZhiwu Song <Zhiwu.Song@csr.com>
Signed-off-by: default avatarBarry Song <Baohua.Song@csr.com>
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
parent 84ea7fe3
...@@ -199,7 +199,7 @@ static int sirfsoc_local_timer_setup(struct clock_event_device *ce) ...@@ -199,7 +199,7 @@ static int sirfsoc_local_timer_setup(struct clock_event_device *ce)
action->dev_id = ce; action->dev_id = ce;
BUG_ON(setup_irq(ce->irq, action)); BUG_ON(setup_irq(ce->irq, action));
irq_set_affinity(action->irq, cpumask_of(cpu)); irq_force_affinity(action->irq, cpumask_of(cpu));
clockevents_register_device(ce); clockevents_register_device(ce);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment