Correct Polaris10 sclk/mclk dpm enablement.

Change-Id: I629ed96cbf88230179f26ff77f9cd95e485b9539
Signed-off-by: Evan Quan <evan.q...@amd.com>
Acked-by: Alex Deucher <alexander.deuc...@amd.com>
---
 drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c      | 9 +++++++--
 .../gpu/drm/amd/pm/powerplay/smumgr/polaris10_smumgr.c   | 3 ++-
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c 
b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
index 7ec83a826816..1f13b88409c7 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/hwmgr/smu7_hwmgr.c
@@ -1148,7 +1148,8 @@ static int smu7_enable_sclk_mclk_dpm(struct pp_hwmgr 
*hwmgr)
 
        /* enable SCLK dpm */
        if (!data->sclk_dpm_key_disabled) {
-               if (hwmgr->chip_id == CHIP_VEGAM)
+               if (hwmgr->chip_id >= CHIP_POLARIS10 &&
+                   hwmgr->chip_id <= CHIP_VEGAM)
                        smu7_disable_sclk_vce_handshake(hwmgr);
 
                PP_ASSERT_WITH_CODE(
@@ -1169,7 +1170,11 @@ static int smu7_enable_sclk_mclk_dpm(struct pp_hwmgr 
*hwmgr)
                                "Failed to enable MCLK DPM during DPM Start 
Function!",
                                return -EINVAL);
 
-               if (hwmgr->chip_family != CHIP_VEGAM)
+               if ((hwmgr->chip_family == AMDGPU_FAMILY_CI) ||
+                   (hwmgr->chip_id == CHIP_POLARIS10) ||
+                   (hwmgr->chip_id == CHIP_POLARIS11) ||
+                   (hwmgr->chip_id == CHIP_POLARIS12) ||
+                   (hwmgr->chip_id == CHIP_TONGA))
                        PHM_WRITE_FIELD(hwmgr->device, MC_SEQ_CNTL_3, CAC_EN, 
0x1);
 
 
diff --git a/drivers/gpu/drm/amd/pm/powerplay/smumgr/polaris10_smumgr.c 
b/drivers/gpu/drm/amd/pm/powerplay/smumgr/polaris10_smumgr.c
index 8176b855b9df..41df6e7813ea 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/smumgr/polaris10_smumgr.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/smumgr/polaris10_smumgr.c
@@ -2470,7 +2470,8 @@ static uint32_t polaris10_get_mac_definition(uint32_t 
value)
        case SMU_MAX_LEVELS_MVDD:
                return SMU74_MAX_LEVELS_MVDD;
        case SMU_UVD_MCLK_HANDSHAKE_DISABLE:
-               return SMU7_UVD_MCLK_HANDSHAKE_DISABLE;
+               return SMU7_UVD_MCLK_HANDSHAKE_DISABLE |
+                               SMU7_VCE_MCLK_HANDSHAKE_DISABLE;
        }
 
        pr_warn("can't get the mac of %x\n", value);
-- 
2.28.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to