[PATCH v5 0/7] drm/i915/xe3: FBC Dirty rect feature support
Vinod Govindapillai
vinod.govindapillai at intel.com
Tue Jan 28 15:54:11 UTC 2025
Dirty rect support for FBC in xe3 onwards based on the comments after the
initial RFC series.
v2: Dirty rect related compute and storage moved to fbc state (Ville)
V3: Dont call fbc activate if FBC is already active
v4: Dirty rect compute and programming moved within DSB scope
New changes are added as separate patches to make it easy for review
But could be squashed if the reviews as ok.
v5: add HAS_FBC_DIRTY_RECT()
FBC Damage area updates in 3 steps.
1. As part of plane_atomic_check() get, adjust coordinates and store
the merged damage area in plane_state
2. Atomic_commit, update merged damage are to fbc_state and prepare the
damage area satifying all conditions
3 update the FBC dirty rect registers as part of DSB commit.
Vinod Govindapillai (7):
drm/i915/xe3: add register definitions for fbc dirty rect support
drm/i915/xe3: introduce HAS_FBC_DIRTY_RECT() for FBC dirty rect
support
drm/i915/display: get old_plane_state to the check_plane routine
drm/i915/display: update and store the plane damage clips
drm/i915/xe3: avoid calling fbc activate if fbc is active
drm/i915/xe3: dirty rect support for FBC
drm/i915/xe3: disable FBC if PSR2 selective fetch is enabled
drivers/gpu/drm/i915/display/i9xx_plane.c | 1 +
.../gpu/drm/i915/display/intel_atomic_plane.c | 7 +-
drivers/gpu/drm/i915/display/intel_cursor.c | 2 +
drivers/gpu/drm/i915/display/intel_display.c | 7 +
.../drm/i915/display/intel_display_device.h | 1 +
.../drm/i915/display/intel_display_types.h | 3 +
drivers/gpu/drm/i915/display/intel_fbc.c | 133 +++++++++++++++++-
drivers/gpu/drm/i915/display/intel_fbc.h | 6 +
drivers/gpu/drm/i915/display/intel_fbc_regs.h | 9 ++
drivers/gpu/drm/i915/display/intel_sprite.c | 2 +
.../drm/i915/display/skl_universal_plane.c | 48 +++++++
11 files changed, 216 insertions(+), 3 deletions(-)
--
2.43.0
More information about the Intel-xe
mailing list