From bd9bdce694ccb76facc882363e4c337e8a88c918 Mon Sep 17 00:00:00 2001 From: balrog Date: Sun, 25 Nov 2007 00:55:06 +0000 Subject: Add input buffer to mux chr (patch by Tristan Gingold). git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3735 c046a42c-6fe2-441c-8c8c-71466251a162 --- hw/mcf_uart.c | 1 + hw/pl011.c | 1 + hw/serial.c | 1 + hw/slavio_serial.c | 1 + 4 files changed, 4 insertions(+) (limited to 'hw') diff --git a/hw/mcf_uart.c b/hw/mcf_uart.c index 01973a0..a65cc77 100644 --- a/hw/mcf_uart.c +++ b/hw/mcf_uart.c @@ -88,6 +88,7 @@ uint32_t mcf_uart_read(void *opaque, target_phys_addr_t addr) if (s->fifo_len == 0) s->sr &= ~MCF_UART_RxRDY; mcf_uart_update(s); + qemu_chr_accept_input(s->chr); return val; } case 0x10: diff --git a/hw/pl011.c b/hw/pl011.c index 91c52cc..9d8c6a3 100644 --- a/hw/pl011.c +++ b/hw/pl011.c @@ -78,6 +78,7 @@ static uint32_t pl011_read(void *opaque, target_phys_addr_t offset) if (s->read_count == s->read_trigger - 1) s->int_level &= ~ PL011_INT_RX; pl011_update(s); + qemu_chr_accept_input(s->chr); return c; case 1: /* UARTCR */ return 0; diff --git a/hw/serial.c b/hw/serial.c index c5d9db5..b1bd0ff 100644 --- a/hw/serial.c +++ b/hw/serial.c @@ -223,6 +223,7 @@ static uint32_t serial_ioport_read(void *opaque, uint32_t addr) ret = s->rbr; s->lsr &= ~(UART_LSR_DR | UART_LSR_BI); serial_update_irq(s); + qemu_chr_accept_input(s->chr); } break; case 1: diff --git a/hw/slavio_serial.c b/hw/slavio_serial.c index 534a438..9a8e340 100644 --- a/hw/slavio_serial.c +++ b/hw/slavio_serial.c @@ -475,6 +475,7 @@ static uint32_t slavio_serial_mem_readb(void *opaque, target_phys_addr_t addr) else ret = s->rx; SER_DPRINTF("Read channel %c, ch %d\n", CHN_C(s), ret); + qemu_chr_accept_input(s->chr); return ret; default: break; -- cgit v1.1