Split hotplug irq handling out of i915_irq.[ch] into display/intel_hotplug_irq.[ch]. The line between the new intel_hotplug_irq.[ch] and the existing intel_hotplug.[ch] needs further clarification, but the first step is to move the stuff out of i915_irq.[ch]. Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230515101738.2399816-2-jani.nikula@intel.com
35 lines
1.2 KiB
C
35 lines
1.2 KiB
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2023 Intel Corporation
|
|
*/
|
|
|
|
#ifndef __INTEL_HOTPLUG_IRQ_H__
|
|
#define __INTEL_HOTPLUG_IRQ_H__
|
|
|
|
#include <linux/types.h>
|
|
|
|
struct drm_i915_private;
|
|
struct intel_encoder;
|
|
|
|
u32 i9xx_hpd_irq_ack(struct drm_i915_private *i915);
|
|
|
|
void i9xx_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_status);
|
|
void ibx_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
|
|
void ilk_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
|
|
void gen11_hpd_irq_handler(struct drm_i915_private *i915, u32 iir);
|
|
void bxt_hpd_irq_handler(struct drm_i915_private *i915, u32 hotplug_trigger);
|
|
void xelpdp_pica_irq_handler(struct drm_i915_private *i915, u32 iir);
|
|
void icp_irq_handler(struct drm_i915_private *i915, u32 pch_iir);
|
|
void spt_irq_handler(struct drm_i915_private *i915, u32 pch_iir);
|
|
|
|
void i915_hotplug_interrupt_update_locked(struct drm_i915_private *i915,
|
|
u32 mask, u32 bits);
|
|
void i915_hotplug_interrupt_update(struct drm_i915_private *i915,
|
|
u32 mask, u32 bits);
|
|
|
|
void intel_hpd_enable_detection(struct intel_encoder *encoder);
|
|
void intel_hpd_irq_setup(struct drm_i915_private *i915);
|
|
|
|
void intel_hotplug_irq_init(struct drm_i915_private *i915);
|
|
|
|
#endif /* __INTEL_HOTPLUG_IRQ_H__ */
|