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.syrj...@linux.intel.com>
Cc: Manasi Navare <manasi.d.nav...@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.mo...@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;
 
-- 
2.35.1

Reply via email to