]> git.baikalelectronics.ru Git - kernel.git/commit
fsldma: Fix the DMA halt when using DMA_INTERRUPT async_tx transfer.
authorZhang Wei <wei.zhang@freescale.com>
Wed, 19 Mar 2008 01:45:00 +0000 (18:45 -0700)
committerDan Williams <dan.j.williams@intel.com>
Wed, 19 Mar 2008 00:00:59 +0000 (17:00 -0700)
commitf70b612c5fd566c5d3127b8b132bd89ee53e3dfd
tree151538a3a33026ae516606240a13404d1f1e7037
parentc1814bdc98f5264334ee576124d842f26f309f2d
fsldma: Fix the DMA halt when using DMA_INTERRUPT async_tx transfer.

The DMA_INTERRUPT async_tx is a NULL transfer, thus the BCR(count register)
is 0. When the transfer started with a byte count of zero, the DMA
controller will triger a PE(programming error) event and halt, not a normal
interrupt. I add special codes for PE event and DMA_INTERRUPT
async_tx testing.

Signed-off-by: Zhang Wei <wei.zhang@freescale.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/dma/fsldma.c
drivers/dma/fsldma.h