[PATCH] drm/amd/powerplay: Partially revert changes and fix smu7_notify_smc_display()
Tom St Denis
tom.stdenis at amd.com
Wed Oct 4 20:52:30 UTC 2017
Hi Andy,
I didn't check that but this part of the original patch:
@@ -689,7 +697,7 @@ static int smu7_setup_dpm_tables_v0(struct pp_hwmgr
*hwmgr)
allowed_vdd_sclk_table->entries[i].clk) {
data->dpm_table.sclk_table.dpm_levels[data->dpm_table.sclk_table.count].value
=
allowed_vdd_sclk_table->entries[i].clk;
-
data->dpm_table.sclk_table.dpm_levels[data->dpm_table.sclk_table.count].enabled
= 1; /*(i==0) ? 1 : 0; to do */
+
data->dpm_table.sclk_table.dpm_levels[data->dpm_table.sclk_table.count].enabled
= (i == 0) ? 1 : 0;
data->dpm_table.sclk_table.count++;
}
}
@@ -703,7 +711,7 @@ static int smu7_setup_dpm_tables_v0(struct pp_hwmgr
*hwmgr)
allowed_vdd_mclk_table->entries[i].clk) {
data->dpm_table.mclk_table.dpm_levels[data->dpm_table.mclk_table.count].value
=
allowed_vdd_mclk_table->entries[i].clk;
-
data->dpm_table.mclk_table.dpm_levels[data->dpm_table.mclk_table.count].enabled
= 1; /*(i==0) ? 1 : 0; */
+
data->dpm_table.mclk_table.dpm_levels[data->dpm_table.mclk_table.count].enabled
= (i == 0) ? 1 : 0;
data->dpm_table.mclk_table.count++;
}
Might be the culprit. It seems to disable all but the first clock
settings. It's beyond EOD for me today but I'll check first thing in
the morning.
Cheers,
Tom
On 04/10/17 04:21 PM, Andy Furniss wrote:
> For me testing on 4.15-wip with tonga it does "fix", but memclk is
> stuck, which would have avoided the lines had I forced it without this.
>
> Maybe you see different on a different kernel - is memclk stuck for you
> with this?
>
> Tom St Denis wrote:
>> This partially reverts 0b6b4cbf77c995a34a4ec3d705a636434dadc51a and fixes
>> the noise issues on Tonga.
>>
>> Signed-off-by: Tom St Denis <tom.stdenis at amd.com>
>> ---
>> drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 7 ++-----
>> 1 file changed, 2 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
>> b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
>> index 8dbe9148aad3..4826b2991b7e 100644
>> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
>> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c
>> @@ -3825,14 +3825,11 @@ static int
>> smu7_notify_link_speed_change_after_state_change(
>> static int smu7_notify_smc_display(struct pp_hwmgr *hwmgr)
>> {
>> struct smu7_hwmgr *data = (struct smu7_hwmgr *)(hwmgr->backend);
>> - int ret = 0;
>> - if (hwmgr->feature_mask & PP_VBI_TIME_SUPPORT_MASK) {
>> + if (hwmgr->feature_mask & PP_VBI_TIME_SUPPORT_MASK)
>> smum_send_msg_to_smc_with_parameter(hwmgr,
>> (PPSMC_Msg)PPSMC_MSG_SetVBITimeout, data->frame_time_x2);
>> - ret = (smum_send_msg_to_smc(hwmgr,
>> (PPSMC_Msg)PPSMC_HasDisplay) == 0) ? 0 : -EINVAL;
>> - }
>> - return ret;
>> + return (smum_send_msg_to_smc(hwmgr, (PPSMC_Msg)PPSMC_HasDisplay)
>> == 0) ? 0 : -EINVAL;
>> }
>> static int smu7_set_power_state_tasks(struct pp_hwmgr *hwmgr, const
>> void *input)
>>
>
More information about the amd-gfx
mailing list