debug_serial() was doing a full flush while debug_serial_flush() was only doing a partial flush. Fix that. --- src/output.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/output.c b/src/output.c index 5c91ae5..8b8371f 100644 --- a/src/output.c +++ b/src/output.c @@ -49,7 +49,7 @@ debug_serial(char c) if (!CONFIG_DEBUG_SERIAL) return; int timeout = DEBUG_TIMEOUT; - while ((inb(CONFIG_DEBUG_SERIAL_PORT+SEROFF_LSR) & 0x60) != 0x60) + while ((inb(CONFIG_DEBUG_SERIAL_PORT+SEROFF_LSR) & 0x40) != 0x40) if (!timeout--) // Ran out of time. return; @@ -63,7 +63,7 @@ debug_serial_flush(void) if (!CONFIG_DEBUG_SERIAL) return; int timeout = DEBUG_TIMEOUT; - while ((inb(CONFIG_DEBUG_SERIAL_PORT+SEROFF_LSR) & 0x40) != 0x40) + while ((inb(CONFIG_DEBUG_SERIAL_PORT+SEROFF_LSR) & 0x60) != 0x60) if (!timeout--) // Ran out of time. return;