]> git.baikalelectronics.ru Git - kernel.git/commit
Merge series "arm64: tegra: Enable audio IOMMU support on Tegra194" from Thierry...
authorMark Brown <broonie@kernel.org>
Mon, 12 Jul 2021 10:30:22 +0000 (11:30 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 12 Jul 2021 10:30:22 +0000 (11:30 +0100)
commit3f940cbac9c24f4becf87f9a4055b302657e57a0
tree48132617520894a7d45fdf537bf9c9c9bd73f912
parentad429641cb9feba8c0f8875c99bdea2d02ccdedc
parentf74177d3693ec1c35bdb0bc36ce8ac62f650c20a
Merge series "arm64: tegra: Enable audio IOMMU support on Tegra194" from Thierry Reding <thierry.reding@gmail.com>
Thierry Reding <treding@nvidia.com>:

From: Thierry Reding <treding@nvidia.com>

This small series addresses a minor issue with how IOMMU support is
wired up on various Tegra generations. Currently the virtual "card"
device is used to allocate DMA memory for, but since that device does
not actually exist, the path to memory cannot be correctly described.

To address this, this series moves to using the ADMAIF as the DMA device
for audio. This is a real device that can have a proper DMA mask set and
with which a stream ID can be associated with in the SMMU. The memory
accesses technically originate from the ADMA controller (that the ADMAIF
uses), but DMA channel are dynamically allocated at runtime while DMA
memory is allocated at driver load time, drivers won't have access to
the ADMA device yet.

Further patches will be required to correct this issue on Tegra186 and
Tegra210, but I wanted to get feedback on this approach first.

Changes in v2:
- add backwards-compatibility fallback

Thierry

Thierry Reding (2):
  ASoC: tegra: Use ADMAIF component for DMA allocations
  arm64: tegra: Enable audio IOMMU support on Tegra194

 arch/arm64/boot/dts/nvidia/tegra194.dtsi |  4 ++++
 sound/soc/tegra/tegra_pcm.c              | 30 ++++++++++++++----------
 2 files changed, 22 insertions(+), 12 deletions(-)

--
2.32.0