[PATCH 5/5] iommu/sun50i: Ensure the IOMMU can be used for DMA
Robin Murphy
robin.murphy at arm.com
Thu Apr 28 04:12:39 PDT 2022
On 2022-04-28 02:04, Samuel Holland wrote:
> So far, the driver has relied on arch/arm64/Kconfig to select IOMMU_DMA.
> Unsurprisingly, this does not work on RISC-V, so the driver must select
> IOMMU_DMA itself.
No, IOMMU_DMA should only be selected by the architecture code that's
also responsible for calling iommu_setup_dma_ops(). Without that, this
select will do nothing other than add some unused code to the kernel image.
I appreciate that the current state of the x86 IOMMU drivers being
tightly-coupled to the x86 arch code might be confusing (which reminds
me I'd totally forgotten about [1]). I'm about to start reworking the
whole area anyway, but for now please just follow the existing intent.
Thanks,
Robin.
[1]
https://lore.kernel.org/linux-iommu/9ba6f2e8568a3ff6a94fade66668d99705433c44.1631536879.git.robin.murphy@arm.com/
> Signed-off-by: Samuel Holland <samuel at sholland.org>
> ---
>
> drivers/iommu/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig
> index c79a0df090c0..70a0bfa6d907 100644
> --- a/drivers/iommu/Kconfig
> +++ b/drivers/iommu/Kconfig
> @@ -223,6 +223,7 @@ config SUN50I_IOMMU
> depends on ARCH_SUNXI || COMPILE_TEST
> select ARM_DMA_USE_IOMMU
> select IOMMU_API
> + select IOMMU_DMA
> help
> Support for the IOMMU introduced in the Allwinner H6 SoCs.
>
More information about the linux-riscv
mailing list