• Q
    dma: mmp-tdma: refine dma disable and dma-pos update · 1eed601a
    Qiao Zhou 提交于
    Below are the refinements.
    1. Set DMA abort bit when disabling dma channel. This will clear
    the remaining data in dma FIFO, to fix channel-swap issue.
    2. Read DMA HW pointer when updating DMA status. Previously dma
    position is calculated by adding one period size in dma interrupt.
    This is inaccurate/insufficient for some high-quality audio APP.
    Since interrupt bottom half handler has variable schedule delay,
    it causes big error when calculating sample delay. Read the actual
    HW pointer and feedback can improve the accuracy.
    3. Do some minor code clean.
    Signed-off-by: NQiao Zhou <zhouqiao@marvell.com>
    Signed-off-by: NVinod Koul <vinod.koul@intel.com>
    1eed601a
mmp_tdma.c 18.0 KB