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.mur...@arm.com/

Signed-off-by: Samuel Holland <sam...@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.
_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to