#include <common.h>
 #include <asm/arch/ixp425.h>
+#include <watchdog.h>
 
 /*
  *               14.7456 MHz
 void serial_putc (const char c)
 {
        /* wait for room in the tx FIFO on UART */
-       while ((LSR(CONFIG_SYS_IXP425_CONSOLE) & LSR_TEMT) == 0);
+       while ((LSR(CONFIG_SYS_IXP425_CONSOLE) & LSR_TEMT) == 0)
+               WATCHDOG_RESET();       /* Reset HW Watchdog, if needed */
 
        THR(CONFIG_SYS_IXP425_CONSOLE) = c;
 
  */
 int serial_getc (void)
 {
-       while (!(LSR(CONFIG_SYS_IXP425_CONSOLE) & LSR_DR));
+       while (!(LSR(CONFIG_SYS_IXP425_CONSOLE) & LSR_DR))
+               WATCHDOG_RESET();       /* Reset HW Watchdog, if needed */
 
        return (char) RBR(CONFIG_SYS_IXP425_CONSOLE) & 0xff;
 }