1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2023 Intel Corporation 4 */ 5 6 #ifndef __INTEL_HOTPLUG_IRQ_H__ 7 #define __INTEL_HOTPLUG_IRQ_H__ 8 9 #include <linux/types.h> 10 11 struct intel_display; 12 struct intel_encoder; 13 14 u32 i9xx_hpd_irq_ack(struct intel_display *display); 15 16 void i9xx_hpd_irq_handler(struct intel_display *display, u32 hotplug_status); 17 void ibx_hpd_irq_handler(struct intel_display *display, u32 hotplug_trigger); 18 void ilk_hpd_irq_handler(struct intel_display *display, u32 hotplug_trigger); 19 void gen11_hpd_irq_handler(struct intel_display *display, u32 iir); 20 void bxt_hpd_irq_handler(struct intel_display *display, u32 hotplug_trigger); 21 void xelpdp_pica_irq_handler(struct intel_display *display, u32 iir); 22 void icp_irq_handler(struct intel_display *display, u32 pch_iir); 23 void spt_irq_handler(struct intel_display *display, u32 pch_iir); 24 25 void i915_hotplug_interrupt_update_locked(struct intel_display *display, 26 u32 mask, u32 bits); 27 void i915_hotplug_interrupt_update(struct intel_display *display, 28 u32 mask, u32 bits); 29 30 void intel_hpd_enable_detection(struct intel_encoder *encoder); 31 void intel_hpd_irq_setup(struct intel_display *display); 32 33 void intel_hotplug_irq_init(struct intel_display *display); 34 35 #endif /* __INTEL_HOTPLUG_IRQ_H__ */ 36