Re: [PATCH] drm/i915/hotplug: Reduce SHPD_FILTER to 250us

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




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





[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux