On Mon, 24 Oct 2022 15:54:53 -0700, Vinay Belgaumkar wrote: > > GuC will set the min/max frequencies to theoretical max on > ATS-M. This will break kernel ABI, so limit min/max frequency > to RP0(platform max) instead. > > Also modify the SLPC selftest to update the min frequency > when we have a server part so that we can iterate between > platform min and max. > > v2: Check softlimits instead of platform limits (Riana) > v3: More review comments (Ashutosh) > v4: No need to use saved_min_freq and other comments (Ashutosh) OK, much better now overall. > Bug: https://gitlab.freedesktop.org/drm/intel/-/issues/7030 > > +static void update_server_min_softlimit(struct intel_guc_slpc *slpc) > +{ > + /* For server parts, SLPC min will be at RPMax. > + * Use min softlimit to clamp it to RP0 instead. > + */ > + if (!slpc->min_freq_softlimit && > + is_slpc_min_freq_rpmax(slpc)) { > + slpc->min_is_rpmax = true; The only remaining issue is slpc->min_is_rpmax is now set but never used so it can possibly be removed, or retained for debuggability (I think it's a fair reason to retain it). Though I am not sure if we will hit a "variable set but never used" error from these clever compilers. > + slpc->min_freq_softlimit = slpc->rp0_freq; > + (slpc_to_gt(slpc))->defaults.min_freq = slpc->min_freq_softlimit; > + } > +} In any case, this is now: Reviewed-by: Ashutosh Dixit <ashutosh.dixit@xxxxxxxxx>