[PATCH 2/2] serial: imx: disable the receiver ready interrupt for imx_stop_rx
Dirk Behme
dirk.behme at gmail.com
Thu May 29 22:52:25 PDT 2014
On 23.05.2014 06:32, Huang Shijie wrote:
> This patch disables the receiver ready interrupt for imx_stop_rx.
> It reduces the interrupt numbers when the uart is going to close
> or suspend.
>
> Signed-off-by: Huang Shijie <b32955 at freescale.com>
> ---
> drivers/tty/serial/imx.c | 4 ++++
> 1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c
> index ed6cdf7..6026101 100644
> --- a/drivers/tty/serial/imx.c
> +++ b/drivers/tty/serial/imx.c
> @@ -440,6 +440,10 @@ static void imx_stop_rx(struct uart_port *port)
>
> temp = readl(sport->port.membase + UCR2);
> writel(temp & ~UCR2_RXEN, sport->port.membase + UCR2);
> +
> + /* disable the `Receiver Ready Interrrupt` */
> + temp = readl(sport->port.membase + UCR1);
> + writel(temp & ~UCR1_RRDYEN, sport->port.membase + UCR1);
Will this change cause a loss or a processing delay of RX characters
pending in the RX FIFO ?
It is not clear whether disabling the receiver will clear the RX FIFO.
My guess is that the contents of the RX FIFO will remain intact when
the receiver is disabled. The RX interrupt has an opportunity to mop
up these pending characters in the RX FIFO but disabling the RX
interrupt has potential to leave those characters in the RX FIFO. Does
it matter ?
Thanks
Dirk
More information about the linux-arm-kernel
mailing list