1b2de2d00SVille Syrjälä /* SPDX-License-Identifier: MIT */ 2b2de2d00SVille Syrjälä /* 3b2de2d00SVille Syrjälä * Copyright © 2021 Intel Corporation 4b2de2d00SVille Syrjälä */ 5b2de2d00SVille Syrjälä 6b2de2d00SVille Syrjälä #ifndef _INTEL_PCH_DISPLAY_H_ 7b2de2d00SVille Syrjälä #define _INTEL_PCH_DISPLAY_H_ 8b2de2d00SVille Syrjälä 9*a9708702SVille Syrjälä #include <linux/types.h> 10*a9708702SVille Syrjälä 11*a9708702SVille Syrjälä enum pipe; 12108a112fSVille Syrjälä struct drm_i915_private; 13b2de2d00SVille Syrjälä struct intel_atomic_state; 14ccebd0e4SVille Syrjälä struct intel_crtc; 15b2de2d00SVille Syrjälä struct intel_crtc_state; 16a68819ccSVille Syrjälä struct intel_link_m_n; 17b2de2d00SVille Syrjälä 18*a9708702SVille Syrjälä bool intel_has_pch_trancoder(struct drm_i915_private *i915, 19*a9708702SVille Syrjälä enum pipe pch_transcoder); 20*a9708702SVille Syrjälä enum pipe intel_crtc_pch_transcoder(struct intel_crtc *crtc); 21*a9708702SVille Syrjälä 22d8f7f883SVille Syrjälä void ilk_pch_pre_enable(struct intel_atomic_state *state, 23d8f7f883SVille Syrjälä struct intel_crtc *crtc); 24ccebd0e4SVille Syrjälä void ilk_pch_enable(struct intel_atomic_state *state, 25ccebd0e4SVille Syrjälä struct intel_crtc *crtc); 26976c68f4SVille Syrjälä void ilk_pch_disable(struct intel_atomic_state *state, 27976c68f4SVille Syrjälä struct intel_crtc *crtc); 28976c68f4SVille Syrjälä void ilk_pch_post_disable(struct intel_atomic_state *state, 29976c68f4SVille Syrjälä struct intel_crtc *crtc); 307d9ae633SVille Syrjälä void ilk_pch_get_config(struct intel_crtc_state *crtc_state); 31b2de2d00SVille Syrjälä 32ccebd0e4SVille Syrjälä void lpt_pch_enable(struct intel_atomic_state *state, 33ccebd0e4SVille Syrjälä struct intel_crtc *crtc); 34718cc87eSVille Syrjälä void lpt_pch_disable(struct intel_atomic_state *state, 35718cc87eSVille Syrjälä struct intel_crtc *crtc); 36f45d2252SVille Syrjälä void lpt_pch_get_config(struct intel_crtc_state *crtc_state); 37b2de2d00SVille Syrjälä 3823015f6fSVille Syrjälä void intel_pch_transcoder_get_m1_n1(struct intel_crtc *crtc, 3923015f6fSVille Syrjälä struct intel_link_m_n *m_n); 4023015f6fSVille Syrjälä void intel_pch_transcoder_get_m2_n2(struct intel_crtc *crtc, 41a68819ccSVille Syrjälä struct intel_link_m_n *m_n); 42a68819ccSVille Syrjälä 43108a112fSVille Syrjälä void intel_pch_sanitize(struct drm_i915_private *i915); 44108a112fSVille Syrjälä 45b2de2d00SVille Syrjälä #endif 46