MES remaps kernels queues as part of it's reset sequence.

Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c 
b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
index fabdbbd0abb7c..dd4f33d2ce45f 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
@@ -7009,11 +7009,12 @@ static int gfx_v11_0_reset_kcq(struct amdgpu_ring *ring,
                               struct amdgpu_fence *timedout_fence)
 {
        struct amdgpu_device *adev = ring->adev;
+       bool use_mmio = true;
        int r = 0;
 
        amdgpu_ring_reset_helper_begin(ring, timedout_fence);
 
-       r = amdgpu_mes_reset_legacy_queue(ring->adev, ring, vmid, true, 0);
+       r = amdgpu_mes_reset_legacy_queue(ring->adev, ring, vmid, use_mmio, 0);
        if (r) {
                dev_warn(adev->dev, "fail(%d) to reset kcq and try pipe 
reset\n", r);
                r = gfx_v11_0_reset_compute_pipe(ring);
@@ -7021,15 +7022,17 @@ static int gfx_v11_0_reset_kcq(struct amdgpu_ring *ring,
                        return r;
        }
 
-       r = gfx_v11_0_kcq_init_queue(ring, true);
-       if (r) {
-               dev_err(adev->dev, "fail to init kcq\n");
-               return r;
-       }
-       r = amdgpu_mes_map_legacy_queue(adev, ring, 0);
-       if (r) {
-               dev_err(adev->dev, "failed to remap kcq\n");
-               return r;
+       if (use_mmio) {
+               r = gfx_v11_0_kcq_init_queue(ring, true);
+               if (r) {
+                       dev_err(adev->dev, "fail to init kcq\n");
+                       return r;
+               }
+               r = amdgpu_mes_map_legacy_queue(adev, ring, 0);
+               if (r) {
+                       dev_err(adev->dev, "failed to remap kcq\n");
+                       return r;
+               }
        }
 
        return amdgpu_ring_reset_helper_end(ring, timedout_fence);
-- 
2.54.0

Reply via email to