drm/amdgpu/gfx9.4.3: use proper rlc safe mode helpers
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Jul 2024 22:04:44 +0000 (18:04 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 16 Aug 2024 18:18:44 +0000 (14:18 -0400)
Rather than open coding it for the queue reset.

Acked-by: Vitaly Prosyak <vitaly.prosyak@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c

index 092e229..9215666 100644 (file)
@@ -321,7 +321,7 @@ static void gfx_v9_4_3_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t
        unsigned i;
 
        /* enter save mode */
-       gfx_v9_4_3_xcc_set_safe_mode(adev, xcc_id);
+       amdgpu_gfx_rlc_enter_safe_mode(adev, xcc_id);
        mutex_lock(&adev->srbm_mutex);
        soc15_grbm_select(adev, me_id, pipe_id, queue_id, 0, xcc_id);
 
@@ -343,7 +343,7 @@ static void gfx_v9_4_3_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t
        soc15_grbm_select(adev, 0, 0, 0, 0, 0);
        mutex_unlock(&adev->srbm_mutex);
        /* exit safe mode */
-       gfx_v9_4_3_xcc_unset_safe_mode(adev, xcc_id);
+       amdgpu_gfx_rlc_exit_safe_mode(adev, xcc_id);
 }
 
 static const struct kiq_pm4_funcs gfx_v9_4_3_kiq_pm4_funcs = {
@@ -3495,7 +3495,7 @@ static int gfx_v9_4_3_reset_kcq(struct amdgpu_ring *ring,
                return r;
 
        /* make sure dequeue is complete*/
-       gfx_v9_4_3_xcc_set_safe_mode(adev, ring->xcc_id);
+       amdgpu_gfx_rlc_enter_safe_mode(adev, ring->xcc_id);
        mutex_lock(&adev->srbm_mutex);
        soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0, GET_INST(GC, ring->xcc_id));
        for (i = 0; i < adev->usec_timeout; i++) {
@@ -3507,7 +3507,7 @@ static int gfx_v9_4_3_reset_kcq(struct amdgpu_ring *ring,
                r = -ETIMEDOUT;
        soc15_grbm_select(adev, 0, 0, 0, 0, GET_INST(GC, ring->xcc_id));
        mutex_unlock(&adev->srbm_mutex);
-       gfx_v9_4_3_xcc_unset_safe_mode(adev, ring->xcc_id);
+       amdgpu_gfx_rlc_exit_safe_mode(adev, ring->xcc_id);
        if (r) {
                dev_err(adev->dev, "fail to wait on hqd deactive\n");
                return r;