From: Hawking Zhang <[email protected]>

Ensure the GRBM_GFX_CNTL is programmed correctly

Signed-off-by: Hawking Zhang <[email protected]>
Reviewed-by: Le Ma <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c 
b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
index ed6c2aae3c486..a70ab9e4b7385 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_1.c
@@ -1455,7 +1455,7 @@ static void gfx_v12_1_xcc_constants_init(struct 
amdgpu_device *adev,
                        WREG32_SOC15(GC, GET_INST(GC, xcc_id), regSH_MEM_BASES, 
tmp);
                }
        }
-       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, 0));
+       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, xcc_id));
 
        mutex_unlock(&adev->srbm_mutex);
 
@@ -1783,7 +1783,7 @@ static void gfx_v12_1_xcc_config_gfx_rs64(struct 
amdgpu_device *adev,
                WREG32_SOC15(GC, GET_INST(GC, xcc_id), 
regCP_MEC_RS64_PRGRM_CNTR_START_HI,
                                        mec_hdr->ucode_start_addr_hi >> 2);
        }
-       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, 0));
+       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, xcc_id));
 
        /* reset mec pipe */
        tmp = RREG32_SOC15(GC, GET_INST(GC, xcc_id), regCP_MEC_RS64_CNTL);
@@ -1828,7 +1828,7 @@ static void gfx_v12_1_xcc_set_mec_ucode_start_addr(struct 
amdgpu_device *adev,
                WREG32_SOC15(GC, GET_INST(GC, xcc_id), 
regCP_MEC_RS64_PRGRM_CNTR_START_HI,
                             cp_hdr->ucode_start_addr_hi >> 2);
        }
-       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, 0));
+       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, xcc_id));
        mutex_unlock(&adev->srbm_mutex);
 }
 
@@ -2024,7 +2024,7 @@ static int 
gfx_v12_1_xcc_cp_compute_load_microcode_rs64(struct amdgpu_device *ad
                                upper_32_bits(adev->gfx.mec.mec_fw_gpu_addr));
        }
        mutex_unlock(&adev->srbm_mutex);
-       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, 0));
+       soc_v1_0_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, xcc_id));
 
        /* Trigger an invalidation of the L1 instruction caches */
        tmp = RREG32_SOC15(GC, GET_INST(GC, xcc_id), regCP_MEC_DC_OP_CNTL);
-- 
2.52.0

Reply via email to