提交 04ff9ab1 编写于 作者: G Graeme Russ 提交者: Wolfgang Denk

Fix sc520 timer interrupt generation

The current implementation has the timer being started before the interrupt
handler is installed. It the interrupt occurs before the handler is
installed, the timer interrupt is never reset and the timer stops
Signed-off-by: NGraeme Russ <graeme.russ@gmail.com>
上级 f3a8d6b2
......@@ -54,9 +54,6 @@ int timer_init(void)
write_mmcr_word (SC520_GPTMR1MAXCMPA, 100);
write_mmcr_word (SC520_GPTMR1CTL, 0xe009);
/* Clear the GP Timers status register */
write_mmcr_byte (SC520_GPTMRSTA, 0x07);
/* Register the SC520 specific timer interrupt handler */
register_timer_isr (sc520_timer_isr);
......@@ -64,6 +61,9 @@ int timer_init(void)
irq_install_handler (0, timer_isr, NULL);
unmask_irq (0);
/* Clear the GP Timer 1 status register to get the show rolling*/
write_mmcr_byte (SC520_GPTMRSTA, 0x02);
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册