On Thu, Dec 6, 2018 at 1:12 AM Kenneth Feng <kenneth.feng@xxxxxxx> wrote: > > Instead of EVV cks-off voltages, avfs cks-off voltages can avoid > the overshoot voltages when switching sclk. > > Signed-off-by: Kenneth Feng <kenneth.feng@xxxxxxx> Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h | 2 ++ > drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c | 9 +++++++++ > 2 files changed, 11 insertions(+) > > diff --git a/drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h b/drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h > index 62f36ba..c1a99df 100644 > --- a/drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h > +++ b/drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h > @@ -386,6 +386,8 @@ typedef uint16_t PPSMC_Result; > #define PPSMC_MSG_AgmResetPsm ((uint16_t) 0x403) > #define PPSMC_MSG_ReadVftCell ((uint16_t) 0x404) > > +#define PPSMC_MSG_ApplyAvfsCksOffVoltage ((uint16_t) 0x415) > + > #define PPSMC_MSG_GFX_CU_PG_ENABLE ((uint16_t) 0x280) > #define PPSMC_MSG_GFX_CU_PG_DISABLE ((uint16_t) 0x281) > #define PPSMC_MSG_GetCurrPkgPwr ((uint16_t) 0x282) > diff --git a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c > index 94898b2..6012dbf 100644 > --- a/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c > +++ b/drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c > @@ -1988,6 +1988,7 @@ static int polaris10_program_mem_timing_parameters(struct pp_hwmgr *hwmgr) > int polaris10_thermal_avfs_enable(struct pp_hwmgr *hwmgr) > { > struct smu7_hwmgr *data = (struct smu7_hwmgr *)(hwmgr->backend); > + struct amdgpu_device *adev = (struct amdgpu_device *)hwmgr->adev; > > if (!hwmgr->avfs_supported) > return 0; > @@ -1997,6 +1998,14 @@ int polaris10_thermal_avfs_enable(struct pp_hwmgr *hwmgr) > > smum_send_msg_to_smc(hwmgr, PPSMC_MSG_EnableAvfs); > > + /* P30 case for applying Avfs cks-off voltages to avoid the overshoot > + * when switching to the highest sclk frequency > + */ > + if ((adev->pdev->device == 0x67df) && > + ((adev->pdev->revision == 0xe1) || > + (adev->pdev->revision == 0xf7))) > + smum_send_msg_to_smc(hwmgr, PPSMC_MSG_ApplyAvfsCksOffVoltage); > + > return 0; > } > > -- > 2.7.4 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx