]> git.ipfire.org Git - thirdparty/qemu.git/commit
rust: pl011: Really use RX FIFO depth
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 8 May 2025 08:29:43 +0000 (10:29 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 12 May 2025 15:47:39 +0000 (17:47 +0200)
commitac2c4d3aed5bf91eaed861d3b98f839ea4357643
treed6117bf7fcfcf0713a9241fc3c9013803eec43c3
parentcc1f4b34d011e908dcaf24721f1d5808e02ab0bd
rust: pl011: Really use RX FIFO depth

While we model a 16-elements RX FIFO since the PL011 model was
introduced in commit cdbdb648b7c ("ARM Versatile Platform Baseboard
emulation"), we only read 1 char at a time!

Have can_receive() return how many elements are available, and use that
in receive().

This is the Rust version of commit 3e0f118f825 ("hw/char/pl011: Really
use RX FIFO depth"); but it also adds back a comment that is present
in commit f576e0733cc ("hw/char/pl011: Add support for loopback") and
absent in the Rust code.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
docs/devel/rust.rst
rust/hw/char/pl011/src/device.rs