> -----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 > > --------------------
