drm/msm/a6xx: Bail out early if setting GPU OOB fails
authorKonrad Dybcio <konrad.dybcio@linaro.org>
Tue, 8 Aug 2023 21:02:45 +0000 (23:02 +0200)
committerRob Clark <robdclark@chromium.org>
Thu, 17 Aug 2023 17:09:54 +0000 (10:09 -0700)
If the GMU can't guarantee the required resources are up, trying to
bring up the GPU is a lost cause. Return early if setting GPU OOB
fails.

Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550-QRD
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> # sm8450
Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Patchwork: https://patchwork.freedesktop.org/patch/551830/
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/adreno/a6xx_gpu.c

index 6dd6d72..d4e85e2 100644 (file)
@@ -1201,7 +1201,9 @@ static int hw_init(struct msm_gpu *gpu)
 
        if (!adreno_has_gmu_wrapper(adreno_gpu)) {
                /* Make sure the GMU keeps the GPU on while we set it up */
-               a6xx_gmu_set_oob(&a6xx_gpu->gmu, GMU_OOB_GPU_SET);
+               ret = a6xx_gmu_set_oob(&a6xx_gpu->gmu, GMU_OOB_GPU_SET);
+               if (ret)
+                       return ret;
        }
 
        /* Clear GBIF halt in case GX domain was not collapsed */