[ARM SMP] Add missing SMP timer handling for realview
Until we have local timer support, we need to broadcast the timer interrupt to the other CPUs. Also, add the missing smp_send_timer() prototype to asm/smp.h Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
committed by
Russell King
parent
f093182d31
commit
dbebb4cbe0
@@ -550,6 +550,11 @@ static irqreturn_t realview_timer_interrupt(int irq, void *dev_id, struct pt_reg
|
|||||||
|
|
||||||
timer_tick(regs);
|
timer_tick(regs);
|
||||||
|
|
||||||
|
#ifdef CONFIG_SMP
|
||||||
|
smp_send_timer();
|
||||||
|
update_process_times(user_mode(regs));
|
||||||
|
#endif
|
||||||
|
|
||||||
write_sequnlock(&xtime_lock);
|
write_sequnlock(&xtime_lock);
|
||||||
|
|
||||||
return IRQ_HANDLED;
|
return IRQ_HANDLED;
|
||||||
|
@@ -46,6 +46,11 @@ extern void smp_store_cpu_info(unsigned int cpuid);
|
|||||||
*/
|
*/
|
||||||
extern void smp_cross_call(cpumask_t callmap);
|
extern void smp_cross_call(cpumask_t callmap);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Broadcast a timer interrupt to the other CPUs.
|
||||||
|
*/
|
||||||
|
extern void smp_send_timer(void);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Boot a secondary CPU, and assign it the specified idle task.
|
* Boot a secondary CPU, and assign it the specified idle task.
|
||||||
* This also gives us the initial stack to use for this CPU.
|
* This also gives us the initial stack to use for this CPU.
|
||||||
|
Reference in New Issue
Block a user