summaryrefslogtreecommitdiffstats
path: root/include/os.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2013-11-10 10:27:01 -0700
committerSimon Glass <sjg@chromium.org>2014-01-08 17:24:50 -0700
commit91b136c7989e763b01632ca3de6fca8ead0b847b (patch)
treee604715f70bf272c800568380aa6bfb9ddd6d674 /include/os.h
parent88bd0e9d15d2f7e8c040931b06497878f9ed0550 (diff)
downloadblackbird-obmc-uboot-91b136c7989e763b01632ca3de6fca8ead0b847b.tar.gz
blackbird-obmc-uboot-91b136c7989e763b01632ca3de6fca8ead0b847b.zip
sandbox: Allow the console to work earlier
With sandbox, errors and problems may be reported before console_init_f() is executed. For example, an argument may not parse correctly or U-Boot may panic(). At present this output is swallowed so there is no indication what is going wrong. Adjust the console to deal with a very early sandbox setup, by detecting that there is no global_data yet, and calling os functions in that case. Signed-off-by: Simon Glass <sjg@chromium.org> Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/os.h')
-rw-r--r--include/os.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/os.h b/include/os.h
index 1575a96922..d302b3685b 100644
--- a/include/os.h
+++ b/include/os.h
@@ -209,4 +209,24 @@ const char *os_dirent_get_typename(enum os_dirent_t type);
*/
ssize_t os_get_filesize(const char *fname);
+/**
+ * Write a character to the controlling OS terminal
+ *
+ * This bypasses the U-Boot console support and writes directly to the OS
+ * stdout file descriptor.
+ *
+ * @param ch Character to write
+ */
+void os_putc(int ch);
+
+/**
+ * Write a string to the controlling OS terminal
+ *
+ * This bypasses the U-Boot console support and writes directly to the OS
+ * stdout file descriptor.
+ *
+ * @param str String to write (note that \n is not appended)
+ */
+void os_puts(const char *str);
+
#endif
OpenPOWER on IntegriCloud