Adding watch dog support

signed off by Stuart Wood <[EMAIL PROTECTED]>

diff --git a/drivers/serial/serial_pl010.c b/drivers/serial/serial_pl010.c
index 417b6ae..134ed09 100644
--- a/drivers/serial/serial_pl010.c
+++ b/drivers/serial/serial_pl010.c
@@ -29,6 +29,7 @@
 /* Should be fairly simple to make it work with the PL010 as well */

 #include <common.h>
+#include <watchdog.h>

 #ifdef CFG_PL010_SERIAL

@@ -137,7 +138,8 @@ void serial_setbrg (void)
 static void pl010_putc (int portnum, char c)
 {
        /* Wait until there is space in the FIFO */
-       while (IO_READ (port[portnum] + UART_PL01x_FR) & UART_PL01x_FR_TXFF);
+       while (IO_READ (port[portnum] + UART_PL01x_FR) & UART_PL01x_FR_TXFF)
+               WATCHDOG_RESET();

        /* Send the character */
        IO_WRITE (port[portnum] + UART_PL01x_DR, c);
@@ -148,7 +150,8 @@ static int pl010_getc (int portnum)
        unsigned int data;

        /* Wait until there is data in the FIFO */
-       while (IO_READ (port[portnum] + UART_PL01x_FR) & UART_PL01x_FR_RXFE);
+       while (IO_READ (port[portnum] + UART_PL01x_FR) & UART_PL01x_FR_RXFE)
+               WATCHDOG_RESET();

        data = IO_READ (port[portnum] + UART_PL01x_DR);

@@ -164,6 +167,7 @@ static int pl010_getc (int portnum)

 static int pl010_tstc (int portnum)
 {
+       WATCHDOG_RESET();
        return !(IO_READ (port[portnum] + UART_PL01x_FR) &
                 UART_PL01x_FR_RXFE);
 }

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to