sparc32, leon: Remove separate "ticker" timer for SMP
This reduces the need from two timers to one timer. Moreover, without this patch, when the "ticker" timer triggers timer_cs_read via tick_periodic it reads the value of the usual timer it can get an wrapped timer value without timer_cs_internal_counter having been updated leading to the clock going backwards. This effectively hangs one cpu that gets stuck in update_wall_time with an offset slightly smaller than 0xffffffffffffffff. Signed-off-by: Andreas Larsson <andreas@gaisler.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
117a0c5fc9
commit
1ffbc51a0d
@@ -47,6 +47,7 @@ struct amba_prom_registers {
|
||||
#define LEON3_GPTIMER_LD 4
|
||||
#define LEON3_GPTIMER_IRQEN 8
|
||||
#define LEON3_GPTIMER_SEPIRQ 8
|
||||
#define LEON3_GPTIMER_TIMERS 0x7
|
||||
|
||||
#define LEON23_REG_TIMER_CONTROL_EN 0x00000001 /* 1 = enable counting */
|
||||
/* 0 = hold scalar and counter */
|
||||
|
Reference in New Issue
Block a user