Hi, This series add support for (async) FIFO on the transmit path of the PL011 UART.
Last patch still broken (chars are emitted async), still patches 1-11 could be merged for this release... Since v4: - Rebased (loopback) - Addressed Richard & Juan migration comments - Split in smaller patches Since v3: - Document migration bits (Alex, Richard) - Just check FIFO is not empty in pl011_xmit_fifo_state_needed (rth) - In pl011_xmit check TX enabled first, and ignore < 8-bit TX (rth) Since v2: - Added R-b tags - Addressed Richard comments on migration Since v1: - Restrict pl011_ops[] impl access_size, - Do not check transmitter is enabled (Peter), - Addressed Alex's review comments, - Simplified migration trying to care about backward compat, but still unsure... Philippe Mathieu-Daudé (16): tests/avocado: Add 'device:pl011' tag to tests exercising PL011 UART hw/char/pl011: Remove unused 'readbuff' field hw/char/pl011: Move pl011_put_fifo() earlier hw/char/pl011: Move pl011_loopback_enabled|tx() around hw/char/pl011: Split RX/TX path of pl011_reset_fifo() hw/char/pl011: Extract pl011_write_txdata() from pl011_write() hw/char/pl011: Extract pl011_read_rxdata() from pl011_read() hw/char/pl011: Warn when using disabled transmitter tests/qtest: Update tests using PL011 UART hw/char/pl011: Check if receiver is enabled hw/char/pl011: Rename RX FIFO methods hw/char/pl011: Add transmit FIFO to PL011State hw/char/pl011: Introduce pl011_xmit() as GSource hw/char/pl011: Consider TX FIFO overrun error hw/char/pl011: Drain TX FIFO when no backend connected hw/char/pl011: Implement TX FIFO include/hw/char/pl011.h | 3 +- hw/char/pl011.c | 339 ++++++++++++++++------- tests/qtest/boot-serial-test.c | 15 +- hw/char/trace-events | 9 +- tests/avocado/boot_linux.py | 1 + tests/avocado/boot_linux_console.py | 2 + tests/avocado/boot_xen.py | 1 + tests/avocado/machine_aarch64_sbsaref.py | 1 + tests/avocado/machine_aarch64_virt.py | 1 + tests/avocado/smmu.py | 1 + tests/avocado/tuxrun_baselines.py | 5 + 11 files changed, 277 insertions(+), 101 deletions(-) -- 2.41.0