#include <linux/kernel.h>
 
 #include "i915_drv.h"
+#include "i915_irq.h"
 #include "intel_display_types.h"
 #include "intel_hotplug.h"
 
        }
 }
 
-static void intel_hpd_irq_setup(struct drm_i915_private *i915)
-{
-       if (i915->display_irqs_enabled && i915->hotplug_funcs)
-               i915->hotplug_funcs->hpd_irq_setup(i915);
-}
-
 static void intel_hpd_irq_storm_reenable_work(struct work_struct *work)
 {
        struct drm_i915_private *dev_priv =
 
 struct intel_dp;
 struct intel_encoder;
 struct intel_fbdev;
+struct intel_hotplug_funcs;
 struct intel_initial_plane_config;
 struct intel_limit;
 struct intel_overlay;
        int (*compute_global_watermarks)(struct intel_atomic_state *state);
 };
 
-struct intel_hotplug_funcs {
-       void (*hpd_irq_setup)(struct drm_i915_private *dev_priv);
-};
-
 struct intel_fdi_funcs {
        void (*fdi_link_train)(struct intel_crtc *crtc,
                               const struct intel_crtc_state *crtc_state);
 
        return ret;
 }
 
+struct intel_hotplug_funcs {
+       void (*hpd_irq_setup)(struct drm_i915_private *i915);
+};
+
 #define HPD_FUNCS(platform)                                     \
 static const struct intel_hotplug_funcs platform##_hpd_funcs = { \
        .hpd_irq_setup = platform##_hpd_irq_setup,               \
 HPD_FUNCS(ilk);
 #undef HPD_FUNCS
 
+void intel_hpd_irq_setup(struct drm_i915_private *i915)
+{
+       if (i915->display_irqs_enabled && i915->hotplug_funcs)
+               i915->hotplug_funcs->hpd_irq_setup(i915);
+}
+
 /**
  * intel_irq_init - initializes irq support
  * @dev_priv: i915 device instance
 
 void valleyview_enable_display_irqs(struct drm_i915_private *dev_priv);
 void valleyview_disable_display_irqs(struct drm_i915_private *dev_priv);
 
+void intel_hpd_irq_setup(struct drm_i915_private *i915);
 void i915_hotplug_interrupt_update(struct drm_i915_private *dev_priv,
                                   u32 mask,
                                   u32 bits);