From 8381b7eff5c568098e360a8123f8c95fc2eafdfa Mon Sep 17 00:00:00 2001 From: Marcin Mielczarczyk Date: Tue, 8 Jun 2010 18:31:05 +0200 Subject: Timer: MTU0 interrupt setup fixed This commit sets up interrupts only for timers which are used. It prevents from boot up hang when MTU0 interrupts are enabled by default. This problem has been noticed on some early versions of V1 boards. Signed-off-by: Marcin Mielczarczyk Signed-off-by: Mian Yousaf Kaukab Change-Id: I21ab2ce108e73b21958df7625ef5154ae8c2b631 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/2526 Reviewed-by: Jonas ABERG --- arch/arm/mach-ux500/timer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-ux500/timer.c b/arch/arm/mach-ux500/timer.c index d1f09fa5126..b5cdd87e79f 100755 --- a/arch/arm/mach-ux500/timer.c +++ b/arch/arm/mach-ux500/timer.c @@ -71,7 +71,7 @@ static void u8500_clkevt_mode(enum clock_event_mode mode, case CLOCK_EVT_MODE_PERIODIC: /* enable interrupts -- and count current value? */ raw_local_irq_save(flags); - writel(readl(mtu0_base + MTU_IMSC) | 1, mtu0_base + MTU_IMSC); + writel(1, mtu0_base + MTU_IMSC); raw_local_irq_restore(flags); break; case CLOCK_EVT_MODE_ONESHOT: @@ -81,7 +81,7 @@ static void u8500_clkevt_mode(enum clock_event_mode mode, case CLOCK_EVT_MODE_UNUSED: /* disable irq */ raw_local_irq_save(flags); - writel(readl(mtu0_base + MTU_IMSC) & ~1, mtu0_base + MTU_IMSC); + writel(0, mtu0_base + MTU_IMSC); raw_local_irq_restore(flags); break; case CLOCK_EVT_MODE_RESUME: -- cgit v1.2.3