0dfc21c1a4
DMA memory is currently allocated for the soundcard device, which is a virtual device added for the sole purpose of "stitching" together the audio device. It is not a real device and therefore doesn't have a DMA mask or a description of the path to and from memory of accesses. Memory accesses really originate from the ADMA controller that provides the DMA channels used by the PCM component. However, since the DMA memory is allocated up-front and the DMA channels aren't known at that point, there is no way of knowing the DMA channel provider at allocation time. The next best physical device in the memory path is the ADMAIF. Use it as the device to allocate DMA memory to. iommus and interconnects device tree properties can thus be added to the ADMAIF device tree node to describe the memory access path for audio. Signed-off-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20210708103432.1690385-2-thierry.reding@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
tegra20_ac97.c | ||
tegra20_ac97.h | ||
tegra20_das.c | ||
tegra20_das.h | ||
tegra20_i2s.c | ||
tegra20_i2s.h | ||
tegra20_spdif.c | ||
tegra20_spdif.h | ||
tegra30_ahub.c | ||
tegra30_ahub.h | ||
tegra30_i2s.c | ||
tegra30_i2s.h | ||
tegra186_dspk.c | ||
tegra186_dspk.h | ||
tegra210_admaif.c | ||
tegra210_admaif.h | ||
tegra210_ahub.c | ||
tegra210_ahub.h | ||
tegra210_dmic.c | ||
tegra210_dmic.h | ||
tegra210_i2s.c | ||
tegra210_i2s.h | ||
tegra_asoc_machine.c | ||
tegra_asoc_machine.h | ||
tegra_audio_graph_card.c | ||
tegra_cif.h | ||
tegra_pcm.c | ||
tegra_pcm.h | ||
tegra_wm8903.c |