Add per-queue reset fw version checks for new SDMA 5.2.x variants: 5.2.1: >=41 5.2.6: >=8 5.2.7: >=1
Suggested-by: Alex Deucher <[email protected]> Signed-off-by: Jesse.Zhang <[email protected]> --- drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c index 78dda51cd9e0..53618d8a2439 100644 --- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c @@ -1355,6 +1355,12 @@ static int sdma_v5_2_sw_init(struct amdgpu_ip_block *ip_block) !adev->debug_disable_gpu_ring_reset) adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE; break; + case IP_VERSION(5, 2, 1): + if ((adev->sdma.instance[0].fw_version >= 41) && + !amdgpu_sriov_vf(adev) && + !adev->debug_disable_gpu_ring_reset) + adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE; + break; case IP_VERSION(5, 2, 2): if ((adev->sdma.instance[0].fw_version >= 41) && !amdgpu_sriov_vf(adev) && @@ -1379,6 +1385,18 @@ static int sdma_v5_2_sw_init(struct amdgpu_ip_block *ip_block) !adev->debug_disable_gpu_ring_reset) adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE; break; + case IP_VERSION(5, 2, 6): + if ((adev->sdma.instance[0].fw_version >= 8) && + !amdgpu_sriov_vf(adev) && + !adev->debug_disable_gpu_ring_reset) + adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE; + break; + case IP_VERSION(5, 2, 7): + if ((adev->sdma.instance[0].fw_version >= 1) && + !amdgpu_sriov_vf(adev) && + !adev->debug_disable_gpu_ring_reset) + adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE; + break; default: break; } -- 2.49.0
