Message ID | 20240626-topic-sm8x50-upstream-fix-a730-a730-gpu-raytracing-init-v1-1-fd7e94694ab9@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/msm/adreno: fix a743 and a740 cx mem init | expand |
On Wed, Jun 26, 2024 at 1:04 PM Neil Armstrong <neil.armstrong@linaro.org> wrote: > > 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: 14b27d5df3ea ("drm/msm/a7xx: Initialize a750 "software fuse"") > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> > --- Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c index c98cdb1e9326..3ba45b804983 100644 --- a/drivers/gpu/drm/msm/adreno/a6xx_gpu.c +++ b/drivers/gpu/drm/msm/adreno/a6xx_gpu.c @@ -1741,14 +1741,9 @@ static int a7xx_cx_mem_init(struct a6xx_gpu *a6xx_gpu) REG_A7XX_CX_MISC_SW_FUSE_VALUE); adreno_gpu->has_ray_tracing = !!(fuse_val & A7XX_CX_MISC_SW_FUSE_VALUE_RAYTRACING); - } else { - if (adreno_is_a740(adreno_gpu)) { - /* Raytracing is always enabled on a740 */ - adreno_gpu->has_ray_tracing = true; - } - - if (qcom_scm_is_available()) - return qcom_scm_gpu_init_regs(QCOM_SCM_GPU_ALWAYS_EN_REQ); + } else if (adreno_is_a740(adreno_gpu)) { + /* Raytracing is always enabled on a740 */ + adreno_gpu->has_ray_tracing = true; } return 0;
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: 14b27d5df3ea ("drm/msm/a7xx: Initialize a750 "software fuse"") Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> --- drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) --- base-commit: 62c97045b8f720c2eac807a5f38e26c9ed512371 change-id: 20240626-topic-sm8x50-upstream-fix-a730-a730-gpu-raytracing-init-46ac3f4cdd29 Best regards,