49 lines · c
1/* SPDX-License-Identifier: MIT */2/*3 * Copyright © 2020 Intel Corporation4 */5 6#ifndef _INTEL_FDI_H_7#define _INTEL_FDI_H_8 9#include <linux/types.h>10 11enum pipe;12struct drm_i915_private;13struct intel_atomic_state;14struct intel_crtc;15struct intel_crtc_state;16struct intel_encoder;17struct intel_link_bw_limits;18 19int intel_fdi_add_affected_crtcs(struct intel_atomic_state *state);20int intel_fdi_link_freq(struct drm_i915_private *i915,21 const struct intel_crtc_state *pipe_config);22bool intel_fdi_compute_pipe_bpp(struct intel_crtc_state *crtc_state);23int ilk_fdi_compute_config(struct intel_crtc *intel_crtc,24 struct intel_crtc_state *pipe_config);25int intel_fdi_atomic_check_link(struct intel_atomic_state *state,26 struct intel_link_bw_limits *limits);27void intel_fdi_normal_train(struct intel_crtc *crtc);28void ilk_fdi_disable(struct intel_crtc *crtc);29void ilk_fdi_pll_disable(struct intel_crtc *intel_crtc);30void ilk_fdi_pll_enable(const struct intel_crtc_state *crtc_state);31void intel_fdi_init_hook(struct drm_i915_private *dev_priv);32void hsw_fdi_link_train(struct intel_encoder *encoder,33 const struct intel_crtc_state *crtc_state);34void hsw_fdi_disable(struct intel_encoder *encoder);35void intel_fdi_pll_freq_update(struct drm_i915_private *i915);36 37void intel_fdi_link_train(struct intel_crtc *crtc,38 const struct intel_crtc_state *crtc_state);39 40void assert_fdi_tx_enabled(struct drm_i915_private *i915, enum pipe pipe);41void assert_fdi_tx_disabled(struct drm_i915_private *i915, enum pipe pipe);42void assert_fdi_rx_enabled(struct drm_i915_private *i915, enum pipe pipe);43void assert_fdi_rx_disabled(struct drm_i915_private *i915, enum pipe pipe);44void assert_fdi_tx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe);45void assert_fdi_rx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe);46void assert_fdi_rx_pll_disabled(struct drm_i915_private *i915, enum pipe pipe);47 48#endif49