summaryrefslogtreecommitdiff
path: root/arch/arm/plat-spear
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-03-15 15:50:27 +0000
committerArnd Bergmann <arnd@arndb.de>2012-03-15 15:51:06 +0000
commitf82989bde1cfa5e2b4614d8e4896d795dae418d9 (patch)
tree970cd7c833fad85acbf00be335b0ae8c4991b375 /arch/arm/plat-spear
parent695d82fae9160406acb9de204c471248abcc2a9f (diff)
parent30c766bdeccf945615097ca185326c1d7199f023 (diff)
Merge branch 'fixes' of git://gitorious.org/linux-davinci/linux-davinci into next/fixes-non-critical
* 'fixes' of git://gitorious.org/linux-davinci/linux-davinci: (2 commits) ARM: davinci: DA850: move da850_register_pm to .init.text ARM: davinci: cpufreq: fix compiler warning (update to v3.3-rc7) Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/arm/plat-spear')
-rw-r--r--arch/arm/plat-spear/time.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm/plat-spear/time.c b/arch/arm/plat-spear/time.c
index 0c77e4298675..abb5bdecd509 100644
--- a/arch/arm/plat-spear/time.c
+++ b/arch/arm/plat-spear/time.c
@@ -145,11 +145,13 @@ static void clockevent_set_mode(enum clock_event_mode mode,
static int clockevent_next_event(unsigned long cycles,
struct clock_event_device *clk_event_dev)
{
- u16 val;
+ u16 val = readw(gpt_base + CR(CLKEVT));
+
+ if (val & CTRL_ENABLE)
+ writew(val & ~CTRL_ENABLE, gpt_base + CR(CLKEVT));
writew(cycles, gpt_base + LOAD(CLKEVT));
- val = readw(gpt_base + CR(CLKEVT));
val |= CTRL_ENABLE | CTRL_INT_ENABLE;
writew(val, gpt_base + CR(CLKEVT));