diff options
author | Rex Zhu <Rex.Zhu@amd.com> | 2018-10-22 01:27:37 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-11-01 10:52:24 -0400 |
commit | 17c7c7e714624dd8f00fb6b85a214745fc2bae6b (patch) | |
tree | 4f545b6d8b079717aaaeb6cec3a871605d3b953c | |
parent | 5be3bb6e92549f246f472d74bfaa54f56acbf998 (diff) |
drm/amd/pp: Fix pp_sclk/mclk_od not work on smu7
not update the dpm table with user's setting
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Rex Zhu <Rex.Zhu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r-- | drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c index 6c99cbf51c08..ed35ec0341e6 100644 --- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | |||
@@ -3588,9 +3588,10 @@ static int smu7_find_dpm_states_clocks_in_dpm_table(struct pp_hwmgr *hwmgr, cons | |||
3588 | break; | 3588 | break; |
3589 | } | 3589 | } |
3590 | 3590 | ||
3591 | if (i >= sclk_table->count) | 3591 | if (i >= sclk_table->count) { |
3592 | data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_SCLK; | 3592 | data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_SCLK; |
3593 | else { | 3593 | sclk_table->dpm_levels[i-1].value = sclk; |
3594 | } else { | ||
3594 | /* TODO: Check SCLK in DAL's minimum clocks | 3595 | /* TODO: Check SCLK in DAL's minimum clocks |
3595 | * in case DeepSleep divider update is required. | 3596 | * in case DeepSleep divider update is required. |
3596 | */ | 3597 | */ |
@@ -3605,9 +3606,10 @@ static int smu7_find_dpm_states_clocks_in_dpm_table(struct pp_hwmgr *hwmgr, cons | |||
3605 | break; | 3606 | break; |
3606 | } | 3607 | } |
3607 | 3608 | ||
3608 | if (i >= mclk_table->count) | 3609 | if (i >= mclk_table->count) { |
3609 | data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_MCLK; | 3610 | data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_MCLK; |
3610 | 3611 | mclk_table->dpm_levels[i-1].value = mclk; | |
3612 | } | ||
3611 | 3613 | ||
3612 | if (data->display_timing.num_existing_displays != hwmgr->display_config->num_display) | 3614 | if (data->display_timing.num_existing_displays != hwmgr->display_config->num_display) |
3613 | data->need_update_smu7_dpm_table |= DPMTABLE_UPDATE_MCLK; | 3615 | data->need_update_smu7_dpm_table |= DPMTABLE_UPDATE_MCLK; |