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.di...@intel.com>

Reply via email to