From: Rob Herring <rob.herr...@linaro.org> The receive fifo full bit should be set when 1 character is received and the fifo is disabled or when 16 characters are in the fifo.
Signed-off-by: Rob Herring <rob.herr...@linaro.org> --- hw/char/pl011.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/char/pl011.c b/hw/char/pl011.c index 920ba3f..5e664f4 100644 --- a/hw/char/pl011.c +++ b/hw/char/pl011.c @@ -220,7 +220,7 @@ static void pl011_put_fifo(void *opaque, uint32_t value) s->read_fifo[slot] = value; s->read_count++; s->flags &= ~PL011_FLAG_RXFE; - if (s->cr & 0x10 || s->read_count == 16) { + if (!(s->lcr & 0x10) || s->read_count == 16) { s->flags |= PL011_FLAG_RXFF; } if (s->read_count == s->read_trigger) { -- 1.8.3.2