]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amdgpu: disable gfxoff with the compute workload on gfx12
authorKenneth Feng <kenneth.feng@amd.com>
Thu, 9 Jan 2025 07:58:23 +0000 (15:58 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 14 Jan 2025 16:54:07 +0000 (11:54 -0500)
Disable gfxoff with the compute workload on gfx12. This is a
workaround for the opencl test failure.

Signed-off-by: Kenneth Feng <kenneth.feng@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 2affe2bbc997b3920045c2c434e480c81a5f9707)
Cc: stable@vger.kernel.org # 6.12.x
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c

index 3afcd1e8aa543534808eacd78ff9d63a99bdf163..c4e733c2e75e01d5a4e6fe286fb08eb90d7d4645 100644 (file)
@@ -715,8 +715,9 @@ err:
 void amdgpu_amdkfd_set_compute_idle(struct amdgpu_device *adev, bool idle)
 {
        enum amd_powergating_state state = idle ? AMD_PG_STATE_GATE : AMD_PG_STATE_UNGATE;
-       if (IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 11 &&
-           ((adev->mes.kiq_version & AMDGPU_MES_VERSION_MASK) <= 64)) {
+       if ((IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 11 &&
+           ((adev->mes.kiq_version & AMDGPU_MES_VERSION_MASK) <= 64)) ||
+               (IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 12)) {
                pr_debug("GFXOFF is %s\n", idle ? "enabled" : "disabled");
                amdgpu_gfx_off_ctrl(adev, idle);
        } else if ((IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) == 9) &&