On Tue, Sep 23, 2025 at 05:31:07PM +0300, Jani Nikula wrote:
> We want to avoid using the display dependent HAS_HOTPLUG() in generic
> irq code. Since the enabling of I915_DISPLAY_PORT_INTERRUPT depends on
> HAS_HOTPLUG() to begin with, we don't really expect to get the irqs for
> !HAS_HOTPLUG(). At least in theory, checking for HAS_HOTPLUG() inside
> i9xx_hpd_irq_ack() should not have any impact.

Yeah, IMR should keep the bit from making an appearance in IIR.
But no real harm in checking I suppose.

Reviewed-by: Ville Syrjälä <[email protected]>

> 
> Signed-off-by: Jani Nikula <[email protected]>
> ---
>  drivers/gpu/drm/i915/display/intel_hotplug_irq.c | 3 +++
>  drivers/gpu/drm/i915/i915_irq.c                  | 3 +--
>  2 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug_irq.c 
> b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c
> index 4f72f3fb9af5..9a4da818ad61 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug_irq.c
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug_irq.c
> @@ -420,6 +420,9 @@ u32 i9xx_hpd_irq_ack(struct intel_display *display)
>       u32 hotplug_status = 0, hotplug_status_mask;
>       int i;
>  
> +     if (!HAS_HOTPLUG(display))
> +             return 0;
> +
>       if (display->platform.g4x ||
>           display->platform.valleyview || display->platform.cherryview)
>               hotplug_status_mask = HOTPLUG_INT_STATUS_G4X |
> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> index f9fbb88b9e26..90174ce9195c 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -931,8 +931,7 @@ static irqreturn_t i915_irq_handler(int irq, void *arg)
>  
>               ret = IRQ_HANDLED;
>  
> -             if (HAS_HOTPLUG(display) &&
> -                 iir & I915_DISPLAY_PORT_INTERRUPT)
> +             if (iir & I915_DISPLAY_PORT_INTERRUPT)
>                       hotplug_status = i9xx_hpd_irq_ack(display);
>  
>               /* Call regardless, as some status bits might not be
> -- 
> 2.47.3

-- 
Ville Syrjälä
Intel

Reply via email to