[ARM] S3C: Add TICK_MAX for timer code
Add TICK_MAX definition for the timer code
as the S3C64XX series have 32bit capable
PWM timers.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
diff --git a/arch/arm/mach-s3c6400/include/mach/tick.h b/arch/arm/mach-s3c6400/include/mach/tick.h
index 95e5ec9..d9c0dc7 100644
--- a/arch/arm/mach-s3c6400/include/mach/tick.h
+++ b/arch/arm/mach-s3c6400/include/mach/tick.h
@@ -24,4 +24,6 @@
return pend & 1 << (IRQ_TIMER4_VIC - S3C64XX_IRQ_VIC0(0));
}
+#define TICK_MAX (0xffffffff)
+
#endif /* __ASM_ARCH_6400_TICK_H */
diff --git a/arch/arm/plat-s3c/time.c b/arch/arm/plat-s3c/time.c
index d35e149..a581ff7 100644
--- a/arch/arm/plat-s3c/time.c
+++ b/arch/arm/plat-s3c/time.c
@@ -44,6 +44,10 @@
static unsigned long timer_startval;
static unsigned long timer_usec_ticks;
+#ifndef TICK_MAX
+#define TICK_MAX (0xffff)
+#endif
+
#define TIMER_USEC_SHIFT 16
/* we use the shifted arithmetic to work out the ratio of timer ticks
@@ -156,7 +160,7 @@
unsigned long tcfg1;
unsigned long tcfg0;
- tcnt = 0xffff; /* default value for tcnt */
+ tcnt = TICK_MAX; /* default value for tcnt */
/* read the current timer configuration bits */
@@ -217,7 +221,7 @@
tcon, tcnt, tcfg0, tcfg1, timer_usec_ticks);
/* check to see if timer is within 16bit range... */
- if (tcnt > 0xffff) {
+ if (tcnt > TICK_MAX) {
panic("setup_timer: HZ is too small, cannot configure timer!");
return;
}