1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2021 Intel Corporation 4 */ 5 6 #ifndef _INTEL_PCH_DISPLAY_H_ 7 #define _INTEL_PCH_DISPLAY_H_ 8 9 #include <linux/types.h> 10 11 enum pipe; 12 struct drm_i915_private; 13 struct intel_atomic_state; 14 struct intel_crtc; 15 struct intel_crtc_state; 16 struct intel_link_m_n; 17 18 bool intel_has_pch_trancoder(struct drm_i915_private *i915, 19 enum pipe pch_transcoder); 20 enum pipe intel_crtc_pch_transcoder(struct intel_crtc *crtc); 21 22 void ilk_pch_pre_enable(struct intel_atomic_state *state, 23 struct intel_crtc *crtc); 24 void ilk_pch_enable(struct intel_atomic_state *state, 25 struct intel_crtc *crtc); 26 void ilk_pch_disable(struct intel_atomic_state *state, 27 struct intel_crtc *crtc); 28 void ilk_pch_post_disable(struct intel_atomic_state *state, 29 struct intel_crtc *crtc); 30 void ilk_pch_get_config(struct intel_crtc_state *crtc_state); 31 32 void lpt_pch_enable(struct intel_atomic_state *state, 33 struct intel_crtc *crtc); 34 void lpt_pch_disable(struct intel_atomic_state *state, 35 struct intel_crtc *crtc); 36 void lpt_pch_get_config(struct intel_crtc_state *crtc_state); 37 38 void intel_pch_transcoder_get_m1_n1(struct intel_crtc *crtc, 39 struct intel_link_m_n *m_n); 40 void intel_pch_transcoder_get_m2_n2(struct intel_crtc *crtc, 41 struct intel_link_m_n *m_n); 42 43 void intel_pch_sanitize(struct drm_i915_private *i915); 44 45 #endif 46