[PATCH v2 07/12] drm/i915/cx0: Remove bus reset after every c10 transaction
Taylor, Clinton A
clinton.a.taylor at intel.com
Thu Oct 24 22:15:11 UTC 2024
On Thu, 2024-10-24 at 12:18 -0700, Matt Roper wrote:
> On Thu, Oct 24, 2024 at 06:08:46AM +0000, Kahola, Mika wrote:
> > > -----Original Message-----
> > > From: Intel-gfx <intel-gfx-bounces at lists.freedesktop.org> On Behalf Of Clint
> > > Taylor
> > > Sent: Thursday, 24 October 2024 0.47
> > > To: intel-gfx at lists.freedesktop.org; intel-xe at lists.freedesktop.org
> > > Subject: [PATCH v2 07/12] drm/i915/cx0: Remove bus reset after every c10
> > > transaction
> > >
> > > C10 phy timeouts occur on xe3lpd if the c10 bus is reset every transaction.
> > > Starting with xe3lpd this is bus reset not necessary
> > >
> >
> > This C10/C20 bus reset was originally placed as a workaround to prevent bus timeouts.
> > These timeouts were fixed elsewhere and therefore these are unnecessary lines.
>
> I'm a bit confused by the patch / explanation here. Before this patch
> we did the reset on all platforms, unconditionally. The code change
> below is removing the reset from the existing platforms (MTL/ARL and
> Xe2) but keeping it only on the new Xe3 platforms.
>
> If the timeout mystery was solved and these resets are no longer needed,
> shouldn't we be removing the line completely rather than making it
> conditional to the new platforms? Or do we have now have new,
> unexplained failures specifically on Xe3 that requires that we bring
> back this hack at the same time we're removing it from the older
> platforms?
>
I reversed the conditional when splitting the c10 patches. Will correct and send a new
series.
-Clint
>
> Matt
>
> > Reviewed-by: Mika Kahola <mika.kahola at intel.com>
> >
> > > Signed-off-by: Clint Taylor <clinton.a.taylor at intel.com>
> > > ---
> > > drivers/gpu/drm/i915/display/intel_cx0_phy.c | 6 ++++--
> > > 1 file changed, 4 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > > b/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > > index c1357bdb8a3b..a8966a7a9927 100644
> > > --- a/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > > +++ b/drivers/gpu/drm/i915/display/intel_cx0_phy.c
> > > @@ -224,7 +224,8 @@ static int __intel_cx0_read_once(struct intel_encoder
> > > *encoder,
> > > * down and let the message bus to end up
> > > * in a known state
> > > */
> > > - intel_cx0_bus_reset(encoder, lane);
> > > + if ((DISPLAY_VER(i915) >= 30))
> > > + intel_cx0_bus_reset(encoder, lane);
> > >
> > > return REG_FIELD_GET(XELPDP_PORT_P2M_DATA_MASK, val); } @@ -
> > > 313,7 +314,8 @@ static int __intel_cx0_write_once(struct intel_encoder
> > > *encoder,
> > > * down and let the message bus to end up
> > > * in a known state
> > > */
> > > - intel_cx0_bus_reset(encoder, lane);
> > > + if ((DISPLAY_VER(i915) >= 30))
> > > + intel_cx0_bus_reset(encoder, lane);
> > >
> > > return 0;
> > > }
> > > --
> > > 2.25.1
More information about the Intel-gfx
mailing list