]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
drm/amdgpu/powerplay: fix AVFS handling with custom powerplay table
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 7 Nov 2019 14:50:18 +0000 (09:50 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Oct 2020 11:14:26 +0000 (13:14 +0200)
[ Upstream commit 53dbc27ad5a93932ff1892a8e4ef266827d74a0f ]

When a custom powerplay table is provided, we need to update
the OD VDDC flag to avoid AVFS being enabled when it shouldn't be.

Bug: https://bugzilla.kernel.org/show_bug.cgi?id=205393
Reviewed-by: Evan Quan <evan.quan@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c

index ce459ea4ec3ad1858ba8a6bc9e7f209a9c509a64..da9e6923fa659b5525ae7473aa880ed6c9f8d1ff 100644 (file)
@@ -3591,6 +3591,13 @@ static int vega10_set_power_state_tasks(struct pp_hwmgr *hwmgr,
        PP_ASSERT_WITH_CODE(!result,
                        "Failed to upload PPtable!", return result);
 
+       /*
+        * If a custom pp table is loaded, set DPMTABLE_OD_UPDATE_VDDC flag.
+        * That effectively disables AVFS feature.
+        */
+       if(hwmgr->hardcode_pp_table != NULL)
+               data->need_update_dpm_table |= DPMTABLE_OD_UPDATE_VDDC;
+
        vega10_update_avfs(hwmgr);
 
        data->need_update_dpm_table &= DPMTABLE_OD_UPDATE_VDDC;