]> git.hungrycats.org Git - linux/commitdiff
drm/msm/a6xx: Fix A663 GPUCC register list for state capture
authorJie Zhang <jie.zhang@oss.qualcomm.com>
Thu, 4 Jun 2026 20:08:19 +0000 (01:38 +0530)
committerRob Clark <robin.clark@oss.qualcomm.com>
Thu, 16 Jul 2026 20:37:22 +0000 (13:37 -0700)
The GPUCC register list for A663 is incorrect, which can cause
out-of-bounds register access during GPU state capture.

Update it to use the correct register ranges.

Fixes: 5773cce8615c ("drm/msm/a6xx: Add support for A663")
Signed-off-by: Jie Zhang <jie.zhang@oss.qualcomm.com>
Signed-off-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/730656/
Message-ID: <20260605-assorted-fixes-june-v1-3-2caa04f7287c@oss.qualcomm.com>
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c

index 166365359fa6dd79203a851b5a0be0096736c67e..2a62a22077f92be5464039aa323beb05978c7215 100644 (file)
@@ -1244,7 +1244,9 @@ static void a6xx_get_gmu_registers(struct msm_gpu *gpu,
        _a6xx_get_gmu_registers(gpu, a6xx_state, &a6xx_gmu_reglist[1],
                &a6xx_state->gmu_registers[1], true);
 
-       if (adreno_is_a621(adreno_gpu) || adreno_is_a623(adreno_gpu))
+       if (adreno_is_a621(adreno_gpu) ||
+           adreno_is_a623(adreno_gpu) ||
+           adreno_is_a663(adreno_gpu))
                _a6xx_get_gmu_registers(gpu, a6xx_state, &a621_gpucc_reg,
                        &a6xx_state->gmu_registers[2], false);
        else