Message ID | 20241021105100.2861830-4-mitulkumar.ajitkumar.golani@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add AS_SDP to fastset | expand |
On 10/21/2024 4:21 PM, Mitul Golani wrote: > Adaptive sync sdp param computation, specifically minimum vtotal is > blocking vrr enable and disable fastset requirements in certain scenario > i.e. during null modeset, this minimum vtotal we can configure during > full modeset as well when sink is having vrr support, where it doesn't > need dependency on vrr.enable status and can also match vrr > enable/disable fastset requirement. > > Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> > --- > drivers/gpu/drm/i915/display/intel_dp.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c > index b1f68fff524d..0fefe6f16257 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp.c > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > @@ -2769,7 +2769,7 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp, > const struct drm_display_mode *adjusted_mode = > &crtc_state->hw.adjusted_mode; > > - if (!crtc_state->vrr.enable || !intel_dp->as_sdp_supported) > + if (!intel_vrr_possible(crtc_state) || !intel_dp->as_sdp_supported) > return; > > crtc_state->infoframes.enable |= intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC); > @@ -2786,7 +2786,7 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp, > as_sdp->target_rr_divider = true; > } else { > as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL; > - as_sdp->vtotal = adjusted_mode->vtotal; > + as_sdp->vtotal = crtc_state->vrr.vmin + 1; Yes vrr vmin should be correct thing here for DB1 and DB2, but we do not need to add 1 here. Also, this should be a separate patch. Regards, Ankit > as_sdp->target_rr = 0; > } > }
> -----Original Message----- > From: Nautiyal, Ankit K <ankit.k.nautiyal@intel.com> > Sent: 18 November 2024 13:38 > To: Golani, Mitulkumar Ajitkumar <mitulkumar.ajitkumar.golani@intel.com>; > intel-gfx@lists.freedesktop.org > Cc: ville.syrjala@linux.intel.com > Subject: Re: [PATCH v3 3/3] drm/i915/dp: Compute as_sdp based on if vrr > possible > > > On 10/21/2024 4:21 PM, Mitul Golani wrote: > > Adaptive sync sdp param computation, specifically minimum vtotal is > > blocking vrr enable and disable fastset requirements in certain > > scenario i.e. during null modeset, this minimum vtotal we can > > configure during full modeset as well when sink is having vrr support, > > where it doesn't need dependency on vrr.enable status and can also > > match vrr enable/disable fastset requirement. > > > > Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> > > --- > > drivers/gpu/drm/i915/display/intel_dp.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_dp.c > > b/drivers/gpu/drm/i915/display/intel_dp.c > > index b1f68fff524d..0fefe6f16257 100644 > > --- a/drivers/gpu/drm/i915/display/intel_dp.c > > +++ b/drivers/gpu/drm/i915/display/intel_dp.c > > @@ -2769,7 +2769,7 @@ static void intel_dp_compute_as_sdp(struct > intel_dp *intel_dp, > > const struct drm_display_mode *adjusted_mode = > > &crtc_state->hw.adjusted_mode; > > > > - if (!crtc_state->vrr.enable || !intel_dp->as_sdp_supported) > > + if (!intel_vrr_possible(crtc_state) || !intel_dp->as_sdp_supported) > > return; > > > > crtc_state->infoframes.enable |= > > intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC); > > @@ -2786,7 +2786,7 @@ static void intel_dp_compute_as_sdp(struct > intel_dp *intel_dp, > > as_sdp->target_rr_divider = true; > > } else { > > as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL; > > - as_sdp->vtotal = adjusted_mode->vtotal; > > + as_sdp->vtotal = crtc_state->vrr.vmin + 1; > > Yes vrr vmin should be correct thing here for DB1 and DB2, but we do not > need to add 1 here. > > Also, this should be a separate patch. Agreed, I will separate these patches. Thanks for review Ankit. Regards, Mitul > > Regards, > > Ankit > > > as_sdp->target_rr = 0; > > } > > }
diff --git a/drivers/gpu/drm/i915/display/intel_dp.c b/drivers/gpu/drm/i915/display/intel_dp.c index b1f68fff524d..0fefe6f16257 100644 --- a/drivers/gpu/drm/i915/display/intel_dp.c +++ b/drivers/gpu/drm/i915/display/intel_dp.c @@ -2769,7 +2769,7 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp, const struct drm_display_mode *adjusted_mode = &crtc_state->hw.adjusted_mode; - if (!crtc_state->vrr.enable || !intel_dp->as_sdp_supported) + if (!intel_vrr_possible(crtc_state) || !intel_dp->as_sdp_supported) return; crtc_state->infoframes.enable |= intel_hdmi_infoframe_enable(DP_SDP_ADAPTIVE_SYNC); @@ -2786,7 +2786,7 @@ static void intel_dp_compute_as_sdp(struct intel_dp *intel_dp, as_sdp->target_rr_divider = true; } else { as_sdp->mode = DP_AS_SDP_AVT_DYNAMIC_VTOTAL; - as_sdp->vtotal = adjusted_mode->vtotal; + as_sdp->vtotal = crtc_state->vrr.vmin + 1; as_sdp->target_rr = 0; } }
Adaptive sync sdp param computation, specifically minimum vtotal is blocking vrr enable and disable fastset requirements in certain scenario i.e. during null modeset, this minimum vtotal we can configure during full modeset as well when sink is having vrr support, where it doesn't need dependency on vrr.enable status and can also match vrr enable/disable fastset requirement. Signed-off-by: Mitul Golani <mitulkumar.ajitkumar.golani@intel.com> --- drivers/gpu/drm/i915/display/intel_dp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)