Commit | Line | Data |
---|---|---|
55367a27 JN |
1 | /* SPDX-License-Identifier: MIT */ |
2 | /* | |
3 | * Copyright © 2019 Intel Corporation | |
4 | */ | |
5 | ||
6 | #ifndef __INTEL_PSR_H__ | |
7 | #define __INTEL_PSR_H__ | |
8 | ||
9 | #include "intel_frontbuffer.h" | |
10 | ||
60c6a14b JRS |
11 | struct drm_connector; |
12 | struct drm_connector_state; | |
55367a27 JN |
13 | struct drm_i915_private; |
14 | struct intel_crtc_state; | |
15 | struct intel_dp; | |
16 | ||
17 | #define CAN_PSR(dev_priv) (HAS_PSR(dev_priv) && dev_priv->psr.sink_support) | |
18 | void intel_psr_init_dpcd(struct intel_dp *intel_dp); | |
19 | void intel_psr_enable(struct intel_dp *intel_dp, | |
20 | const struct intel_crtc_state *crtc_state); | |
21 | void intel_psr_disable(struct intel_dp *intel_dp, | |
22 | const struct intel_crtc_state *old_crtc_state); | |
23 | void intel_psr_update(struct intel_dp *intel_dp, | |
24 | const struct intel_crtc_state *crtc_state); | |
25 | int intel_psr_debug_set(struct drm_i915_private *dev_priv, u64 value); | |
26 | void intel_psr_invalidate(struct drm_i915_private *dev_priv, | |
27 | unsigned frontbuffer_bits, | |
28 | enum fb_op_origin origin); | |
29 | void intel_psr_flush(struct drm_i915_private *dev_priv, | |
30 | unsigned frontbuffer_bits, | |
31 | enum fb_op_origin origin); | |
32 | void intel_psr_init(struct drm_i915_private *dev_priv); | |
33 | void intel_psr_compute_config(struct intel_dp *intel_dp, | |
34 | struct intel_crtc_state *crtc_state); | |
55367a27 JN |
35 | void intel_psr_irq_handler(struct drm_i915_private *dev_priv, u32 psr_iir); |
36 | void intel_psr_short_pulse(struct intel_dp *intel_dp); | |
37 | int intel_psr_wait_for_idle(const struct intel_crtc_state *new_crtc_state, | |
38 | u32 *out_value); | |
39 | bool intel_psr_enabled(struct intel_dp *intel_dp); | |
60c6a14b JRS |
40 | void intel_psr_atomic_check(struct drm_connector *connector, |
41 | struct drm_connector_state *old_state, | |
42 | struct drm_connector_state *new_state); | |
33e059a2 | 43 | void intel_psr_set_force_mode_changed(struct intel_dp *intel_dp); |
55367a27 JN |
44 | |
45 | #endif /* __INTEL_PSR_H__ */ |