From: Ekansh Gupta ekansh.gupta@oss.qualcomm.com
Register the QDA compute context bank bus (qda-compute-cb) with the IOMMU subsystem by adding it to the iommu_buses[] array.
The QDA driver creates synthetic devices on this bus to represent IOMMU context banks (CBs). Each CB device needs its own IOMMU domain so that the DSP memory manager can enforce per-session address space isolation. Without this registration, the IOMMU subsystem does not probe CB devices for IOMMU groups and of_dma_configure() in the bus dma_configure callback has no IOMMU domain to attach to.
Assisted-by: Claude:claude-4-6-sonnet Signed-off-by: Ekansh Gupta ekansh.gupta@oss.qualcomm.com --- drivers/iommu/iommu.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index e8f13dcebbde..7d39050a8848 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -26,6 +26,7 @@ #include <linux/bitops.h> #include <linux/platform_device.h> #include <linux/property.h> +#include <linux/qda_compute_bus.h> #include <linux/fsl/mc.h> #include <linux/module.h> #include <linux/cc_platform.h> @@ -200,6 +201,9 @@ static const struct bus_type * const iommu_buses[] = { #ifdef CONFIG_CDX_BUS &cdx_bus_type, #endif +#ifdef CONFIG_DRM_ACCEL_QDA_COMPUTE_BUS + &qda_cb_bus_type, +#endif };
/*