summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-20 01:15:04 +0000
committerbalrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-20 01:15:04 +0000
commitfb60eff879b4c66002cc0974cb9ac5dc8dada025 (patch)
tree27fde9b9d5388ad945a6ee735f961861d8b2472c /hw
parent3566c0a2bf1533897a22cebd6fe52aeb75f96ea1 (diff)
downloadqemu-fb60eff879b4c66002cc0974cb9ac5dc8dada025.tar.gz
qemu-fb60eff879b4c66002cc0974cb9ac5dc8dada025.tar.bz2
qemu-fb60eff879b4c66002cc0974cb9ac5dc8dada025.zip
Add a comment about masking of CTI interrupt in 16550A UART.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5264 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw')
-rw-r--r--hw/serial.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/serial.c b/hw/serial.c
index 28d99f26cd..2167b79831 100644
--- a/hw/serial.c
+++ b/hw/serial.c
@@ -192,6 +192,9 @@ static void serial_update_irq(SerialState *s)
if ((s->ier & UART_IER_RLSI) && (s->lsr & UART_LSR_INT_ANY)) {
tmp_iir = UART_IIR_RLSI;
} else if ((s->ier & UART_IER_RDI) && s->timeout_ipending) {
+ /* Note that(s->ier & UART_IER_RDI) can mask this interrupt,
+ * this is not in the specification but is observed on existing
+ * hardware. */
tmp_iir = UART_IIR_CTI;
} else if ((s->ier & UART_IER_RDI) && (s->lsr & UART_LSR_DR)) {
if (!(s->fcr & UART_FCR_FE)) {