diff options
Diffstat (limited to 'arch/arm/plat-nomadik/timer.c')
| -rw-r--r-- | arch/arm/plat-nomadik/timer.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/arch/arm/plat-nomadik/timer.c b/arch/arm/plat-nomadik/timer.c index 62f18ad43a28..fa7cb3a57cbf 100644 --- a/arch/arm/plat-nomadik/timer.c +++ b/arch/arm/plat-nomadik/timer.c | |||
| @@ -49,24 +49,17 @@ static struct clocksource nmdk_clksrc = { | |||
| 49 | static void nmdk_clkevt_mode(enum clock_event_mode mode, | 49 | static void nmdk_clkevt_mode(enum clock_event_mode mode, |
| 50 | struct clock_event_device *dev) | 50 | struct clock_event_device *dev) |
| 51 | { | 51 | { |
| 52 | unsigned long flags; | ||
| 53 | |||
| 54 | switch (mode) { | 52 | switch (mode) { |
| 55 | case CLOCK_EVT_MODE_PERIODIC: | 53 | case CLOCK_EVT_MODE_PERIODIC: |
| 56 | /* enable interrupts -- and count current value? */ | 54 | /* count current value? */ |
| 57 | raw_local_irq_save(flags); | ||
| 58 | writel(readl(mtu_base + MTU_IMSC) | 1, mtu_base + MTU_IMSC); | 55 | writel(readl(mtu_base + MTU_IMSC) | 1, mtu_base + MTU_IMSC); |
| 59 | raw_local_irq_restore(flags); | ||
| 60 | break; | 56 | break; |
| 61 | case CLOCK_EVT_MODE_ONESHOT: | 57 | case CLOCK_EVT_MODE_ONESHOT: |
| 62 | BUG(); /* Not supported, yet */ | 58 | BUG(); /* Not supported, yet */ |
| 63 | /* FALLTHROUGH */ | 59 | /* FALLTHROUGH */ |
| 64 | case CLOCK_EVT_MODE_SHUTDOWN: | 60 | case CLOCK_EVT_MODE_SHUTDOWN: |
| 65 | case CLOCK_EVT_MODE_UNUSED: | 61 | case CLOCK_EVT_MODE_UNUSED: |
| 66 | /* disable irq */ | ||
| 67 | raw_local_irq_save(flags); | ||
| 68 | writel(readl(mtu_base + MTU_IMSC) & ~1, mtu_base + MTU_IMSC); | 62 | writel(readl(mtu_base + MTU_IMSC) & ~1, mtu_base + MTU_IMSC); |
| 69 | raw_local_irq_restore(flags); | ||
| 70 | break; | 63 | break; |
| 71 | case CLOCK_EVT_MODE_RESUME: | 64 | case CLOCK_EVT_MODE_RESUME: |
| 72 | break; | 65 | break; |
