Skip to content

Commit cc2ccd1

Browse files
superna9999robclark
authored andcommitted
drm/msm/adreno: fix a743 and a740 cx mem init
Disable the call to qcom_scm_gpu_init_regs() for a730 and a740 after init failures on the HDK8550 and HDK8450 platforms: msm_dpu ae01000.display-controller: failed to load adreno gpu msm_dpu ae01000.display-controller: failed to bind 3d00000.gpu (ops a3xx_ops [msm]): -5 msm_dpu ae01000.display-controller: adev bind failed: -5 While debugging, it happens the call to: qcom_scm_gpu_init_regs(QCOM_SCM_GPU_ALWAYS_EN_REQ) returns -5 and makes the gpu fail to initialize. Remove the scm call since it's not done downstream either and works fine without. Fixes: 14b27d5 ("drm/msm/a7xx: Initialize a750 "software fuse"") Signed-off-by: Neil Armstrong <[email protected]> Reviewed-by: Connor Abbott <[email protected]> Patchwork: https://patchwork.freedesktop.org/patch/600972/ Signed-off-by: Rob Clark <[email protected]>
1 parent 181914b commit cc2ccd1

File tree

1 file changed

+3
-8
lines changed

1 file changed

+3
-8
lines changed

drivers/gpu/drm/msm/adreno/a6xx_gpu.c

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1739,14 +1739,9 @@ static int a7xx_cx_mem_init(struct a6xx_gpu *a6xx_gpu)
17391739
REG_A7XX_CX_MISC_SW_FUSE_VALUE);
17401740
adreno_gpu->has_ray_tracing =
17411741
!!(fuse_val & A7XX_CX_MISC_SW_FUSE_VALUE_RAYTRACING);
1742-
} else {
1743-
if (adreno_is_a740(adreno_gpu)) {
1744-
/* Raytracing is always enabled on a740 */
1745-
adreno_gpu->has_ray_tracing = true;
1746-
}
1747-
1748-
if (qcom_scm_is_available())
1749-
return qcom_scm_gpu_init_regs(QCOM_SCM_GPU_ALWAYS_EN_REQ);
1742+
} else if (adreno_is_a740(adreno_gpu)) {
1743+
/* Raytracing is always enabled on a740 */
1744+
adreno_gpu->has_ray_tracing = true;
17501745
}
17511746

17521747
return 0;

0 commit comments

Comments
 (0)