[PATCH] drm/amd/powerplay: drop highest UCLK setting after display configuration change

Alex Deucher alexdeucher at gmail.com
Thu Oct 18 13:48:19 UTC 2018


On Thu, Oct 18, 2018 at 6:41 AM Evan Quan <evan.quan at amd.com> wrote:
>
> The UCLK is forced to highest at the start of display configuration
> change. Downgrade the UCLK from highest after display configuration change.
> Otherwise, we may see the UCLK stuck in the highest in some cases.
>
> Change-Id: I7ee6dd3cf6b4df30667e48576612b6af1a8e9184
> Signed-off-by: Evan Quan <evan.quan at amd.com>

Acked-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
> index b4dbbb7c334c..6e0b2b8df455 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
> @@ -2046,6 +2046,8 @@ static int vega20_notify_smc_display_config_after_ps_adjustment(
>  {
>         struct vega20_hwmgr *data =
>                         (struct vega20_hwmgr *)(hwmgr->backend);
> +       struct vega20_single_dpm_table *dpm_table =
> +                       &data->dpm_table.mem_table;
>         struct PP_Clocks min_clocks = {0};
>         struct pp_display_clock_request clock_req;
>         int ret = 0;
> @@ -2076,6 +2078,15 @@ static int vega20_notify_smc_display_config_after_ps_adjustment(
>                 }
>         }
>
> +       if (data->smu_features[GNLD_DPM_UCLK].enabled) {
> +               dpm_table->dpm_state.hard_min_level = min_clocks.memoryClock / 100;
> +               PP_ASSERT_WITH_CODE(!(ret = smum_send_msg_to_smc_with_parameter(hwmgr,
> +                               PPSMC_MSG_SetHardMinByFreq,
> +                               (PPCLK_UCLK << 16 ) | dpm_table->dpm_state.hard_min_level)),
> +                               "[SetHardMinFreq] Set hard min uclk failed!",
> +                               return ret);
> +       }
> +
>         return 0;
>  }
>
> --
> 2.19.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list