With the switch to GPUVM the msm driver no longer supports the no-IOMMU
configurations (even without the actual GPU). Return an error in case we
face the lack of the IOMMU.

Fixes: 111fdd2198e6 ("drm/msm: drm_gpuvm conversion")
Signed-off-by: Dmitry Baryshkov <dmitry.barysh...@oss.qualcomm.com>
---
 drivers/gpu/drm/msm/msm_kms.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/msm/msm_kms.c b/drivers/gpu/drm/msm/msm_kms.c
index 
56828d218e88a5fa597755c8ea20da781929386c..4c4dcb095c4df97de42d0673aa2842010a249dca
 100644
--- a/drivers/gpu/drm/msm/msm_kms.c
+++ b/drivers/gpu/drm/msm/msm_kms.c
@@ -195,14 +195,13 @@ struct drm_gpuvm *msm_kms_init_vm(struct drm_device *dev)
                iommu_dev = mdp_dev;
        else
                iommu_dev = mdss_dev;
-
        mmu = msm_iommu_disp_new(iommu_dev, 0);
        if (IS_ERR(mmu))
                return ERR_CAST(mmu);
 
        if (!mmu) {
-               drm_info(dev, "no IOMMU, fallback to phys contig buffers for 
scanout\n");
-               return NULL;
+               drm_info(dev, "no IOMMU, bailing out\n");
+               return ERR_PTR(-ENODEV);
        }
 
        vm = msm_gem_vm_create(dev, mmu, "mdp_kms",

-- 
2.47.2

Reply via email to