From 982c1cdb32b605627273bb40cdcc036d0b7e7b38 Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Sat, 19 Jan 2019 21:34:54 +0000 Subject: [PATCH] sbcv2: fix console blocking, static buffers --- Kernel/platform-sbcv2/devtty.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Kernel/platform-sbcv2/devtty.c b/Kernel/platform-sbcv2/devtty.c index 7bb629b1..0960d81a 100644 --- a/Kernel/platform-sbcv2/devtty.c +++ b/Kernel/platform-sbcv2/devtty.c @@ -39,6 +39,8 @@ __sfr __at 0x6F uart_scr; static char tbuf1[TTYSIZ]; static char tbuf2[TTYSIZ]; +static uint8_t sleeping; + /* * TTY masks - define which bits can be changed for each port */ @@ -91,8 +93,10 @@ uint8_t ttymap[NUM_DEV_TTY + 1] = { void kputchar(char c) { + while(tty_writeready(1) != TTY_READY_NOW); if (c == '\n') tty_putc(1, '\r'); + while(tty_writeready(1) != TTY_READY_NOW); tty_putc(1, c); } @@ -206,7 +210,7 @@ void tty_setup(uint8_t minor, uint8_t flags) */ void tty_sleeping(uint8_t minor) { - used(minor); + sleeping |= (1 << minor); } /* -- 2.34.1