> -----Original Message-----
> From: Deak, Imre <[email protected]>
> Sent: Monday, February 23, 2026 10:00 PM
> To: Murthy, Arun R <[email protected]>
> Cc: [email protected]; [email protected]
> Subject: Re: [PATCH 1/5] drm/i915/dp_tunnel: Don't update tunnel state during
> system resume
> 
> On Mon, Feb 23, 2026 at 05:54:38PM +0200, Murthy, Arun R wrote:
> >
> > > -----Original Message-----
> > > From: Intel-gfx <[email protected]> On Behalf
> > > Of Imre Deak
> > > Sent: Thursday, February 19, 2026 11:58 PM
> > > To: [email protected]; [email protected]
> > > Subject: [PATCH 1/5] drm/i915/dp_tunnel: Don't update tunnel state
> > > during system resume
> > >
> > > During system resume, restoring the pre-suspend display state must not 
> > > fail.
> > > This requires preserving the sink capabilities from before suspend,
> > > including the available link bandwidth.
> > >
> > I don't see the sink capabilities being stored in this patch.
> 
> The sink capabilities are stored in intel_dp and intel_connector, including 
> the
> maximum link rate and lane count, which determine the link bandwidth. This
> patch preserves those capabilities across suspend/resume by preventing the
> tunnel state from being updated during resume.
> 
I understand, but what I meant was this patch doesn't handle anything on the 
suspend part but only controls the updates on resume.
So explaining what happens on resume is un-necessary.

Thanks and Regards,
Arun R Murthy
--------------------
> >
> > > If these capabilities are not preserved, the restore modeset may
> > > fail, either due to a missing sink capability or insufficient link 
> > > bandwidth for
> the restored mode.
> > Don't see this in the patch.
> >
> > >
> > > When the sink is connected through a DP tunnel, prevent such
> > > capability changes by skipping tunnel state updates during resume.
> > > This also avoids updating the sink state via the tunnel while it is being
> resumed.
> > >
> > > Signed-off-by: Imre Deak <[email protected]>
> > > ---
> > >  drivers/gpu/drm/i915/display/intel_dp_tunnel.c | 11 ++++++-----
> > >  1 file changed, 6 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_dp_tunnel.c
> > > b/drivers/gpu/drm/i915/display/intel_dp_tunnel.c
> > > index faa2b7a46699d..eb1eed1c8c7bb 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_dp_tunnel.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_dp_tunnel.c
> > > @@ -150,11 +150,9 @@ static int
> > > allocate_initial_tunnel_bw_for_pipes(struct
> > > intel_dp *intel_dp, u8 pi
> > >                       drm_dp_tunnel_name(intel_dp->tunnel),
> > >                       encoder->base.base.id, encoder->base.name,
> > >                       ERR_PTR(err));
> > > -
> > > -         return err;
> > >   }
> > >
> > > - return update_tunnel_state(intel_dp);
> > > + return err;
> > >  }
> > >
> > >  static int allocate_initial_tunnel_bw(struct intel_dp *intel_dp, @@
> > > -200,10
> > > +198,13 @@ static int detect_new_tunnel(struct intel_dp *intel_dp,
> > > +struct
> > > drm_modeset_acqui
> > >   }
> > >
> > >   ret = allocate_initial_tunnel_bw(intel_dp, ctx);
> > > - if (ret < 0)
> > > + if (ret < 0) {
> > >           intel_dp_tunnel_destroy(intel_dp);
> > >
> > > - return ret;
> > > +         return ret;
> > > + }
> > > +
> > > + return update_tunnel_state(intel_dp);
> > >  }
> > >
> > >  /**
> > > --
> > > 2.49.1
> >
> > Thanks and Regards,
> > Arun R Murthy
> > --------------------

Reply via email to