> -----Original Message----- > From: Kandpal, Suraj <suraj.kandpal@xxxxxxxxx> > Sent: Friday, July 14, 2023 11:44 AM > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Cc: Kandpal, Suraj <suraj.kandpal@xxxxxxxxx>; Shankar, Uma > <uma.shankar@xxxxxxxxx>; Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> > Subject: [PATCH] drm/i915/hotplug: Reduce SHPD_FILTER to 250us > > Reduce SHPD_FILTER to 250us for ADL and above. This solution was derived when > the below patch was floated. > [1]https://patchwork.freedesktop.org/patch/532187 > and after some internal discussion Ville's suggestion made sense. You can give the exact reasoning why this change is required. Be specific on the issue and the fix. Regards, Uma Shankar > Bspec: 68970 > > Cc: Uma Shankar <uma.shankar@xxxxxxxxx> > Cc: Ville Syrjala <ville.syrjala@xxxxxxxxxxxxxxx> > Signed-off-by: Suraj Kandpal <suraj.kandpal@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_hotplug_irq.c | 4 +++- > drivers/gpu/drm/i915/i915_reg.h | 1 + > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_hotplug_irq.c > b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c > index f95fa793fabb..95a7ea94f417 100644 > --- a/drivers/gpu/drm/i915/display/intel_hotplug_irq.c > +++ b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c > @@ -842,6 +842,8 @@ static void icp_hpd_irq_setup(struct drm_i915_private > *dev_priv) > > if (INTEL_PCH_TYPE(dev_priv) <= PCH_TGP) > intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, > SHPD_FILTER_CNT_500_ADJ); > + else > + intel_uncore_write(&dev_priv->uncore, SHPD_FILTER_CNT, > +SHPD_FILTER_CNT_250); > > ibx_display_interrupt_update(dev_priv, hotplug_irqs, enabled_irqs); > > @@ -1049,7 +1051,7 @@ static void mtp_hpd_irq_setup(struct drm_i915_private > *i915) > enabled_irqs = intel_hpd_enabled_irqs(i915, i915->display.hotplug.pch_hpd); > hotplug_irqs = intel_hpd_hotplug_irqs(i915, i915->display.hotplug.pch_hpd); > > - intel_de_write(i915, SHPD_FILTER_CNT, SHPD_FILTER_CNT_500_ADJ); > + intel_de_write(i915, SHPD_FILTER_CNT, SHPD_FILTER_CNT_250); > > mtp_hpd_invert(i915); > ibx_display_interrupt_update(i915, hotplug_irqs, enabled_irqs); diff --git > a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h index > dcf64e32cd54..aefad14ab27a 100644 > --- a/drivers/gpu/drm/i915/i915_reg.h > +++ b/drivers/gpu/drm/i915/i915_reg.h > @@ -4939,6 +4939,7 @@ > > #define SHPD_FILTER_CNT _MMIO(0xc4038) > #define SHPD_FILTER_CNT_500_ADJ 0x001D9 > +#define SHPD_FILTER_CNT_250 0x000F8 > > #define _PCH_DPLL_A 0xc6014 > #define _PCH_DPLL_B 0xc6018 > -- > 2.25.1