From 6e7189d9b2b41e673c79e0fe9056543ded7c3c82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Fri, 29 Aug 2014 13:43:20 +0200 Subject: [PATCH] pc_serial: toggle THRE in IER to make VirtualBox happy Not sure it's needed on real hardware yet. --- src/add-ons/kernel/drivers/ports/pc_serial/SerialDevice.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/add-ons/kernel/drivers/ports/pc_serial/SerialDevice.cpp b/src/add-ons/kernel/drivers/ports/pc_serial/SerialDevice.cpp index 5082d1bd29..883a0bbe33 100644 --- a/src/add-ons/kernel/drivers/ports/pc_serial/SerialDevice.cpp +++ b/src/add-ons/kernel/drivers/ports/pc_serial/SerialDevice.cpp @@ -338,6 +338,8 @@ SerialDevice::Service(struct tty *tty, uint32 op, void *buffer, size_t length) TRACE("TTYOSTART\n"); // enable irqs fCachedIER |= IER_THRE; + // XXX: toggle the bit to make VirtualBox happy !? + WriteReg8(IER, fCachedIER & ~IER_THRE); WriteReg8(IER, fCachedIER); return true; case TTYOSYNC: