]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/amd/pm: add missing od setting PP_OD_FEATURE_ZERO_FAN_BIT for smu v13
authorYang Wang <kevinyang.wang@amd.com>
Wed, 4 Mar 2026 02:10:11 +0000 (21:10 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 6 Mar 2026 22:10:13 +0000 (17:10 -0500)
add missing od setting PP_OD_FEATURE_ZERO_FAN_BIT for smu v13.0.0/13.0.7

Fixes: cfffd980bf21 ("drm/amd/pm: add zero RPM OD setting support for SMU13")
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/5018
Signed-off-by: Yang Wang <kevinyang.wang@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 576a10797b607ee9e4068218daf367b481564120)

drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c
drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c

index b32c053950c90dde4f42d2efc64299f1054419c5..a8d63d4d1f6e24829b05fbaa1b4a5fb338fbeb29 100644 (file)
@@ -2222,7 +2222,8 @@ static int smu_v13_0_0_restore_user_od_settings(struct smu_context *smu)
        user_od_table->OverDriveTable.FeatureCtrlMask = BIT(PP_OD_FEATURE_GFXCLK_BIT) |
                                                        BIT(PP_OD_FEATURE_UCLK_BIT) |
                                                        BIT(PP_OD_FEATURE_GFX_VF_CURVE_BIT) |
-                                                       BIT(PP_OD_FEATURE_FAN_CURVE_BIT);
+                                                       BIT(PP_OD_FEATURE_FAN_CURVE_BIT) |
+                                                       BIT(PP_OD_FEATURE_ZERO_FAN_BIT);
        res = smu_v13_0_0_upload_overdrive_table(smu, user_od_table);
        user_od_table->OverDriveTable.FeatureCtrlMask = 0;
        if (res == 0)
index f08cfa510a8a9e9c95ab314fb800ed1fff76e322..5500a0f12f0e9d7ae1233ef07e61bb7e24af542b 100644 (file)
@@ -2224,7 +2224,8 @@ static int smu_v13_0_7_restore_user_od_settings(struct smu_context *smu)
        user_od_table->OverDriveTable.FeatureCtrlMask = BIT(PP_OD_FEATURE_GFXCLK_BIT) |
                                                        BIT(PP_OD_FEATURE_UCLK_BIT) |
                                                        BIT(PP_OD_FEATURE_GFX_VF_CURVE_BIT) |
-                                                       BIT(PP_OD_FEATURE_FAN_CURVE_BIT);
+                                                       BIT(PP_OD_FEATURE_FAN_CURVE_BIT) |
+                                                       BIT(PP_OD_FEATURE_ZERO_FAN_BIT);
        res = smu_v13_0_7_upload_overdrive_table(smu, user_od_table);
        user_od_table->OverDriveTable.FeatureCtrlMask = 0;
        if (res == 0)