Message ID | e2514818af5973be291cc117d07739f068b71639.1584610774.git.shubhrajyoti.datta@xilinx.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 706bbc572d5955272d4b67782a22083f8a6ad16a |
Headers | show |
Series | serial: uartps: Add TACTIVE check | expand |
On 2020-03-19 10:44, Shubhrajyoti Datta wrote: > From: Raviteja Narayanam <raviteja.narayanam@xilinx.com> > > Make sure that all bytes are transmitted out of Uart by monitoring > CDNS_UART_SR_TACTIVE bit as well. > > Signed-off-by: Raviteja Narayanam <raviteja.narayanam@xilinx.com> > Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com> > --- > drivers/tty/serial/xilinx_uartps.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/tty/serial/xilinx_uartps.c > b/drivers/tty/serial/xilinx_uartps.c > index 662b8ab..38cb76a9 100644 > --- a/drivers/tty/serial/xilinx_uartps.c > +++ b/drivers/tty/serial/xilinx_uartps.c > @@ -663,8 +663,8 @@ static unsigned int cdns_uart_tx_empty(struct > uart_port *port) > unsigned int status; > > status = readl(port->membase + CDNS_UART_SR) & > - CDNS_UART_SR_TXEMPTY; > - return status ? TIOCSER_TEMT : 0; > + (CDNS_UART_SR_TXEMPTY | CDNS_UART_SR_TACTIVE); > + return (status == CDNS_UART_SR_TXEMPTY) ? TIOCSER_TEMT : 0; > } > > /** Acked-by: Maarten Brock <m.brock@vanmierlo.com>
diff --git a/drivers/tty/serial/xilinx_uartps.c b/drivers/tty/serial/xilinx_uartps.c index 662b8ab..38cb76a9 100644 --- a/drivers/tty/serial/xilinx_uartps.c +++ b/drivers/tty/serial/xilinx_uartps.c @@ -663,8 +663,8 @@ static unsigned int cdns_uart_tx_empty(struct uart_port *port) unsigned int status; status = readl(port->membase + CDNS_UART_SR) & - CDNS_UART_SR_TXEMPTY; - return status ? TIOCSER_TEMT : 0; + (CDNS_UART_SR_TXEMPTY | CDNS_UART_SR_TACTIVE); + return (status == CDNS_UART_SR_TXEMPTY) ? TIOCSER_TEMT : 0; } /**