summaryrefslogtreecommitdiff
path: root/arch/sh/lib
diff options
context:
space:
mode:
Diffstat (limited to 'arch/sh/lib')
-rw-r--r--arch/sh/lib/time.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/sh/lib/time.c b/arch/sh/lib/time.c
index 1fe537e..8f83d46 100644
--- a/arch/sh/lib/time.c
+++ b/arch/sh/lib/time.c
@@ -17,6 +17,8 @@
#include <asm/io.h>
#include <sh_tmu.h>
+#define TCR_TPSC 0x07
+
static struct tmu_regs *tmu = (struct tmu_regs *)TMU_BASE;
static u16 bit;
@@ -61,7 +63,7 @@ static void tmu_timer_stop(unsigned int timer)
int timer_init(void)
{
bit = (ffs(CONFIG_SYS_TMU_CLK_DIV) >> 1) - 1;
- writew(readw(&tmu->tcr0) | bit, &tmu->tcr0);
+ writew((readw(&tmu->tcr0) & ~TCR_TPSC) | bit, &tmu->tcr0);
tmu_timer_stop(0);
tmu_timer_start(0);