Re: [PATCH v2 4/4] drm/i915/alpm: Alpm aux wake configuration for lnl

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

 



On Tue, 2024-01-30 at 08:28 +0000, Murthy, Arun R wrote:
> 
> 
> > -----Original Message-----
> > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf
> > Of Jouni
> > Högander
> > Sent: Friday, January 5, 2024 7:45 PM
> > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> > Subject: [PATCH v2 4/4] drm/i915/alpm: Alpm aux wake configuration
> > for lnl
> > 
> > Lunarlake has some configurations in ALPM_CTL register for legacy
> > ALPM as
> > well. Write these.
> > 
> > Bspec: 71477
> > 
> > Signed-off-by: Jouni Högander <jouni.hogander@xxxxxxxxx>
> > ---
> >  drivers/gpu/drm/i915/display/intel_psr.c | 15 +++++++++++++++
> >  1 file changed, 15 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/i915/display/intel_psr.c
> > b/drivers/gpu/drm/i915/display/intel_psr.c
> > index 7fbd18f21c3b..09d496d7dcee 100644
> > --- a/drivers/gpu/drm/i915/display/intel_psr.c
> > +++ b/drivers/gpu/drm/i915/display/intel_psr.c
> > @@ -1527,6 +1527,18 @@ static void wm_optimization_wa(struct
> > intel_dp
> > *intel_dp,
> >                              wa_16013835468_bit_get(intel_dp), 0); 
> > }
> > 
> > +static void lnl_alpm_configure(struct intel_dp *intel_dp) {
> > +       struct drm_i915_private *dev_priv = dp_to_i915(intel_dp);
> > +       enum transcoder cpu_transcoder = intel_dp->psr.transcoder;
> > +       struct alpm_parameters *alpm_params = &intel_dp-
> > >psr.alpm_params;
> > +
> > +       intel_de_write(dev_priv, ALPM_CTL(cpu_transcoder),
> 
> Do we need intel_de_rmw()

I'm not expecting this being written anywhere else. If LOBF is used
then PSR/PR has to be disabled.

BR,

Jouni Högander

> 
> > +                      ALPM_CTL_EXTENDED_FAST_WAKE_ENABLE |
> > +                      ALPM_CTL_ALPM_ENTRY_CHECK(alpm_params-
> > > check_entry_lines) |
> > +
> > +ALPM_CTL_EXTENDED_FAST_WAKE_TIME(alpm_params->fast_wake_lines));
> > +}
> > +
> >  static void intel_psr_enable_source(struct intel_dp *intel_dp,
> >                                     const struct intel_crtc_state
> > *crtc_state)  {
> > @@ -1582,6 +1594,9 @@ static void intel_psr_enable_source(struct
> > intel_dp
> > *intel_dp,
> >                              intel_dp->psr.psr2_sel_fetch_enabled ?
> >                              IGNORE_PSR2_HW_TRACKING : 0);
> > 
> > +       if (DISPLAY_VER(dev_priv) >= 20)
> > +               lnl_alpm_configure(intel_dp);
> > +
> >         /*
> >          * Wa_16013835468
> >          * Wa_14015648006
> > --
> > 2.34.1
> 
> Thanks and Regards,
> Arun R Murthy
> --------------------
> 





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

  Powered by Linux