From 58e5719a0e448d0c5cd1b670d9a099655ecfa77c Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Tue, 26 May 2015 15:25:13 -0400 Subject: [PATCH] Bug fix in timer for or1k - Properly set the interrupt pending flag in the timer mode register. * or1k/timer.c: Properly set interrupt flags --- libgloss/ChangeLog | 4 ++++ libgloss/or1k/timer.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 1dc57b6a5..77137f02b 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,3 +1,7 @@ +2015-05-26 Stefan Wallentowitz + + * or1k/timer.c: Properly set interrupt flags + 2015-05-26 Stefan Wallentowitz * or1k/exception-asm.S: Store missing state diff --git a/libgloss/or1k/timer.c b/libgloss/or1k/timer.c index 27a24a1c1..08afa6034 100644 --- a/libgloss/or1k/timer.c +++ b/libgloss/or1k/timer.c @@ -35,7 +35,7 @@ _or1k_timer_interrupt_handler(void) uint32_t ttmr = or1k_mfspr(OR1K_SPR_TICK_TTMR_ADDR); ttmr = OR1K_SPR_TICK_TTMR_IE_SET(ttmr, 1); ttmr = OR1K_SPR_TICK_TTMR_MODE_SET(ttmr, OR1K_SPR_TICK_TTMR_MODE_RESTART); - ttmr = OR1K_SPR_TICK_TTMR_IE_SET(ttmr, 1); + ttmr = OR1K_SPR_TICK_TTMR_IP_SET(ttmr, 0); or1k_mtspr(OR1K_SPR_TICK_TTMR_ADDR, ttmr); }