intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/15] Optimize vrr.guardband and fix LRR
@ 2025-08-04 13:24 Ankit Nautiyal
  2025-08-04 13:24 ` [PATCH 01/15] drm/i915/skl_watermark: Fix the scaling factor for chroma subsampling Ankit Nautiyal
                   ` (16 more replies)
  0 siblings, 17 replies; 20+ messages in thread
From: Ankit Nautiyal @ 2025-08-04 13:24 UTC (permalink / raw)
  To: intel-gfx, intel-xe; +Cc: ville.syrjala, Ankit Nautiyal

Instead of setting vrr.guardband to vblank, use optimal guardband that
works for most of the cases. This will help in avoiding need of change
in guardband and fix the LRR feature that needs seamless switching to
a lower refresh rate.

First few patches fix/refactor and extract common functions required for
dsc/scaler prefill time computation. Later patches use these helpers to
compute an optimized guardband.

Also, for seamless_mn where vtotal is same but mode clock is changed to
seamlessly switch to lower rate, re-compute the vrr timings.

Few things that still need work:
-The timestamps corresponding with next start of vactive still need to be
fixed with the new scheme.
-Re-enabling CMRR

Rev2:
-Address comments from Mitul.
-Extract helpers for dsc/scaler prefill latencies.
-Fix downscaling factor for chroma subsampling.
-Use missing pkg C max latency.
-Fix guardband computation for seamless mn, always use vblank for
higher resolution.

Ankit Nautiyal (15):
  drm/i915/skl_watermark: Fix the scaling factor for chroma subsampling
  drm/i915/skl_watermark: Add bounds check for scaler array access
  drm/i915/skl_watermark: Pass linetime as argument to latency helpers
  drm/i915/skl_scaler: Introduce helper for chroma downscale factor
  drm/i915/display: Extract helpers to set dsc/scaler prefill latencies
  drm/i915/dp: Add SDP latency computation helper
  drm/i915/psr: Add function to compute max link-wake latency
  drm/i915/psr: Store max PSR2/Panel Replay latency in crtc_state
  drm/i915/vrr: Use vrr.sync_start for getting vtotal
  drm/i915/display: Add guardband check for feature latencies
  drm/i915/skl_watermark: Remove redundant latency checks from vblank
    validation
  drm/i915/vrr: Use static guardband to support seamless LRR switching
  drm/i915/vrr: Set vrr.vmin to min Vtotal
  drm/i915/panel: Add helper to get highest fixed mode
  drm/i915/vrr: Fix seamless_mn drrs for PTL

 drivers/gpu/drm/i915/display/intel_display.c  | 174 +++++++++++-
 drivers/gpu/drm/i915/display/intel_display.h  |   8 +
 .../drm/i915/display/intel_display_types.h    |   1 +
 drivers/gpu/drm/i915/display/intel_dp.c       |  53 +++-
 drivers/gpu/drm/i915/display/intel_dp.h       |   2 +
 drivers/gpu/drm/i915/display/intel_panel.c    |  13 +
 drivers/gpu/drm/i915/display/intel_panel.h    |   2 +
 drivers/gpu/drm/i915/display/intel_psr.c      |  64 +++++
 drivers/gpu/drm/i915/display/intel_psr.h      |   3 +
 drivers/gpu/drm/i915/display/intel_vrr.c      | 265 ++++++++++++++++--
 drivers/gpu/drm/i915/display/intel_vrr.h      |   3 +-
 drivers/gpu/drm/i915/display/skl_scaler.c     |   5 +
 drivers/gpu/drm/i915/display/skl_scaler.h     |   2 +
 drivers/gpu/drm/i915/display/skl_watermark.c  |  89 +-----
 drivers/gpu/drm/i915/display/skl_watermark.h  |   1 +
 15 files changed, 570 insertions(+), 115 deletions(-)

-- 
2.45.2


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2025-08-05  6:27 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-04 13:24 [PATCH 00/15] Optimize vrr.guardband and fix LRR Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 01/15] drm/i915/skl_watermark: Fix the scaling factor for chroma subsampling Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 02/15] drm/i915/skl_watermark: Add bounds check for scaler array access Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 03/15] drm/i915/skl_watermark: Pass linetime as argument to latency helpers Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 04/15] drm/i915/skl_scaler: Introduce helper for chroma downscale factor Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 05/15] drm/i915/display: Extract helpers to set dsc/scaler prefill latencies Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 06/15] drm/i915/dp: Add SDP latency computation helper Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 07/15] drm/i915/psr: Add function to compute max link-wake latency Ankit Nautiyal
2025-08-04 20:54   ` Jani Nikula
2025-08-05  6:27     ` Nautiyal, Ankit K
2025-08-04 13:24 ` [PATCH 08/15] drm/i915/psr: Store max PSR2/Panel Replay latency in crtc_state Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 09/15] drm/i915/vrr: Use vrr.sync_start for getting vtotal Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 10/15] drm/i915/display: Add guardband check for feature latencies Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 11/15] drm/i915/skl_watermark: Remove redundant latency checks from vblank validation Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 12/15] drm/i915/vrr: Use static guardband to support seamless LRR switching Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 13/15] drm/i915/vrr: Set vrr.vmin to min Vtotal Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 14/15] drm/i915/panel: Add helper to get highest fixed mode Ankit Nautiyal
2025-08-04 13:24 ` [PATCH 15/15] drm/i915/vrr: Fix seamless_mn drrs for PTL Ankit Nautiyal
2025-08-04 14:42 ` ✓ i915.CI.BAT: success for Optimize vrr.guardband and fix LRR (rev2) Patchwork
2025-08-05  2:14 ` ✓ i915.CI.Full: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).