From: Uwe Kleine-König Date: Fri, 2 Mar 2018 10:07:24 +0000 (+0100) Subject: serial: imx: setup fifo waterlevel before enabling aging timer X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=02b0abd3bb93ea1d9818c5c5b1fcf293f81cee37;p=linux.git serial: imx: setup fifo waterlevel before enabling aging timer The aging timer fires if there are characters in the RX fifo but the water level isn't reached yet. Make sure that the waterlevel is configured before the aging timer is enabled to trigger a DMA request (UCR1_ATDMAEN). Signed-off-by: Uwe Kleine-König Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index 23d591897e824..9b92c49fc1740 100644 --- a/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c @@ -1239,13 +1239,13 @@ static void imx_enable_dma(struct imx_port *sport) { u32 ucr1; + imx_setup_ufcr(sport, TXTL_DMA, RXTL_DMA); + /* set UCR1 */ ucr1 = imx_uart_readl(sport, UCR1); ucr1 |= UCR1_RXDMAEN | UCR1_TXDMAEN | UCR1_ATDMAEN; imx_uart_writel(sport, ucr1, UCR1); - imx_setup_ufcr(sport, TXTL_DMA, RXTL_DMA); - sport->dma_is_enabled = 1; }