[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PULL 04/19] imx_serial: Generate interrupt on tx empty i
From: |
Michael Tokarev |
Subject: |
[Qemu-trivial] [PULL 04/19] imx_serial: Generate interrupt on tx empty if enabled |
Date: |
Thu, 8 Oct 2015 19:52:13 +0300 |
From: Guenter Roeck <address@hidden>
Generate an interrupt if the tx buffer is empty and the tx empty interrupt
is enabled. This fixes a problem seen when running a Linux image since
Linux commit 55c3cb1358e ("serial: imx: remove unneeded imx_transmit_buffer()
from imx_start_tx()"). Linux now waits for the tx empty interrupt before
starting to send data, causing transmit stalls until there is an interrupt
for another reason.
Signed-off-by: Guenter Roeck <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Michael Tokarev <address@hidden>
---
hw/char/imx_serial.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hw/char/imx_serial.c b/hw/char/imx_serial.c
index e8f32c4..f0c4c72 100644
--- a/hw/char/imx_serial.c
+++ b/hw/char/imx_serial.c
@@ -66,7 +66,9 @@ static void imx_update(IMXSerialState *s)
uint32_t flags;
flags = (s->usr1 & s->ucr1) & (USR1_TRDY|USR1_RRDY);
- if (!(s->ucr1 & UCR1_TXMPTYEN)) {
+ if (s->ucr1 & UCR1_TXMPTYEN) {
+ flags |= (s->uts1 & UTS1_TXEMPTY);
+ } else {
flags &= ~USR1_TRDY;
}
--
2.1.4
- [Qemu-trivial] [PULL 13/19] hw: timer: Remove unnecessary variable, (continued)
- [Qemu-trivial] [PULL 13/19] hw: timer: Remove unnecessary variable, Michael Tokarev, 2015/10/08
- [Qemu-trivial] [PULL 05/19] block/ssh: remove dead code, Michael Tokarev, 2015/10/08
- [Qemu-trivial] [PULL 07/19] pc: check for underflow in load_linux, Michael Tokarev, 2015/10/08
- [Qemu-trivial] [PULL 17/19] linux-user: Use g_new() & friends where that makes obvious sense, Michael Tokarev, 2015/10/08
- [Qemu-trivial] [PULL 02/19] sdhci: use PRIx64 for uint64_t type, Michael Tokarev, 2015/10/08
- [Qemu-trivial] [PULL 11/19] MAINTAINERS: Add NSIS file for W32, W64 hosts, Michael Tokarev, 2015/10/08
- Re: [Qemu-trivial] [Qemu-devel] [PULL 00/19] Trivial patches for 2015-10-08, Peter Maydell, 2015/10/09
- [Qemu-trivial] [PULL 01/19] Add .dir-locals.el file to configure emacs coding style, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 16/19] rocker: Use g_new() & friends where that makes obvious sense, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 04/19] imx_serial: Generate interrupt on tx empty if enabled,
Michael Tokarev <=
- [Qemu-trivial] [PULL 08/19] s/cpu_get_real_ticks/cpu_get_host_ticks/, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 06/19] pci-assign: do not include sys/io.h, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 18/19] linux-user: Remove type casts to union type, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 15/19] .travis.yml: Run make check for all targets, not just some, Michael Tokarev, 2015/10/09
- [Qemu-trivial] [PULL 19/19] tests: Unique test path for /string-visitor/output, Michael Tokarev, 2015/10/09