Loading...
1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright © 2020 Intel Corporation
4 */
5
6#ifndef _INTEL_FDI_H_
7#define _INTEL_FDI_H_
8
9enum pipe;
10struct drm_i915_private;
11struct intel_crtc;
12struct intel_crtc_state;
13struct intel_encoder;
14
15int intel_fdi_link_freq(struct drm_i915_private *i915,
16 const struct intel_crtc_state *pipe_config);
17int ilk_fdi_compute_config(struct intel_crtc *intel_crtc,
18 struct intel_crtc_state *pipe_config);
19void intel_fdi_normal_train(struct intel_crtc *crtc);
20void ilk_fdi_disable(struct intel_crtc *crtc);
21void ilk_fdi_pll_disable(struct intel_crtc *intel_crtc);
22void ilk_fdi_pll_enable(const struct intel_crtc_state *crtc_state);
23void intel_fdi_init_hook(struct drm_i915_private *dev_priv);
24void hsw_fdi_link_train(struct intel_encoder *encoder,
25 const struct intel_crtc_state *crtc_state);
26void hsw_fdi_disable(struct intel_encoder *encoder);
27void intel_fdi_pll_freq_update(struct drm_i915_private *i915);
28
29void intel_fdi_link_train(struct intel_crtc *crtc,
30 const struct intel_crtc_state *crtc_state);
31
32void assert_fdi_tx_enabled(struct drm_i915_private *i915, enum pipe pipe);
33void assert_fdi_tx_disabled(struct drm_i915_private *i915, enum pipe pipe);
34void assert_fdi_rx_enabled(struct drm_i915_private *i915, enum pipe pipe);
35void assert_fdi_rx_disabled(struct drm_i915_private *i915, enum pipe pipe);
36void assert_fdi_tx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe);
37void assert_fdi_rx_pll_enabled(struct drm_i915_private *i915, enum pipe pipe);
38void assert_fdi_rx_pll_disabled(struct drm_i915_private *i915, enum pipe pipe);
39
40#endif
1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright © 2020 Intel Corporation
4 */
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#endif