diff options
Diffstat (limited to 'cpu')
-rw-r--r-- | cpu/arm925t/interrupts.c | 2 | ||||
-rw-r--r-- | cpu/arm926ejs/interrupts.c | 2 | ||||
-rw-r--r-- | cpu/nios/interrupts.c | 2 | ||||
-rw-r--r-- | cpu/nios/serial.c | 5 | ||||
-rw-r--r-- | cpu/ppc4xx/speed.c | 4 |
5 files changed, 11 insertions, 4 deletions
diff --git a/cpu/arm925t/interrupts.c b/cpu/arm925t/interrupts.c index 7897184..00e8c18 100644 --- a/cpu/arm925t/interrupts.c +++ b/cpu/arm925t/interrupts.c @@ -237,7 +237,7 @@ void udelay (unsigned long usec) } tmp = get_timer (0); /* get current timestamp */ - if( (tmo + tmp) < tmp ) /* if setting this fordward will roll time stamp */ + if( (tmo + tmp + 1) < tmp ) /* if setting this fordward will roll time stamp */ reset_timer_masked (); /* reset "advancing" timestamp to 0, set lastdec value */ else tmo += tmp; /* else, set advancing stamp wake up time */ diff --git a/cpu/arm926ejs/interrupts.c b/cpu/arm926ejs/interrupts.c index 4d6efeb..6167933 100644 --- a/cpu/arm926ejs/interrupts.c +++ b/cpu/arm926ejs/interrupts.c @@ -229,7 +229,7 @@ void udelay (unsigned long usec) } tmp = get_timer (0); /* get current timestamp */ - if( (tmo + tmp) < tmp ) /* if setting this fordward will roll time stamp */ + if( (tmo + tmp + 1) < tmp ) /* if setting this fordward will roll time stamp */ reset_timer_masked (); /* reset "advancing" timestamp to 0, set lastdec value */ else tmo += tmp; /* else, set advancing stamp wake up time */ diff --git a/cpu/nios/interrupts.c b/cpu/nios/interrupts.c index 450946b..4436805 100644 --- a/cpu/nios/interrupts.c +++ b/cpu/nios/interrupts.c @@ -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); } diff --git a/cpu/nios/serial.c b/cpu/nios/serial.c index 61b26ab..34257a2 100644 --- a/cpu/nios/serial.c +++ b/cpu/nios/serial.c @@ -23,6 +23,7 @@ #include <common.h> +#include <watchdog.h> #include <nios-io.h> @@ -62,7 +63,7 @@ void serial_putc( char c ) if (c == '\n') serial_putc('\r'); while( (uart->status & NIOS_UART_TRDY) == 0 ) - ; + WATCHDOG_RESET (); uart->txdata = (unsigned char)c; } @@ -81,6 +82,6 @@ int serial_tstc( void ) int serial_getc( void ) { while( serial_tstc() == 0 ) - ; + WATCHDOG_RESET (); return( uart->rxdata & 0x00ff ); } diff --git a/cpu/ppc4xx/speed.c b/cpu/ppc4xx/speed.c index dfd2a04..e776050 100644 --- a/cpu/ppc4xx/speed.c +++ b/cpu/ppc4xx/speed.c @@ -299,6 +299,10 @@ ulong get_OPB_freq (void) return sys_info.freqOPB; } +#elif defined(CONFIG_XILINX_ML300) +extern void get_sys_info (sys_info_t * sysInfo); +extern ulong get_PCI_freq (void); + #elif defined(CONFIG_405) void get_sys_info (sys_info_t * sysInfo) { |