2010/3/27 Aurelien Jarno <aurel...@aurel32.net>: > On Thu, Mar 25, 2010 at 08:58:13PM +0800, Roy Tam wrote: >> The commit in r1049 (serial interrupt fix (Hampa Hug)) prevents >> booting Digital Research DOSPlus. Following patch partially reverts >> that commit and makes DOSPlus booting in QEMU again. > > I guess that this patch has been introduced to fix an issue. Are you > sure your partial revert is correct and is not going to create a > regression? What the documentation says?
In other words, I can't find other implementations (such as Bochs) checks LSR_THRE in IER. And the log message in r1049 doesn't say any regressions too. As a result I assume checking LSR_THRE in IER in r1049 is wrong implementation. Partial reverting r1049 are tested and no regression created(tested with DOS/Windows/*nix guests, if they work correctly before applying this patch). > >> Sign-off-by: Roy Tam <roy...@gmail.com> >> >> -- >> >> diff --git a/hw/serial.c b/hw/serial.c >> index f3ec36a..2ae550e 100644 >> --- a/hw/serial.c >> +++ b/hw/serial.c >> @@ -401,10 +401,6 @@ static void serial_ioport_write(void *opaque, >> s->poll_msl = 0; >> } >> } >> - if (s->lsr & UART_LSR_THRE) { >> - s->thr_ipending = 1; >> - serial_update_irq(s); >> - } >> } >> break; >> case 2: >> >> >> > > -- > Aurelien Jarno GPG: 1024D/F1BCDB73 > aurel...@aurel32.net http://www.aurel32.net >