Commit 1f043572 authored by Troy Kisky's avatar Troy Kisky Committed by Greg Kroah-Hartman

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: default avatarTroy Kisky <troy.kisky@boundarydevices.com>
Acked-by: default avatarUwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent d3a96c94
...@@ -703,25 +703,6 @@ static irqreturn_t imx_rxint(int irq, void *dev_id) ...@@ -703,25 +703,6 @@ static irqreturn_t imx_rxint(int irq, void *dev_id)
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) ...@@ -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) ...@@ -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);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment