[PATCH] drm/amd/pm: add power save mode workload for smu 13.0.10

Gao, Likun Likun.Gao at amd.com
Thu Dec 14 03:23:03 UTC 2023


[AMD Official Use Only - General]

This patch is
Reviewed-by: Likun Gao <Likun.Gao at amd.com>.

Regards,
Likun

-----Original Message-----
From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Kenneth Feng
Sent: Wednesday, December 13, 2023 3:02 PM
To: amd-gfx at lists.freedesktop.org
Cc: Feng, Kenneth <Kenneth.Feng at amd.com>
Subject: [PATCH] drm/amd/pm: add power save mode workload for smu 13.0.10

add power save mode workload for smu 13.0.10, so that in compute mode, pmfw will add 35mv voltage margin since some applications requres higher voltages.

Signed-off-by: Kenneth Feng <kenneth.feng at amd.com>
---
 .../drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c  | 23 +++++++++++--------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
index a24aa886c636..231122622a9c 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
@@ -2545,16 +2545,19 @@ static int smu_v13_0_0_set_power_profile_mode(struct smu_context *smu,

        workload_mask = 1 << workload_type;

-       /* Add optimizations for SMU13.0.0.  Reuse the power saving profile */
-       if (smu->power_profile_mode == PP_SMC_POWER_PROFILE_COMPUTE &&
-           (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(13, 0, 0)) &&
-           ((smu->adev->pm.fw_version == 0x004e6601) ||
-            (smu->adev->pm.fw_version >= 0x004e7400))) {
-               workload_type = smu_cmn_to_asic_specific_index(smu,
-                                                              CMN2ASIC_MAPPING_WORKLOAD,
-                                                              PP_SMC_POWER_PROFILE_POWERSAVING);
-               if (workload_type >= 0)
-                       workload_mask |= 1 << workload_type;
+       /* Add optimizations for SMU13.0.0/10.  Reuse the power saving profile */
+       if (smu->power_profile_mode == PP_SMC_POWER_PROFILE_COMPUTE) {
+               if ((amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(13, 0, 0) &&
+                       ((smu->adev->pm.fw_version == 0x004e6601) ||
+                       (smu->adev->pm.fw_version >= 0x004e7300))) ||
+                       (amdgpu_ip_version(smu->adev, MP1_HWIP, 0) == IP_VERSION(13, 0, 10) &&
+                        smu->adev->pm.fw_version >= 0x00504500)) {
+                       workload_type = smu_cmn_to_asic_specific_index(smu,
+                                                                                                                  CMN2ASIC_MAPPING_WORKLOAD,
+                                                                                                                  PP_SMC_POWER_PROFILE_POWERSAVING);
+                       if (workload_type >= 0)
+                               workload_mask |= 1 << workload_type;
+               }
        }

        return smu_cmn_send_smc_msg_with_param(smu,
--
2.34.1



More information about the amd-gfx mailing list