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 struct drm_i915_private; 12 struct intel_atomic_state; 13 struct intel_crtc; 14 struct intel_crtc_state; 15 struct intel_connector; 16 struct intel_dp; 17 18 void intel_drrs_enable(struct intel_dp *intel_dp, 19 const struct intel_crtc_state *crtc_state); 20 void intel_drrs_disable(struct intel_dp *intel_dp, 21 const struct intel_crtc_state *crtc_state); 22 void intel_drrs_update(struct intel_dp *intel_dp, 23 const struct intel_crtc_state *crtc_state); 24 void intel_drrs_invalidate(struct drm_i915_private *dev_priv, 25 unsigned int frontbuffer_bits); 26 void intel_drrs_flush(struct drm_i915_private *dev_priv, 27 unsigned int frontbuffer_bits); 28 void intel_drrs_page_flip(struct intel_atomic_state *state, 29 struct intel_crtc *crtc); 30 void intel_drrs_compute_config(struct intel_dp *intel_dp, 31 struct intel_crtc_state *pipe_config, 32 int output_bpp, bool constant_n); 33 struct drm_display_mode *intel_drrs_init(struct intel_connector *connector, 34 struct drm_display_mode *fixed_mode); 35 36 #endif /* __INTEL_DRRS_H__ */ 37