mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 17:08:10 +00:00
serial: imx: do not disable individual irqs during termios change
imx_set_termios(): disabling individual interrupt requests in UART for duration of the routine is pointless. Get rid of it. Signed-off-by: Sergey Organov <sorganov@gmail.com> Link: https://lore.kernel.org/r/1567017475-11919-4-git-send-email-sorganov@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
88c38044c1
commit
85f30fbf32
1 changed files with 1 additions and 12 deletions
|
@ -1541,7 +1541,7 @@ imx_uart_set_termios(struct uart_port *port, struct ktermios *termios,
|
|||
{
|
||||
struct imx_port *sport = (struct imx_port *)port;
|
||||
unsigned long flags;
|
||||
u32 ucr2, old_ucr1, old_ucr2, ufcr;
|
||||
u32 ucr2, old_ucr2, ufcr;
|
||||
unsigned int baud, quot;
|
||||
unsigned int old_csize = old ? old->c_cflag & CSIZE : CS8;
|
||||
unsigned long div;
|
||||
|
@ -1643,15 +1643,6 @@ imx_uart_set_termios(struct uart_port *port, struct ktermios *termios,
|
|||
*/
|
||||
uart_update_timeout(port, termios->c_cflag, baud);
|
||||
|
||||
/*
|
||||
* disable interrupts
|
||||
*/
|
||||
old_ucr1 = imx_uart_readl(sport, UCR1);
|
||||
imx_uart_writel(sport,
|
||||
old_ucr1 & ~(UCR1_TXMPTYEN | UCR1_RRDYEN | UCR1_RTSDEN),
|
||||
UCR1);
|
||||
imx_uart_writel(sport, old_ucr2 & ~UCR2_ATEN, UCR2);
|
||||
|
||||
/* custom-baudrate handling */
|
||||
div = sport->port.uartclk / (baud * 16);
|
||||
if (baud == 38400 && quot != div)
|
||||
|
@ -1686,8 +1677,6 @@ imx_uart_set_termios(struct uart_port *port, struct ktermios *termios,
|
|||
imx_uart_writel(sport, sport->port.uartclk / div / 1000,
|
||||
IMX21_ONEMS);
|
||||
|
||||
imx_uart_writel(sport, old_ucr1, UCR1);
|
||||
|
||||
imx_uart_writel(sport, ucr2, UCR2);
|
||||
|
||||
if (UART_ENABLE_MS(&sport->port, termios->c_cflag))
|
||||
|
|
Loading…
Reference in a new issue