Re: [v2 3/3] drm/i915/rpl-s: Enable guc submission by default

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
> Sent: Monday, November 22, 2021 3:28 PM
> To: Srivatsa, Anusha <anusha.srivatsa@xxxxxxxxx>; intel-
> gfx@xxxxxxxxxxxxxxxxxxxxx; Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxxxxxxxx>;
> Syrjala, Ville <ville.syrjala@xxxxxxxxx>; Vivi, Rodrigo
> <rodrigo.vivi@xxxxxxxxx>; Joonas Lahtinen
> <joonas.lahtinen@xxxxxxxxxxxxxxx>
> Cc: Srivatsa, Anusha <anusha.srivatsa@xxxxxxxxx>; Dhanavanthri, Swathi
> <swathi.dhanavanthri@xxxxxxxxx>
> Subject: Re: [v2 3/3] drm/i915/rpl-s: Enable guc submission by default
> 
> On Fri, 19 Nov 2021, Anusha Srivatsa <anusha.srivatsa@xxxxxxxxx> wrote:
> > Though, RPL-S is defined as subplatform of ADL-S, unlike ADL-S, it has
> > GuC submission by default.
> >
> > v2: Remove extra parenthesis (Jani)
> >
> > Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
> > Cc: Swathi Dhanavanthri <swathi.dhanavanthri@xxxxxxxxx>
> > Signed-off-by: Anusha Srivatsa <anusha.srivatsa@xxxxxxxxx>
> > ---
> >  drivers/gpu/drm/i915/gt/uc/intel_uc.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> > b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> > index 2fef3b0bbe95..6aa843a1c25f 100644
> > --- a/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> > +++ b/drivers/gpu/drm/i915/gt/uc/intel_uc.c
> > @@ -35,7 +35,7 @@ static void uc_expand_default_options(struct intel_uc
> *uc)
> >  	}
> >
> >  	/* Intermediate platforms are HuC authentication only */
> > -	if (IS_ALDERLAKE_S(i915)) {
> > +	if (IS_ALDERLAKE_S(i915) && !IS_RAPTORLAKE_S(i915)) {
> 
> I know I looked through the previous version, but I only realized this now.
> The above just feels wrong. Like, if it's ADL-S it obviously can't be RPL-S, so
> why the check.
> 
> We've had this type of thing before when IS_VALLEYVIEW() used to mean
> VLV || CHV, and you'd have these really confusing checks:
> 
> 	if (IS_VALLEYVIEW() && !IS_CHERRYVIEW())
> 
> We had to change that later on, and it was pretty annoying.
> 
> I'm really sorry I didn't spot this before, but I firmly believe adding a platform
> check macro IS_RAPTORLAKE_S() as a subplatform check is the wrong thing
> to do.
> 
> I think there are maybe three options:
> 
> 1) Add RPL-S as a full blown platform of its own. Convert
>    IS_ALDERLAKE_S() checks to IS_ALDERLAKE_S() || IS_RAPTORLAKE_S(). If
>    we think there's going to be more differences than just the guc
>    submission, this is the way to go.

No. there is nothing else different between the 2 platforms.

> 2) Add RPL-S as a subplatform of ADL-S like here, but then don't add a
>    platform macro IS_RAPTORLAKE_S(). Make the check something that
>    conveys the subplatform idea. See all the users of IS_SUBPLATFORM()
>    in i915_drv.h; for example IS_DG2_G10(). It's obvious it's a DG2 but
>    subtype G10. So maybe IS_ADLS_RPLS(), I don't know.

I am trying to understand what this will serve. The above check will change from 
(IS_ALDERLAKE_S(i915) && !IS_RAPTORLAKE_S(i915) to (IS_ALDERLAKE_S(i915) && !IS_ADLS_RPLS(i915). Agreed it will make the fact that RPLS is subplatform of ADLS a lot clear. Is that what you are suggesting?


Anusha
> 3) Add RPL-S PCI IDs as ADL-S with separate device info, but add a
>    feature flag for the guc submission default. Then RPL-S does not
>    exist as a platform or subplatform in code, rather as ADL-S, but the
>    difference is recorded via flags.
> 
> 
> BR,
> Jani.
> 
> 
> 
> 
> >  		i915->params.enable_guc = ENABLE_GUC_LOAD_HUC;
> >  		return;
> >  	}
> 
> --
> Jani Nikula, Intel Open Source Graphics Center




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux