]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/amd/pm: early return if disabling DPMS for GFX IP v11.5.2
authorTim Huang <tim.huang@amd.com>
Fri, 12 Jul 2024 03:05:07 +0000 (11:05 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 16 Jul 2024 15:44:36 +0000 (11:44 -0400)
This was intended to add support for GFX IP v11.5.2, but it needs
to be applied to all GFX11 and subsequent APUs. Therefore the code
should be revised to accommodate this.

Signed-off-by: Tim Huang <tim.huang@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c

index fb8643d25d1bc60a735ee3536af61d5c0a3df63a..9d7454b3c3143dead4d3a207401aa8a6c1777e5b 100644 (file)
@@ -1924,20 +1924,12 @@ static int smu_disable_dpms(struct smu_context *smu)
        }
 
        /*
-        * For SMU 13.0.4/11 and 14.0.0, PMFW will handle the features disablement properly
+        * For GFX11 and subsequent APUs, PMFW will handle the features disablement properly
         * for gpu reset and S0i3 cases. Driver involvement is unnecessary.
         */
-       if (amdgpu_in_reset(adev) || adev->in_s0ix) {
-               switch (amdgpu_ip_version(adev, MP1_HWIP, 0)) {
-               case IP_VERSION(13, 0, 4):
-               case IP_VERSION(13, 0, 11):
-               case IP_VERSION(14, 0, 0):
-               case IP_VERSION(14, 0, 1):
-                       return 0;
-               default:
-                       break;
-               }
-       }
+       if (IP_VERSION_MAJ(amdgpu_ip_version(adev, GC_HWIP, 0)) >= 11 &&
+           smu->is_apu && (amdgpu_in_reset(adev) || adev->in_s0ix))
+               return 0;
 
        /*
         * For gpu reset, runpm and hibernation through BACO,