dmaengine: shdma: fix DMA error handling.
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Thu, 11 Feb 2010 16:50:05 +0000 (16:50 +0000)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 2 Mar 2010 02:09:00 +0000 (11:09 +0900)
commit47a4dc26eeb89a3746f9b1e2092602b40469640a
tree69eb685635ca18f42ac8e245c9be7032a8dd41e7
parent920925f90fa6455f7e8c9db0e215e706cd7dedeb
dmaengine: shdma: fix DMA error handling.

Present DMA error ISR in shdma.c is bogus, it locks the system hard in multiple
ways. Fix it to abort all queued transactions on all channels on the affected
controller and giving submitters a chance to get a DMA_ERROR status for aborted
transactions. Afterwards further functionality is again possible without the
need to re-load the driver.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
drivers/dma/shdma.c