[AMD Official Use Only - General] Reviewed-by: Yifan Zhang <yifan1.zhang@xxxxxxx> -----Original Message----- From: Alex Deucher <alexdeucher@xxxxxxxxx> Sent: Wednesday, February 28, 2024 10:25 PM To: Ma, Li <Li.Ma@xxxxxxx> Cc: amd-gfx@xxxxxxxxxxxxxxxxxxxxx; Deucher, Alexander <Alexander.Deucher@xxxxxxx>; Zhang, Yifan <Yifan1.Zhang@xxxxxxx>; Yu, Lang <Lang.Yu@xxxxxxx> Subject: Re: [PATCH] drm/amd/swsmu: modify the gfx activity scaling On Wed, Feb 28, 2024 at 6:39 AM Li Ma <li.ma@xxxxxxx> wrote: > > Add an if condition for gfx activity because the scaling has been changed after smu fw version 5d4600. > And remove a warning log. > > Signed-off-by: Li Ma <li.ma@xxxxxxx> Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c | 2 -- > drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c | 5 ++++- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c > index 2aa7e9945a0b..7ac9bc0df8fd 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0.c > @@ -229,8 +229,6 @@ int smu_v14_0_check_fw_version(struct smu_context *smu) > smu->smc_driver_if_version = SMU14_DRIVER_IF_VERSION_SMU_V14_0_2; > break; > case IP_VERSION(14, 0, 0): > - if ((smu->smc_fw_version < 0x5d3a00)) > - dev_warn(smu->adev->dev, "The PMFW version(%x) is behind in this BIOS!\n", smu->smc_fw_version); > smu->smc_driver_if_version = SMU14_DRIVER_IF_VERSION_SMU_V14_0_0; > break; > default: > diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c > index 47fdbae4adfc..9310c4758e38 100644 > --- a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c > +++ b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c > @@ -261,7 +261,10 @@ static int smu_v14_0_0_get_smu_metrics_data(struct smu_context *smu, > *value = metrics->MpipuclkFrequency; > break; > case METRICS_AVERAGE_GFXACTIVITY: > - *value = metrics->GfxActivity / 100; > + if ((smu->smc_fw_version > 0x5d4600)) > + *value = metrics->GfxActivity; > + else > + *value = metrics->GfxActivity / 100; > break; > case METRICS_AVERAGE_VCNACTIVITY: > *value = metrics->VcnActivity / 100; > -- > 2.25.1 >