OSDN Git Service

tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK...
authorSherry Sun <sherry.sun@nxp.com>
Thu, 23 Feb 2023 09:39:41 +0000 (17:39 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Mar 2023 16:06:28 +0000 (17:06 +0100)
commit2411fd94ceaa6e11326e95d6ebf876cbfed28d23
tree7c822a0ee2ac5d6e2e4aad318a1e96d004421dc8
parent2d638be71155b2e036aca1966b6129e2d661e91f
tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK is asserted

According to LPUART RM, Transmission Complete Flag becomes 0 if queuing
a break character by writing 1 to CTRL[SBK], so here need to skip
waiting for transmission complete when UARTCTRL_SBK is asserted,
otherwise the kernel may stuck here.
And actually set_termios() adds transmission completion waiting to avoid
data loss or data breakage when changing the baud rate, but we don't
need to worry about this when queuing break characters.

Signed-off-by: Sherry Sun <sherry.sun@nxp.com>
Cc: stable <stable@kernel.org>
Link: https://lore.kernel.org/r/20230223093941.31790-1-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/fsl_lpuart.c