]> git.baikalelectronics.ru Git - kernel.git/commit
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>
Wed, 22 Mar 2023 12:28:08 +0000 (13:28 +0100)
commit112c7d3cea1a42ba2eb1f7ebb110b278efc2c732
tree2dc27d7e56f935abfa445f3daf74f257bbf42e7f
parent900fdf72b4f1a80c0cec2cda3fc03307d627a028
tty: serial: fsl_lpuart: skip waiting for transmission complete when UARTCTRL_SBK is asserted

commit 2411fd94ceaa6e11326e95d6ebf876cbfed28d23 upstream.

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