diff options
author | Jason Andryuk <jandryuk@gmail.com> | 2020-06-24 10:25:13 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2020-06-24 11:44:06 -0400 |
commit | dd6a7e99b1c32ca66048673442cc7152efd08d2d (patch) | |
tree | 977673cacb0947fe69d8345fea69f76261486bd6 | |
parent | 2e3de6253422112ae43e608661ba94ea6b345694 (diff) | |
download | seabios-dd6a7e99b1c32ca66048673442cc7152efd08d2d.tar.gz |
serialio: Preserve Xen DebugOutputPort
xen_preinit() runs early and changes DebugOutputPort. qemu_preinit() runs
soon after. inb on DebugOutputPort doesn't work on Xen, so the check
will always fail and DebugOutputPort will be cleared to 0 disabling
output.
Quick exit the function when running on Xen to preserve the modified
DebugOutputPort.
Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
-rw-r--r-- | src/hw/serialio.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/hw/serialio.c b/src/hw/serialio.c index 31633443..fa663b99 100644 --- a/src/hw/serialio.c +++ b/src/hw/serialio.c @@ -106,6 +106,10 @@ u16 DebugOutputPort VARFSEG = 0x402; void qemu_debug_preinit(void) { + /* Xen doesn't support checking if debug output is active. */ + if (runningOnXen()) + return; + /* Check if the QEMU debug output port is active */ if (CONFIG_DEBUG_IO && inb(GET_GLOBAL(DebugOutputPort)) != QEMU_DEBUGCON_READBACK) |