[PATCH v2 1/6] sandbox: Add function os_flush()

Pali Rohár
2022-08-11T12:40:00Z

It flushes stdout.

Signed-off-by: Pali Rohár <pali@kernel.org>
---
arch/sandbox/cpu/os.c | 5 +++++
include/os.h | 8 ++++++++
2 files changed, 13 insertions(+)

diff --git a/arch/sandbox/cpu/os.c b/arch/sandbox/cpu/os.c
index f937991139c9..01845e388d35 100644
--- a/arch/sandbox/cpu/os.c
+++ b/arch/sandbox/cpu/os.c
@@ -669,6 +669,11 @@ void os_puts(const char *str)
os_putc(*str++);
}

+void os_flush(void)
+{
+ fflush(stdout);
+}
+
int os_write_ram_buf(const char *fname)
{
struct sandbox_state *state = state_get_current();
diff --git a/include/os.h b/include/os.h
index 148178787bc2..5b353ae9d94b 100644
--- a/include/os.h
+++ b/include/os.h
@@ -295,6 +295,14 @@ void os_putc(int ch);
*/
void os_puts(const char *str);

+/**
+ * os_flush() - flush controlling OS terminal
+ *
+ * This bypasses the U-Boot console support and flushes directly the OS
+ * stdout file descriptor.
+ */
+void os_flush(void);
+
/**
* os_write_ram_buf() - write the sandbox RAM buffer to a existing file
*
--
2.20.1