This function sets the vrr_enabled property for crtc based on the platform support and the request from userspace.
V2: Check for platform support before updating the prop. V3: Don't attach vrr_enabled prop, as it is alreay attached.
Cc: Ville Syrjälä ville.syrjala@linux.intel.com Cc: Manasi Navare manasi.d.navare@intel.com Signed-off-by: Bhanuprakash Modem bhanuprakash.modem@intel.com --- drivers/gpu/drm/i915/display/intel_vrr.c | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/drivers/gpu/drm/i915/display/intel_vrr.c b/drivers/gpu/drm/i915/display/intel_vrr.c index 396f2f994fa0..7263b35550de 100644 --- a/drivers/gpu/drm/i915/display/intel_vrr.c +++ b/drivers/gpu/drm/i915/display/intel_vrr.c @@ -160,6 +160,10 @@ void intel_vrr_enable(struct intel_encoder *encoder, enum transcoder cpu_transcoder = crtc_state->cpu_transcoder; u32 trans_vrr_ctl;
+ if (HAS_VRR(dev_priv)) + drm_mode_crtc_set_vrr_enabled_property(crtc_state->uapi.crtc, + crtc_state->vrr.enable); + if (!crtc_state->vrr.enable) return;
@@ -211,6 +215,10 @@ void intel_vrr_disable(const struct intel_crtc_state *old_crtc_state) struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); enum transcoder cpu_transcoder = old_crtc_state->cpu_transcoder;
+ if (HAS_VRR(dev_priv)) + drm_mode_crtc_set_vrr_enabled_property(old_crtc_state->uapi.crtc, + false); + if (!old_crtc_state->vrr.enable) return;