diff options
author | Alexander Sverdlin <alexander.sverdlin@gmx.de> | 2016-01-07 23:05:48 +0100 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2016-01-25 09:49:55 +0530 |
commit | 94901e1b24496f04bd59176b7f87406e71505e27 (patch) | |
tree | 60da68d4d132eaae4e13092fe932e2f5fedd9a1b /drivers/dma/ioat | |
parent | c9784a467380dfbd8070c735e651af07331172d9 (diff) | |
download | blackbird-obmc-linux-94901e1b24496f04bd59176b7f87406e71505e27.tar.gz blackbird-obmc-linux-94901e1b24496f04bd59176b7f87406e71505e27.zip |
dmaengine: ep93xx: Treat STALL and NFB IRQs same way
Debugging ALSA hangups it was found that EP9302 (latest E2 rev.) DMA controller
sometimes asserts STALL interrupt instead of NFB interrupt. Simply ignoring the
difference and simply acting upon the amount of data we still have to transfer
seems to work fine. This somehow sounds similar to M2M issue which is already
dealt with in the driver, when the controller asserts DONE interrupt too early.
The issue is not documented in Cirrus Logic erratas for EP93XX, but original
Cirrus DMA driver from 2003 (not based on DMA API) did the similar handling
of STALL interrupt. In-tree driver (6d831c65) did it also, before conversion to
DMA engine API.
Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/ioat')
0 files changed, 0 insertions, 0 deletions