Skip to content

Commit 4a0a556

Browse files
nomispopcornmix
authored andcommitted
amba-pl011: Don't send a character during startup
This causes a corrupted character to be sent and there's no explanation for why it is required. If it worked correctly it would send an extra 0x00 which isn't appropriate either. Signed-off-by: Simon Arlott <sa.me.uk>
1 parent cbc60c7 commit 4a0a556

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

drivers/tty/serial/amba-pl011.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1393,6 +1393,11 @@ static int pl011_startup(struct uart_port *port)
13931393

13941394
writew(uap->vendor->ifls, uap->port.membase + UART011_IFLS);
13951395

1396+
/*
1397+
* The write to UART01x_DR causes a corrupted character to be sent
1398+
* - why is it required?
1399+
*/
1400+
#if 0
13961401
/*
13971402
* Provoke TX FIFO interrupt into asserting.
13981403
*/
@@ -1414,6 +1419,7 @@ static int pl011_startup(struct uart_port *port)
14141419
writew(0, uap->port.membase + UART01x_DR);
14151420
while (readw(uap->port.membase + UART01x_FR) & UART01x_FR_BUSY)
14161421
barrier();
1422+
#endif
14171423

14181424
cr = UART01x_CR_UARTEN | UART011_CR_RXE | UART011_CR_TXE;
14191425
writew(cr, uap->port.membase + UART011_CR);

0 commit comments

Comments
 (0)