Lines Matching refs:crtc_state
75 static int intel_vrr_vblank_exit_length(const struct intel_crtc_state *crtc_state) in intel_vrr_vblank_exit_length() argument
77 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in intel_vrr_vblank_exit_length()
82 return crtc_state->vrr.guardband + crtc_state->framestart_delay + 1; in intel_vrr_vblank_exit_length()
84 return crtc_state->vrr.pipeline_full + crtc_state->framestart_delay + 1; in intel_vrr_vblank_exit_length()
87 int intel_vrr_vmin_vblank_start(const struct intel_crtc_state *crtc_state) in intel_vrr_vmin_vblank_start() argument
90 return crtc_state->vrr.vmin + 1 - intel_vrr_vblank_exit_length(crtc_state); in intel_vrr_vmin_vblank_start()
93 int intel_vrr_vmax_vblank_start(const struct intel_crtc_state *crtc_state) in intel_vrr_vmax_vblank_start() argument
95 return crtc_state->vrr.vmax - intel_vrr_vblank_exit_length(crtc_state); in intel_vrr_vmax_vblank_start()
99 intel_vrr_compute_config(struct intel_crtc_state *crtc_state, in intel_vrr_compute_config() argument
102 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in intel_vrr_compute_config()
106 struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; in intel_vrr_compute_config()
116 if (!crtc_state->uapi.vrr_enabled) in intel_vrr_compute_config()
135 crtc_state->vrr.vmin = vmin - 1; in intel_vrr_compute_config()
136 crtc_state->vrr.vmax = vmax; in intel_vrr_compute_config()
137 crtc_state->vrr.enable = true; in intel_vrr_compute_config()
139 crtc_state->vrr.flipline = crtc_state->vrr.vmin + 1; in intel_vrr_compute_config()
152 crtc_state->vrr.guardband = in intel_vrr_compute_config()
153 crtc_state->vrr.vmin - adjusted_mode->crtc_vdisplay; in intel_vrr_compute_config()
165 crtc_state->vrr.pipeline_full = in intel_vrr_compute_config()
166 min(255, crtc_state->vrr.vmin - adjusted_mode->crtc_vdisplay - 4 - 1); in intel_vrr_compute_config()
169 crtc_state->mode_flags |= I915_MODE_FLAG_VRR; in intel_vrr_compute_config()
173 const struct intel_crtc_state *crtc_state) in intel_vrr_enable() argument
176 enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; in intel_vrr_enable()
179 if (!crtc_state->vrr.enable) in intel_vrr_enable()
185 XELPD_VRR_CTL_VRR_GUARDBAND(crtc_state->vrr.guardband); in intel_vrr_enable()
189 VRR_CTL_PIPELINE_FULL(crtc_state->vrr.pipeline_full) | in intel_vrr_enable()
192 intel_de_write(dev_priv, TRANS_VRR_VMIN(cpu_transcoder), crtc_state->vrr.vmin - 1); in intel_vrr_enable()
193 intel_de_write(dev_priv, TRANS_VRR_VMAX(cpu_transcoder), crtc_state->vrr.vmax - 1); in intel_vrr_enable()
195 intel_de_write(dev_priv, TRANS_VRR_FLIPLINE(cpu_transcoder), crtc_state->vrr.flipline - 1); in intel_vrr_enable()
199 void intel_vrr_send_push(const struct intel_crtc_state *crtc_state) in intel_vrr_send_push() argument
201 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in intel_vrr_send_push()
203 enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; in intel_vrr_send_push()
205 if (!crtc_state->vrr.enable) in intel_vrr_send_push()
212 bool intel_vrr_is_push_sent(const struct intel_crtc_state *crtc_state) in intel_vrr_is_push_sent() argument
214 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in intel_vrr_is_push_sent()
216 enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; in intel_vrr_is_push_sent()
218 if (!crtc_state->vrr.enable) in intel_vrr_is_push_sent()
238 struct intel_crtc_state *crtc_state) in intel_vrr_get_config() argument
241 enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; in intel_vrr_get_config()
245 crtc_state->vrr.enable = trans_vrr_ctl & VRR_CTL_VRR_ENABLE; in intel_vrr_get_config()
246 if (!crtc_state->vrr.enable) in intel_vrr_get_config()
250 crtc_state->vrr.guardband = in intel_vrr_get_config()
254 crtc_state->vrr.pipeline_full = in intel_vrr_get_config()
257 crtc_state->vrr.flipline = intel_de_read(dev_priv, TRANS_VRR_FLIPLINE(cpu_transcoder)) + 1; in intel_vrr_get_config()
258 crtc_state->vrr.vmax = intel_de_read(dev_priv, TRANS_VRR_VMAX(cpu_transcoder)) + 1; in intel_vrr_get_config()
259 crtc_state->vrr.vmin = intel_de_read(dev_priv, TRANS_VRR_VMIN(cpu_transcoder)) + 1; in intel_vrr_get_config()
261 crtc_state->mode_flags |= I915_MODE_FLAG_VRR; in intel_vrr_get_config()