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.

Bspec: 68970

Cc: Uma Shankar <[email protected]>
Cc: Ville Syrjala <[email protected]>
Signed-off-by: Suraj Kandpal <[email protected]>
---
 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

Reply via email to