Re: [PATCH v5 2/6] drm/i915/hpd: Let an HPD pin be in the disabled state when handling missed IRQs

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

 



On Tue, 04 Mar 2025, Imre Deak <imre.deak@xxxxxxxxx> wrote:
> After suspending and resuming the detection on connectors, HPD IRQs that
> arrived while the detection was suspended, are handled by scheduling the
> intel_hotplug::hotplug work for them. All HPD pins must be at this point
> in either the HPD_ENABLED (set for all pins during driver loading/system
> resuming) or HPD_MARK_DISABLED (set by IRQ storm detection) state: the
> HPD_DISABLED state for a pin can be set only from the HPD_MARK_DISABLED
> state by the hotplug work after a storm detection (enabling polling on
> the given pin/connector), however the hotplug work won't be scheduled
> while the detection is suspended.
>
> A follow-up change will add support for blocking the HPD IRQ handling
> on a given HPD pin (without disabling the IRQ generation on it), after
> which it becomes possible to see a pin in the HPD_DISABLED state when
> unblocking the IRQ handling (since the blocking could've happened for an
> already disabled pin). Adjust queue_work_for_missed_irqs() accordingly,
> so that this function can be reused for unblocking the IRQ handling.
>
> Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx>

Reviewed-by: Jani Nikula <jani.nikula@xxxxxxxxx>

> ---
>  drivers/gpu/drm/i915/display/intel_hotplug.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_hotplug.c b/drivers/gpu/drm/i915/display/intel_hotplug.c
> index 9692b5c01aea9..3fb5feeefa144 100644
> --- a/drivers/gpu/drm/i915/display/intel_hotplug.c
> +++ b/drivers/gpu/drm/i915/display/intel_hotplug.c
> @@ -980,6 +980,7 @@ static void queue_work_for_missed_irqs(struct drm_i915_private *i915)
>  		case HPD_MARK_DISABLED:
>  			queue_work = true;
>  			break;
> +		case HPD_DISABLED:
>  		case HPD_ENABLED:
>  			break;
>  		default:

-- 
Jani Nikula, Intel



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

  Powered by Linux