1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2019 Intel Corporation
4  */
5 
6 #ifndef __INTEL_FIFO_UNDERRUN_H__
7 #define __INTEL_FIFO_UNDERRUN_H__
8 
9 #include <linux/types.h>
10 
11 struct drm_i915_private;
12 struct intel_crtc;
13 enum pipe;
14 
15 void intel_init_fifo_underrun_reporting(struct drm_i915_private *i915,
16 					struct intel_crtc *crtc, bool enable);
17 bool intel_set_cpu_fifo_underrun_reporting(struct drm_i915_private *dev_priv,
18 					   enum pipe pipe, bool enable);
19 bool intel_set_pch_fifo_underrun_reporting(struct drm_i915_private *dev_priv,
20 					   enum pipe pch_transcoder,
21 					   bool enable);
22 void intel_cpu_fifo_underrun_irq_handler(struct drm_i915_private *dev_priv,
23 					 enum pipe pipe);
24 void intel_pch_fifo_underrun_irq_handler(struct drm_i915_private *dev_priv,
25 					 enum pipe pch_transcoder);
26 void intel_check_cpu_fifo_underruns(struct drm_i915_private *dev_priv);
27 void intel_check_pch_fifo_underruns(struct drm_i915_private *dev_priv);
28 
29 #endif /* __INTEL_FIFO_UNDERRUN_H__ */
30