> -----Original Message-----
> From: amd-gfx [mailto:[email protected]] On Behalf
> Of Rex Zhu
> Sent: Tuesday, January 10, 2017 8:28 AM
> To: [email protected]
> Cc: Zhu, Rex
> Subject: [PATCH] drm/amd/powerplay: refine vce dpm update code on Cz.
> 
> Program HardMin based on the vce_arbiter.ecclk
> if ecclk is 0, disable ECLK DPM 0. Otherwise VCE
> could hang if switching SCLK from DPM 0 to 6/7
> 
> Change-Id: Ied5b1630a0322678601cf5744bd1ba6b3b42ca23
> Signed-off-by: Rex Zhu <[email protected]>

Acked-by: Alex Deucher <[email protected]>

> ---
>  drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 24
> ++++++++++++++++--------
>  1 file changed, 16 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
> b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
> index 0668b0b..a4cde3d 100644
> --- a/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
> +++ b/drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c
> @@ -1407,14 +1407,22 @@ int  cz_dpm_update_vce_dpm(struct pp_hwmgr
> *hwmgr)
>                                            cz_hwmgr-
> >vce_dpm.hard_min_clk,
> 
>       PPSMC_MSG_SetEclkHardMin));
>       } else {
> -             /*EPR# 419220 -HW limitation to to */
> -             cz_hwmgr->vce_dpm.hard_min_clk = hwmgr-
> >vce_arbiter.ecclk;
> -             smum_send_msg_to_smc_with_parameter(hwmgr-
> >smumgr,
> -                                         PPSMC_MSG_SetEclkHardMin,
> -                                         cz_get_eclk_level(hwmgr,
> -                                  cz_hwmgr->vce_dpm.hard_min_clk,
> -                                       PPSMC_MSG_SetEclkHardMin));
> -
> +             /*Program HardMin based on the vce_arbiter.ecclk */
> +             if (hwmgr->vce_arbiter.ecclk == 0) {
> +                     smum_send_msg_to_smc_with_parameter(hwmgr-
> >smumgr,
> +                                         PPSMC_MSG_SetEclkHardMin, 0);
> +             /* disable ECLK DPM 0. Otherwise VCE could hang if
> +              * switching SCLK from DPM 0 to 6/7 */
> +                     smum_send_msg_to_smc_with_parameter(hwmgr-
> >smumgr,
> +                                     PPSMC_MSG_SetEclkSoftMin, 1);
> +             } else {
> +                     cz_hwmgr->vce_dpm.hard_min_clk = hwmgr-
> >vce_arbiter.ecclk;
> +                     smum_send_msg_to_smc_with_parameter(hwmgr-
> >smumgr,
> +
>       PPSMC_MSG_SetEclkHardMin,
> +                                             cz_get_eclk_level(hwmgr,
> +                                             cz_hwmgr-
> >vce_dpm.hard_min_clk,
> +
>       PPSMC_MSG_SetEclkHardMin));
> +             }
>       }
>       return 0;
>  }
> --
> 1.9.1
> 
> _______________________________________________
> amd-gfx mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to