Audio DMA(ADMA) interface is a gateway in the AHUB for facilitating DMA transfers between memory and all of its clients. Currently the driver supports Tegra210 based platforms. This series adds support for Tegra186 and Tegra194 based platforms and fixes few functional issues. Patches in the series are classified into three categories, 1. Add support for Tegra186 and Tegra194 2. Add DMA pause/resume feature 3. Fixes common to differernt Tegra generations Below change log describes the patches in detail. Change log: ===================================== v1 ---- The series can be classified into 3 categories, 1. Add support for Tegra186 and Tegra194 [Patch 1/6] dmaengine: tegra210-adma: prepare for supporting newer Tegra chips * The support was there only for Tegra210 * This is a preparation for adding support for newer Tegra chips * chip_data is enhanced to support differences between Tegra210 and Tegra186/Tegra194 [Patch 2/6] Documentation: DT: Add compatibility binding for Tegra186 * New compatibility string is required for driver to work for Tegra186 and Tegra194. Hence new compatibility is introduced. * Tegra194 can use the same compatibility as Tegra186 [Patch 3/6] dmaengine: tegra210-adma: add support for Tegra186/ Tegra194 * Populates chip specific information for Tegra186 * There is a difference in the way ADMA CH_CONFIG registers are encoded for Tegra210 and Tegra186. Added helper fucntions to support different versions of burst size configuration 2. Add DMA pause/resume feature [Patch 4/6] dmaengine: tegra210-adma: add pause/resume support * Adds support for ADMA pause/resume, otherwise audio loss was seen during continuous pause/resume of audio playback. 3. Fixes common to differernt Tegra generations [Patch 5/6] dmaengine: tegra210-dma: free dma controller in remove() * Fixes kernel panic observed during driver reload. DMA controller needs to be freed when driver is unloaded [Patch 6/6] dmaengine: tegra210-adma: restore channel status * Fixes resume across system suspend. If the channel state is not restored, the transfers won't resume from the state from where it was left during suspend entry. In this case, audio playback did not resume properly once system exited from low power state. =============================== Sameer Pujar (6): dmaengine: tegra210-adma: prepare for supporting newer Tegra chips Documentation: DT: Add compatibility binding for Tegra186 dmaengine: tegra210-adma: add support for Tegra186/Tegra194 dmaengine: tegra210-adma: add pause/resume support dmaengine: tegra210-dma: free dma controller in remove() dmaengine: tegra210-adma: restore channel status .../bindings/dma/nvidia,tegra210-adma.txt | 4 +- drivers/dma/tegra210-adma.c | 232 +++++++++++++++++---- 2 files changed, 193 insertions(+), 43 deletions(-) -- 2.7.4