diff options
Diffstat (limited to 'arch/sparc/kernel/time_32.c')
| -rw-r--r-- | arch/sparc/kernel/time_32.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/sparc/kernel/time_32.c b/arch/sparc/kernel/time_32.c index c4c27b0f906..5923d1e4e7c 100644 --- a/arch/sparc/kernel/time_32.c +++ b/arch/sparc/kernel/time_32.c @@ -36,6 +36,7 @@  #include <linux/of_device.h>  #include <linux/platform_device.h> +#include <asm/mc146818rtc.h>  #include <asm/oplib.h>  #include <asm/timex.h>  #include <asm/timer.h> @@ -47,6 +48,7 @@  #include <asm/irq_regs.h>  #include <asm/setup.h> +#include "kernel.h"  #include "irq.h"  static __cacheline_aligned_in_smp DEFINE_SEQLOCK(timer_cs_lock); @@ -83,7 +85,7 @@ unsigned long profile_pc(struct pt_regs *regs)  EXPORT_SYMBOL(profile_pc); -__volatile__ unsigned int *master_l10_counter; +volatile u32 __iomem *master_l10_counter;  int update_persistent_clock(struct timespec now)  { @@ -143,9 +145,9 @@ static __init void setup_timer_ce(void)  static unsigned int sbus_cycles_offset(void)  { -	unsigned int val, offset; +	u32 val, offset; -	val = *master_l10_counter; +	val = sbus_readl(master_l10_counter);  	offset = (val >> TIMER_VALUE_SHIFT) & TIMER_VALUE_MASK;  	/* Limit hit? */  | 
