Re: [PATCH 17/21] drm/i915/display: Move vrr.guardband/pipeline_full out of !fastset block

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 3/7/2025 7:56 PM, Ville Syrjälä wrote:
On Thu, Mar 06, 2025 at 06:40:56PM +0530, Ankit Nautiyal wrote:
The vrr.guardband/pipeline_full depend on the vrr.vmin. Since we have
set vrr.vmin to adjusted_mode->crtc_vtotal, this shouldn't change on the
fly. With this we can move vrr.guardband/pipeline_full out from !fastset
block.

Signed-off-by: Ankit Nautiyal <ankit.k.nautiyal@xxxxxxxxx>
---
  drivers/gpu/drm/i915/display/intel_display.c | 5 +++--
  1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 322a05648f58..a642496e366c 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -5393,8 +5393,6 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
  		PIPE_CONF_CHECK_I(vrr.vmin);
  		PIPE_CONF_CHECK_I(vrr.vmax);
  		PIPE_CONF_CHECK_I(vrr.flipline);
-		PIPE_CONF_CHECK_I(vrr.pipeline_full);
-		PIPE_CONF_CHECK_I(vrr.guardband);
  		PIPE_CONF_CHECK_I(vrr.vsync_start);
  		PIPE_CONF_CHECK_I(vrr.vsync_end);
  		PIPE_CONF_CHECK_LLI(cmrr.cmrr_m);
@@ -5402,6 +5400,9 @@ intel_pipe_config_compare(const struct intel_crtc_state *current_config,
  		PIPE_CONF_CHECK_BOOL(cmrr.enable);
  	}
+ PIPE_CONF_CHECK_I(vrr.pipeline_full);
+	PIPE_CONF_CHECK_I(vrr.guardband);

Assuming we can't reprogram the guardband safely live
I think this would have to become

if (!fastset || always_use_vrr_tg()) {
         ...
}

which avoids breaking the LRR fastset on older platforms.

Whether we can still risk the fastboot exception for the new
platforms I don't know. I guess leave it out for now and
ponder it further later.

In the future I guess one option to resurrecting the fastsets
would be to somehow use a more fixed size gurdband instead of
the full vblank length, but that would need a lot of thought
and work, so definitely not something we can just do right
now.


Yes I agree.

Will have the guardband under the new check.

Do we need to let pipeline_full as it is in !fastset since always_use_vrr_tg() is anyways false for older platforms? Or we keep it along with guardband?


Regards,

Ankit



+
  #undef PIPE_CONF_CHECK_X
  #undef PIPE_CONF_CHECK_I
  #undef PIPE_CONF_CHECK_LLI
--
2.45.2



[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux