drm/amdgpu/mes11: optimize MES pipe FW version fetching
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 27 Mar 2025 21:33:49 +0000 (17:33 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 7 Apr 2025 18:30:10 +0000 (14:30 -0400)
Don't fetch it again if we already have it.  It seems the
registers don't reliably have the value at resume in some
cases.

Fixes: 028c3fb37e70 ("drm/amdgpu/mes11: initiate mes v11 support")
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4083
Reviewed-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
drivers/gpu/drm/amd/amdgpu/mes_v11_0.c

index e65916ada23b324364d8e4efc5d8a55d99bc4bd8..ef9538fbbf5371db9abecd74935ef366c4656e22 100644 (file)
@@ -894,6 +894,10 @@ static void mes_v11_0_get_fw_version(struct amdgpu_device *adev)
 {
        int pipe;
 
+       /* return early if we have already fetched these */
+       if (adev->mes.sched_version && adev->mes.kiq_version)
+               return;
+
        /* get MES scheduler/KIQ versions */
        mutex_lock(&adev->srbm_mutex);