Browse Source

serial: pl011: fix fall back from DMA to interrupt mode

When falling back from DMA to interrupt mode the receive interrupt has to
be re-enabled to catch new incoming data.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Guennadi Liakhovetski 11 years ago
parent
commit
c25a1ad707
1 changed files with 2 additions and 0 deletions
  1. 2 0
      drivers/tty/serial/amba-pl011.c

+ 2 - 0
drivers/tty/serial/amba-pl011.c

@@ -967,6 +967,8 @@ static void pl011_dma_rx_poll(unsigned long args)
 
 		spin_lock_irqsave(&uap->port.lock, flags);
 		pl011_dma_rx_stop(uap);
+		uap->im |= UART011_RXIM;
+		writew(uap->im, uap->port.membase + UART011_IMSC);
 		spin_unlock_irqrestore(&uap->port.lock, flags);
 
 		uap->dmarx.running = false;