Reviewed-by: Arun R Murthy <[email protected]>

Thanks and Regards,
Arun R Murthy
--------------------

> -----Original Message-----
> From: Deak, Imre <[email protected]>
> Sent: Tuesday, February 24, 2026 1:20 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 Tue, Feb 24, 2026 at 04:33:58AM +0200, Murthy, Arun R wrote:
> >
> > > -----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.
> 
> What happens during resume - restoring the state of display outputs to the 
> pre-
> suspend state - is what requires the change in this patch.
> 
> The commit message must describe the reason for the change, so this commit
> must describe what happens during resume.
> 
> > 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