summaryrefslogtreecommitdiffstats
path: root/drivers/dma/fsldma.c
diff options
context:
space:
mode:
authorElen Song <elen.song@atmel.com>2013-05-10 05:01:46 +0200
committerVinod Koul <vinod.koul@intel.com>2013-07-05 08:10:31 +0200
commitd48de6f1a81b3d10de0f5765aff1b3bd788617b0 (patch)
tree6e6e83e17b5a776524793d114723b31e3135f1a4 /drivers/dma/fsldma.c
parentDMA: AT91: Get transfer width (diff)
downloadlinux-d48de6f1a81b3d10de0f5765aff1b3bd788617b0.tar.xz
linux-d48de6f1a81b3d10de0f5765aff1b3bd788617b0.zip
DMA: AT91: Get residual bytes in dma buffer
Add support for returning the residue for current transfer cookie by reading the transfered buffer size(BTSIZE) in CTRLA register. For a single buffer cookie, the descriptor length minus BTSIZE can get the residue. For a lli cookie, remain_desc will record remain descriptor length when last descriptor finish, the remain_desc minus BTSIZE can get the current residue. If the cookie has completed successfully, the residue will be zero. If the cookie is in progress, it will be the number of bytes yet to be transferred. If get residue error, the cookie will be turn into error status. Check dma fifo to see if data remain, let issue pending finish remain work if there is. Signed-off-by: Elen Song <elen.song@atmel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/fsldma.c')
0 files changed, 0 insertions, 0 deletions