]> git.dujemihanovic.xyz Git - linux.git/commitdiff
drm/amdgpu/gfx9: use proper rlc safe mode helpers
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Jul 2024 21:59:47 +0000 (17:59 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 16 Aug 2024 18:18:41 +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_0.c

index 6373c8caaabce5b5296ce03881b36bc9782b2572..f8f5bb96d4860650303cf835827e3dd3e71116ab 100644 (file)
@@ -1015,7 +1015,7 @@ static void gfx_v9_0_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t q
        unsigned i;
 
        /* enter save mode */
-       gfx_v9_0_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, 0);
 
@@ -1037,7 +1037,7 @@ static void gfx_v9_0_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t q
        soc15_grbm_select(adev, 0, 0, 0, 0, 0);
        mutex_unlock(&adev->srbm_mutex);
        /* exit safe mode */
-       gfx_v9_0_unset_safe_mode(adev, xcc_id);
+       amdgpu_gfx_rlc_exit_safe_mode(adev, xcc_id);
 }
 
 static const struct kiq_pm4_funcs gfx_v9_0_kiq_pm4_funcs = {
@@ -7233,7 +7233,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
                return r;
 
        /* make sure dequeue is complete*/
-       gfx_v9_0_set_safe_mode(adev, 0);
+       amdgpu_gfx_rlc_enter_safe_mode(adev, 0);
        mutex_lock(&adev->srbm_mutex);
        soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0, 0);
        for (i = 0; i < adev->usec_timeout; i++) {
@@ -7245,7 +7245,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
                r = -ETIMEDOUT;
        soc15_grbm_select(adev, 0, 0, 0, 0, 0);
        mutex_unlock(&adev->srbm_mutex);
-       gfx_v9_0_unset_safe_mode(adev, 0);
+       amdgpu_gfx_rlc_exit_safe_mode(adev, 0);
        if (r) {
                dev_err(adev->dev, "fail to wait on hqd deactive\n");
                return r;