Commit 74c577b0 authored by Alex Deucher's avatar Alex Deucher

drm/amd/powerplay/fiji: enable pcie and mclk forcing for low

When forcing the lowest state also force mclk and pcie.
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 9fe1837d
...@@ -3576,9 +3576,8 @@ static int fiji_force_dpm_lowest(struct pp_hwmgr *hwmgr) ...@@ -3576,9 +3576,8 @@ static int fiji_force_dpm_lowest(struct pp_hwmgr *hwmgr)
{ {
struct fiji_hwmgr *data = struct fiji_hwmgr *data =
(struct fiji_hwmgr *)(hwmgr->backend); (struct fiji_hwmgr *)(hwmgr->backend);
uint32_t level = 0; uint32_t level;
/* Only force sclk for now */
if (!data->sclk_dpm_key_disabled) if (!data->sclk_dpm_key_disabled)
if (data->dpm_level_enable_mask.sclk_dpm_enable_mask) { if (data->dpm_level_enable_mask.sclk_dpm_enable_mask) {
level = fiji_get_lowest_enabled_level(hwmgr, level = fiji_get_lowest_enabled_level(hwmgr,
...@@ -3588,6 +3587,27 @@ static int fiji_force_dpm_lowest(struct pp_hwmgr *hwmgr) ...@@ -3588,6 +3587,27 @@ static int fiji_force_dpm_lowest(struct pp_hwmgr *hwmgr)
(1 << level)); (1 << level));
} }
if (!data->mclk_dpm_key_disabled) {
if (data->dpm_level_enable_mask.mclk_dpm_enable_mask) {
level = fiji_get_lowest_enabled_level(hwmgr,
data->dpm_level_enable_mask.mclk_dpm_enable_mask);
smum_send_msg_to_smc_with_parameter(hwmgr->smumgr,
PPSMC_MSG_MCLKDPM_SetEnabledMask,
(1 << level));
}
}
if (!data->pcie_dpm_key_disabled) {
if (data->dpm_level_enable_mask.pcie_dpm_enable_mask) {
level = fiji_get_lowest_enabled_level(hwmgr,
data->dpm_level_enable_mask.pcie_dpm_enable_mask);
smum_send_msg_to_smc_with_parameter(hwmgr->smumgr,
PPSMC_MSG_PCIeDPM_ForceLevel,
(1 << level));
}
}
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment