]> git.itanic.dy.fi Git - linux-stable/commitdiff
drm/msm: Be more shouty if per-process pgtables aren't working
authorRob Clark <robdclark@chromium.org>
Tue, 16 May 2023 22:20:37 +0000 (15:20 -0700)
committerRob Clark <robdclark@chromium.org>
Wed, 17 May 2023 15:53:47 +0000 (08:53 -0700)
Otherwise it is not always obvious if a dt or iommu change is causing us
to fall back to global pgtable.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/537359/
Link: https://lore.kernel.org/r/20230516222039.907690-2-robdclark@gmail.com
drivers/gpu/drm/msm/msm_iommu.c

index 5080319ae4cf2dc38be05cbbbb5628a3e14ad2ab..5cc8d358cc9759307a444cd62bce83c62b3dcdb7 100644 (file)
@@ -234,7 +234,12 @@ struct msm_mmu *msm_iommu_pagetable_create(struct msm_mmu *parent)
        /* Get the pagetable configuration from the domain */
        if (adreno_smmu->cookie)
                ttbr1_cfg = adreno_smmu->get_ttbr1_cfg(adreno_smmu->cookie);
-       if (!ttbr1_cfg)
+
+       /*
+        * If you hit this WARN_ONCE() you are probably missing an entry in
+        * qcom_smmu_impl_of_match[] in arm-smmu-qcom.c
+        */
+       if (WARN_ONCE(!ttbr1_cfg, "No per-process page tables"))
                return ERR_PTR(-ENODEV);
 
        pagetable = kzalloc(sizeof(*pagetable), GFP_KERNEL);