After entering uart boot mode the CPU prints some diagnostic messages.
Showing them to the user helps her to notice when the message window was
missed or there is an other problem.

Signed-off-by: Uwe Kleine-König <[email protected]>
---
 scripts/kwboot.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

diff --git a/scripts/kwboot.c b/scripts/kwboot.c
index 9dfaf4a8dfb0..0a089b593625 100644
--- a/scripts/kwboot.c
+++ b/scripts/kwboot.c
@@ -9,6 +9,7 @@
  *   2008. Chapter 24.2 "BootROM Firmware".
  */
 
+#include <ctype.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
@@ -285,12 +286,20 @@ kwboot_bootmsg(int tty, void *msg)
                }
 
                rc = kwboot_tty_recv(tty, &c, 1, KWBOOT_MSG_RSP_TIMEO);
-
-               kwboot_spinner();
+               while (!rc && c != NAK) {
+                       if (c == '\\')
+                               kwboot_printv("\\\\", c);
+                       else if (isprint(c) || c == '\r' || c == '\n')
+                               kwboot_printv("%c", c);
+                       else
+                               kwboot_printv("\\x%02hhx", c);
+
+                       rc = kwboot_tty_recv(tty, &c, 1, KWBOOT_MSG_RSP_TIMEO);
+               }
 
        } while (rc || c != NAK);
 
-       kwboot_printv("\n");
+       kwboot_printv("\nGot expected NAK\n");
 
        return rc;
 }
-- 
2.9.3


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to