]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/i915/dp: Handle a tunneling IRQ after acking it
authorImre Deak <imre.deak@intel.com>
Wed, 25 Feb 2026 16:46:02 +0000 (18:46 +0200)
committerImre Deak <imre.deak@intel.com>
Tue, 3 Mar 2026 15:49:03 +0000 (17:49 +0200)
commit90b86782d4993da94089671723c993551cc1fb3e
tree0f88d0c8905ae9c73e5f24459cd20430394da976
parentdb4855d90363d76cc4d6f8bf6aadadc07b7d7c3c
drm/i915/dp: Handle a tunneling IRQ after acking it

HPD IRQs in general should be handled after acking them. The

1. Read IRQ register (read DP_DEVICE_SERVICE_IRQ_VECTOR,
   DP_LINK_SERVICE_IRQ_VECTOR_ESI0)
2. Handle IRQ
3. Ack IRQ (write DP_DEVICE_SERVICE_IRQ_VECTOR,
   DP_LINK_SERVICE_IRQ_VECTOR_ESI0)

sequence would miss a new interrupt triggered after 2. and before 3.,
since the flag set in the IRQ register for this interrupt would be
cleared in step 3.

Fix the above by handling the IRQ after acking it.

Reviewed-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260225164618.1261368-5-imre.deak@intel.com
drivers/gpu/drm/i915/display/intel_dp.c