PL011: Fix a bug in the UART FIFO polling
Before attempting to write a character, the PL011 driver polls the PL011_UARTFR_TXFF bit to know whether the UART FIFO is full. However, the comparison with 1 was incorrect because PL011_UARTFR_TXFF is not at bit 0. This patch fixes it. Change-Id: I4b53c28612f58581c6189ed6c794ed02cc2a89e3
This commit is contained in:
parent
de116940dd
commit
c6af727f3c
|
@ -65,8 +65,10 @@ void console_init(unsigned long base_addr)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#define WAIT_UNTIL_UART_FREE(base) while ((pl011_read_fr(base)\
|
#define WAIT_UNTIL_UART_FREE(base) \
|
||||||
& PL011_UARTFR_TXFF) == 1)
|
while ((pl011_read_fr(base) & PL011_UARTFR_TXFF)) \
|
||||||
|
continue
|
||||||
|
|
||||||
int console_putc(int c)
|
int console_putc(int c)
|
||||||
{
|
{
|
||||||
assert(uart_base);
|
assert(uart_base);
|
||||||
|
|
Loading…
Reference in New Issue