Commit 27ef61f9 authored by Alex Deucher's avatar Alex Deucher

drm/amdgpu/gfx9: use proper rlc safe mode helpers

Rather than open coding it for the queue reset.
Acked-by: default avatarVitaly Prosyak <vitaly.prosyak@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent c4f50355
...@@ -1015,7 +1015,7 @@ static void gfx_v9_0_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t q ...@@ -1015,7 +1015,7 @@ static void gfx_v9_0_kiq_reset_hw_queue(struct amdgpu_ring *kiq_ring, uint32_t q
unsigned i; unsigned i;
/* enter save mode */ /* 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); mutex_lock(&adev->srbm_mutex);
soc15_grbm_select(adev, me_id, pipe_id, queue_id, 0, 0); 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 ...@@ -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); soc15_grbm_select(adev, 0, 0, 0, 0, 0);
mutex_unlock(&adev->srbm_mutex); mutex_unlock(&adev->srbm_mutex);
/* exit safe mode */ /* 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 = { 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, ...@@ -7233,7 +7233,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
return r; return r;
/* make sure dequeue is complete*/ /* 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); mutex_lock(&adev->srbm_mutex);
soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0, 0); soc15_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0, 0);
for (i = 0; i < adev->usec_timeout; i++) { for (i = 0; i < adev->usec_timeout; i++) {
...@@ -7245,7 +7245,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring, ...@@ -7245,7 +7245,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
r = -ETIMEDOUT; r = -ETIMEDOUT;
soc15_grbm_select(adev, 0, 0, 0, 0, 0); soc15_grbm_select(adev, 0, 0, 0, 0, 0);
mutex_unlock(&adev->srbm_mutex); mutex_unlock(&adev->srbm_mutex);
gfx_v9_0_unset_safe_mode(adev, 0); amdgpu_gfx_rlc_exit_safe_mode(adev, 0);
if (r) { if (r) {
dev_err(adev->dev, "fail to wait on hqd deactive\n"); dev_err(adev->dev, "fail to wait on hqd deactive\n");
return r; return r;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment