mbox series

[v3,0/3] Fixes for selective fetch area calculation

Message ID 20220510183313.1046628-1-jouni.hogander@intel.com (mailing list archive)
Headers show
Series Fixes for selective fetch area calculation | expand

Message

Jouni Högander May 10, 2022, 6:33 p.m. UTC
Currently selective fetch area calculation ends up as bogus area in
at least following cases:

1. Updated plane is partially or fully outside pipe area
2. Big fb with only part of memory area used for plane

These end up as y1 = 0, y2 = 4 or y2 being outside pipe area. This
patch set addresses these by ensuring update area is within pipe area
or by falling back to full update.

Patch set also adds drm_dbg_once* macros to print out debug message
only once. drm_dbg_once_kms is used to printout debug message when
selective fetch area calculation fails.

v3:
 - Add drm_dbg_once* and use it when sel fetch area calculation fails
 - Move drm_rect_intersect to clip_area_update
v2:
 - Update commit message of first patch
 - Set damaged_area x1 and x2 during initialization

Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Mika Kahola <mika.kahola@intel.com>
Cc: Mark Pearson <markpearson@lenovo.com>

Jouni Högander (3):
  drm/print: Add drm_debug_once* macros
  drm/i915/psr: Use full update In case of area calculation fails
  drm/i915: Ensure damage clip area is within pipe area

 drivers/gpu/drm/i915/display/intel_psr.c | 36 +++++++++++++++++++-----
 include/drm/drm_print.h                  | 29 +++++++++++++++++++
 2 files changed, 58 insertions(+), 7 deletions(-)