tty: serial: imx: remove imx_disable_rx_int

Since imx_disable_rx_int is only called by imx_startup,
let's integrate it into that function. Notice UCR2_ATEN is
never set by the driver. The bit is still cleaned to make
this patch a noop.

Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
Acked-by: Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Troy Kisky 2017-11-16 11:14:53 -07:00 committed by Greg Kroah-Hartman
parent d3a96c9416
commit 1f043572cb
1 changed files with 9 additions and 27 deletions

View File

@ -703,25 +703,6 @@ out:
return IRQ_HANDLED; return IRQ_HANDLED;
} }
static void imx_disable_rx_int(struct imx_port *sport)
{
unsigned long temp;
/* disable the receiver ready and aging timer interrupts */
temp = readl(sport->port.membase + UCR1);
temp &= ~(UCR1_RRDYEN);
writel(temp, sport->port.membase + UCR1);
temp = readl(sport->port.membase + UCR2);
temp &= ~(UCR2_ATEN);
writel(temp, sport->port.membase + UCR2);
/* disable the rx errors interrupts */
temp = readl(sport->port.membase + UCR4);
temp &= ~UCR4_OREN;
writel(temp, sport->port.membase + UCR4);
}
static void clear_rx_errors(struct imx_port *sport); static void clear_rx_errors(struct imx_port *sport);
/* /*
@ -1252,18 +1233,21 @@ static int imx_startup(struct uart_port *port)
if (sport->dma_is_inited && !sport->dma_is_enabled) if (sport->dma_is_inited && !sport->dma_is_enabled)
imx_enable_dma(sport); imx_enable_dma(sport);
temp = readl(sport->port.membase + UCR1); temp = readl(sport->port.membase + UCR1) & ~UCR1_RRDYEN;
temp |= UCR1_RRDYEN | UCR1_UARTEN; if (!sport->dma_is_enabled)
temp |= UCR1_RRDYEN;
temp |= UCR1_UARTEN;
if (sport->have_rtscts) if (sport->have_rtscts)
temp |= UCR1_RTSDEN; temp |= UCR1_RTSDEN;
writel(temp, sport->port.membase + UCR1); writel(temp, sport->port.membase + UCR1);
temp = readl(sport->port.membase + UCR4); temp = readl(sport->port.membase + UCR4) & ~UCR4_OREN;
temp |= UCR4_OREN; if (!sport->dma_is_enabled)
temp |= UCR4_OREN;
writel(temp, sport->port.membase + UCR4); writel(temp, sport->port.membase + UCR4);
temp = readl(sport->port.membase + UCR2); temp = readl(sport->port.membase + UCR2) & ~UCR2_ATEN;
temp |= (UCR2_RXEN | UCR2_TXEN); temp |= (UCR2_RXEN | UCR2_TXEN);
if (!sport->have_rtscts) if (!sport->have_rtscts)
temp |= UCR2_IRTS; temp |= UCR2_IRTS;
@ -1297,10 +1281,8 @@ static int imx_startup(struct uart_port *port)
* In our iMX53 the average delay for the first reception dropped from * In our iMX53 the average delay for the first reception dropped from
* approximately 35000 microseconds to 1000 microseconds. * approximately 35000 microseconds to 1000 microseconds.
*/ */
if (sport->dma_is_enabled) { if (sport->dma_is_enabled)
imx_disable_rx_int(sport);
start_rx_dma(sport); start_rx_dma(sport);
}
spin_unlock_irqrestore(&sport->port.lock, flags); spin_unlock_irqrestore(&sport->port.lock, flags);