amba-pl011​/dma: Add check for the residue in DMA callback
authorChanho Min <chanho0207@gmail.com>
Mon, 20 Feb 2012 01:24:40 +0000 (10:24 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 24 Feb 2012 21:50:47 +0000 (13:50 -0800)
commit6dc01aa65306fe46b7ba38db51fad4ed81c23d00
treecad255d51a09c900062d9dbd2db07432dc4b5b19
parentb26469a8b139fba11d9336c1c117fafccfa9c7d5
amba-pl011​/dma: Add check for the residue in DMA callback

In DMA-operated uart, I found that rx data can be taken by the UART
interrupts during the DMA irq handler. pl011_int is occurred just
before it goes inside spin_lock_irq. When it returns to the callback,
DMA buffer already has been flushed. Then, pl011_dma_rx_chars gets
invalid data. So I add check for the residue as the patch bellow.

Signed-off-by: Chanho Min <chanho.min@lge.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/amba-pl011.c