AMD General Hi Lijo,
Good point. SoftMin variants exist for all domains in the SMU v14 message table (SetSoftMinFclk, SetSoftMinSocclkByFreq, SetSoftMinVcn0). The thermal issue I hit was on gfxclk specifically, but for consistency I'll send a v2 that switches all clock domains to SoftMin so PMFW retains throttling authority across the board. ISP clocks (ispiclk, ispxclk) will stay on HardMin as no SoftMin message variants exist for them. Thanks and Regards, Priya Hosur -----Original Message----- From: Lazar, Lijo <[email protected]> Sent: Tuesday, June 2, 2026 6:37 PM To: Hosur, Priya <[email protected]>; [email protected]; Deucher, Alexander <[email protected]>; Koenig, Christian <[email protected]> Cc: Vishwakarma, Pratik <[email protected]>; Gopalakrishnan, Veerabadhran (Veera) <[email protected]> Subject: Re: [PATCH 1/1] drm/amd/pm: smu_v14_0_0: use SoftMin for gfxclk in set_soft_freq_limited_range On 07-May-26 1:31 PM, Priya Hosur wrote: > In smu_v14_0_0_set_soft_freq_limited_range(), the gfxclk floor is > programmed via SetHardMinGfxClk together with SetSoftMaxGfxClk. Under > power_dpm_force_performance_level=high this pins HardMin to peak gfxclk. > > In PMFW arbitration HardMin has higher priority than SoftMax, so the > firmware thermal/PPT throttler cannot clamp gfxclk via SoftMax once > HardMin is set to peak. Replace SetHardMinGfxClk with SetSoftMinGfxclk > so the driver still requests peak performance but the firmware > throttler retains the ability to clamp gfxclk under thermal/PPT > pressure. SoftMax handling is unchanged and no other clock domains are > affected. > Though shutdown is controlled with gfx clock adjustment, is it expected to set hardmin for other clock domains for perf levels or should they all set softmin only? Thanks, Lijo > Signed-off-by: Priya Hosur <[email protected]> > --- > drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > 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 c76b1f07885e..2fe006de927a 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 > @@ -1231,7 +1231,8 @@ static int > smu_v14_0_0_set_soft_freq_limited_range(struct smu_context *smu, > switch (clk_type) { > case SMU_GFXCLK: > case SMU_SCLK: > - msg_set_min = SMU_MSG_SetHardMinGfxClk; > + /* SoftMin lets PMFW throttle gfxclk; HardMin would override > SoftMax. */ > + msg_set_min = SMU_MSG_SetSoftMinGfxclk; > msg_set_max = SMU_MSG_SetSoftMaxGfxClk; > break; > case SMU_FCLK:
