Merge branch 'master' of git://git.denx.de/u-boot-sh
[oweals/u-boot.git] / cpu / nios / interrupts.c
index 31eabde53d675137ae07b4829b0c5a00dc853b42..75e491d8436cbbc1f3bd3e432c42d6da111f039b 100644 (file)
@@ -30,6 +30,7 @@
 #include <asm/ptrace.h>
 #include <common.h>
 #include <command.h>
+#include <watchdog.h>
 #ifdef CONFIG_STATUS_LED
 #include <status_led.h>
 #endif
@@ -54,6 +55,7 @@ void reset_timer (void)
 
 ulong get_timer (ulong base)
 {
+       WATCHDOG_RESET ();
        return (timestamp - base);
 }
 
@@ -128,6 +130,10 @@ int interrupt_init (void)
 
        tmr->control &= ~NIOS_TIMER_ITO;
        tmr->control |= NIOS_TIMER_STOP;
+#if defined(CFG_NIOS_TMRCNT)
+       tmr->periodl = CFG_NIOS_TMRCNT & 0xffff;
+       tmr->periodh = (CFG_NIOS_TMRCNT >> 16) & 0xffff;
+#endif
 #endif
 
        for (vec=0; vec<64; vec++ ) {
@@ -167,13 +173,13 @@ void irq_install_handler (int vec, interrupt_handler_t *handler, void *arg)
 }
 
 /*************************************************************************/
-#if (CONFIG_COMMANDS & CFG_CMD_IRQ)
+#if defined(CONFIG_CMD_IRQ)
 int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 {
        int vec;
 
        printf ("\nInterrupt-Information:\n");
-       printf ("Nr  Routine   Arg       CouIt's ok to cnt\n");
+       printf ("Nr  Routine   Arg       Count\n");
 
        for (vec=0; vec<64; vec++) {
                if (irq_vecs[vec].handler != NULL) {
@@ -187,4 +193,4 @@ int do_irqinfo (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
 
        return (0);
 }
-#endif  /* CONFIG_COMMANDS & CFG_CMD_IRQ */
+#endif