Merge tag 'pinctrl-v6.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[linux-block.git] / drivers / gpu / drm / i915 / display / intel_drrs.h
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2021 Intel Corporation
4  */
5
6 #ifndef __INTEL_DRRS_H__
7 #define __INTEL_DRRS_H__
8
9 #include <linux/types.h>
10
11 enum drrs_type;
12 enum transcoder;
13 struct drm_i915_private;
14 struct intel_atomic_state;
15 struct intel_crtc;
16 struct intel_crtc_state;
17 struct intel_connector;
18
19 bool intel_cpu_transcoder_has_drrs(struct drm_i915_private *i915,
20                                    enum transcoder cpu_transcoder);
21 const char *intel_drrs_type_str(enum drrs_type drrs_type);
22 bool intel_drrs_is_active(struct intel_crtc *crtc);
23 void intel_drrs_activate(const struct intel_crtc_state *crtc_state);
24 void intel_drrs_deactivate(const struct intel_crtc_state *crtc_state);
25 void intel_drrs_invalidate(struct drm_i915_private *dev_priv,
26                            unsigned int frontbuffer_bits);
27 void intel_drrs_flush(struct drm_i915_private *dev_priv,
28                       unsigned int frontbuffer_bits);
29 void intel_drrs_crtc_init(struct intel_crtc *crtc);
30 void intel_drrs_crtc_debugfs_add(struct intel_crtc *crtc);
31 void intel_drrs_connector_debugfs_add(struct intel_connector *connector);
32
33 #endif /* __INTEL_DRRS_H__ */