intel_hpd_irq_handler(9)
β¨ intel_hpd_irq_handler(9) β¨
okay bestie, so this is a page from the Kernel API Manual and it's about intel_hpd_irq_handler β literally the main character hotplug irq handler π₯ no cap, it's the big one.
π NAME π
intel_hpd_irq_handler β the main hotplug irq handler π
π¦ SYNOPSIS π¦
void intel_hpd_irq_handler (struct intel_display *display , u32 pin_mask
, u32 long_mask );
like, that's the whole signature, periodt β¨
πΈ ARGUMENTS πΈ
displayβ the display device π that's it, that's the whole vibepin_maskβ a mask of hpd pins that have triggered the irq π―long_maskβ a mask of hpd pins that may be long hpd pulses π
π DESCRIPTION π
So here's the tea, bestie π΅ β this is the main hotplug irq handler for all platforms. Iconic behaviour, truly.
The way it works is: the platform specific irq handlers call the platform specific hotplug irq handlers, and those read and decode the appropriate registers into bitmasks about hpd pins that have triggered (that's your pin_mask, bestie) and which of those pins may be long pulses (that's your long_mask). π§β¨
ok important caveat time π β the long_mask is ignored if the port corresponding to the pin is not a digital port. like, literally ignored. don't come for me, that's just what the page says π
And then here, in this function? We do hotplug irq storm detection and mitigation βοΈπ₯ (yes, storms, dramatic) and then we pass the further processing on to the appropriate bottom halves. slay π«Ά
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/i915/display/intel_hotplug.cβ Hotplug(9) intel_hpd_pin_default(9)intel_hpd_irq_storm_detect(9)intel_hpd_trigger_irq(9)intel_hpd_init(9)intel_hpd_poll_enable(9)intel_hpd_poll_disable(9)intel_hpd_block(9)intel_hpd_unblock(9)intel_hpd_clear_and_unblock(9)
and that's the page, bestie π quick cute sign-off: this one lives in ./drivers/gpu/drm/i915/display, it's dated October 2026, and it's intel_hpd_irq_handler(9) from the Kernel API Manual. iykyk π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms