[U-Boot-Users] More on serial terminal and u-boot

Hi all, I've been trouble shooting the problem of u-Boot not coming up when serial terminal is not connected. It turned out that when software CONFIG_SERIAL_SOFTWARE_FIFO is defined, putc will wait till terminal is ready to receive the data.
From u-boot/cpu/ppc4xx/serial.c, line 676 void serial_buffered_putc (const char c) { /* Wait for CTS */ #if defined(CONFIG_HW_WATCHDOG) while (!(in8 (ACTING_UART0_BASE + UART_MSR) & 0x10)) WATCHDOG_RESET (); #else while (!(in8 (ACTING_UART0_BASE + UART_MSR) & 0x10)); #endif serial_putc (c); }
Is the while loop necessary?
printf's are ok because it uses serial_buffered_puts which eventually calls serial_putc with out waiting for CTS.
Thank you
Brian
=============================================================== Brian S. Park brian@corelis.com (562) 926-6727 x143 --------------------------------------------------------------- Everything we do helps our customers get to market FASTER with HIGHER quality and LOWER cost ===============================================================
participants (1)
-
Brian S. Park