]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
dmaengine: tegra: Use iommu-map for stream ID
authorAkhil R <akhilrajeev@nvidia.com>
Tue, 31 Mar 2026 10:23:01 +0000 (15:53 +0530)
committerVinod Koul <vkoul@kernel.org>
Thu, 4 Jun 2026 06:51:19 +0000 (12:21 +0530)
commit321c0a15f027b83b20ed37717191a2187c9e2eb7
tree91302dc0051349a04d7d6c5ce8f9618eefb4d602
parent45921a3282d642038d92737fab24107522324bd4
dmaengine: tegra: Use iommu-map for stream ID

Use 'iommu-map', when provided, to get the stream ID to be programmed
for each channel. Iterate over the channels registered and configure
each channel device separately using of_dma_configure_id() to allow
it to use a separate IOMMU domain for the transfer. However, do this
in a second loop since the first loop populates the DMA device channels
list and async_device_register() registers the channels. Both are
prerequisites for using the channel device in the next loop.

Channels will continue to use the same global stream ID if the
'iommu-map' property is not present in the device tree.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Jon Hunter <jonathanh@nvidia.com>
Link: https://patch.msgid.link/20260331102303.33181-9-akhilrajeev@nvidia.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/tegra186-gpc-dma.c