This series started from the applied and then reverted [2] patch by Robin Murphy [1]. After the MDSS rework [3] has landed it is now possible to reapply the extended version of the original patch. While we are at it, also rework the IOMMU init code for DPU and MDP5 drivers. For MDP5 this moves iommu_domain_alloc() call and removes struct mdp5_cfg_platform remains. For DPU this allows specifying the iommus = <...> either in the DPU device (like all DPU devices do) or in the MDSS device (like MDP5 devices do). Changes since v2: - Merge two return statements in msm_kms_init_aspace() (requested by Stephen) Changes since v1: - Move aspace init to common helper - Use device_iommu_mapped() rather than semi-internal dev_iommu_fwspec_get() (suggested by Robin Murphy) [1] https://patchwork.freedesktop.org/patch/480707/ [2] https://patchwork.freedesktop.org/patch/482453/ [3] https://patchwork.freedesktop.org/series/98525/ Dmitry Baryshkov (5): drm/msm/dpu: check both DPU and MDSS devices for the IOMMU drm/msm/mdp5: move iommu_domain_alloc() call close to its usage drm/msm: Stop using iommu_present() drm/msm: move KMS aspace init to the separate helper drm/msm: switch msm_kms_init_aspace() to use device_iommu_mapped() drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 24 ++---------- drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.c | 16 -------- drivers/gpu/drm/msm/disp/mdp5/mdp5_cfg.h | 6 --- drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c | 31 +++------------ drivers/gpu/drm/msm/msm_drv.c | 49 +++++++++++++++++++++++- drivers/gpu/drm/msm/msm_drv.h | 1 + 6 files changed, 57 insertions(+), 70 deletions(-) -- 2.35.1