]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amdgpu/sdma: bump firmware version checks for user queue support
authorJesse.Zhang <Jesse.Zhang@amd.com>
Wed, 27 Aug 2025 05:29:17 +0000 (13:29 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 29 Aug 2025 15:11:45 +0000 (11:11 -0400)
Using the previous firmware could lead to problems with
PROTECTED_FENCE_SIGNAL commands, specifically causing register
conflicts between MCU_DBG0 and MCU_DBG1.

The updated firmware versions ensure proper alignment
and unification of the SDMA_SUBOP_PROTECTED_FENCE_SIGNAL value with SDMA 7.x,
resolving these hardware coordination issues

Fixes: e8cca30d8b34 ("drm/amdgpu/sdma6: add ucode version checks for userq support")
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Jesse Zhang <Jesse.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit aab8b689aded255425db3d80c0030d1ba02fe2ef)
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c

index e6d8eddda2bfa6f50867e9bb49aeda5dfa3dcf64..db6e41967f126bc9019546179111f9c340c6f016 100644 (file)
@@ -1377,7 +1377,7 @@ static int sdma_v6_0_sw_init(struct amdgpu_ip_block *ip_block)
 
        switch (amdgpu_ip_version(adev, SDMA0_HWIP, 0)) {
        case IP_VERSION(6, 0, 0):
-               if ((adev->sdma.instance[0].fw_version >= 24) && !adev->sdma.disable_uq)
+               if ((adev->sdma.instance[0].fw_version >= 27) && !adev->sdma.disable_uq)
                        adev->userq_funcs[AMDGPU_HW_IP_DMA] = &userq_mes_funcs;
                break;
        case IP_VERSION(6, 0, 1):
@@ -1385,11 +1385,11 @@ static int sdma_v6_0_sw_init(struct amdgpu_ip_block *ip_block)
                        adev->userq_funcs[AMDGPU_HW_IP_DMA] = &userq_mes_funcs;
                break;
        case IP_VERSION(6, 0, 2):
-               if ((adev->sdma.instance[0].fw_version >= 21) && !adev->sdma.disable_uq)
+               if ((adev->sdma.instance[0].fw_version >= 23) && !adev->sdma.disable_uq)
                        adev->userq_funcs[AMDGPU_HW_IP_DMA] = &userq_mes_funcs;
                break;
        case IP_VERSION(6, 0, 3):
-               if ((adev->sdma.instance[0].fw_version >= 25) && !adev->sdma.disable_uq)
+               if ((adev->sdma.instance[0].fw_version >= 27) && !adev->sdma.disable_uq)
                        adev->userq_funcs[AMDGPU_HW_IP_DMA] = &userq_mes_funcs;
                break;
        case IP_VERSION(6, 1, 0):