[PATCH 0/2] drm/i915/fbc: Dirty rectangle bounds enforcement and CFB nuke handling
Austin Hu <[email protected]>
| Newsgroups | org.freedesktop.lists.intel-gfx,org.freedesktop.lists.intel-xe |
|---|---|
| Message-ID | <[email protected]> |
This series improves Frame Buffer Compression (FBC) dirty rectangle handling in compliance with hardware requirements. The first patch restricts dirty rectangle vertical coordinates to the valid frame buffer range [y_offset, y_end], adding explicit coordinate inversion handling for 180-degree plane rotation and debug logging when clamping occurs[cite: 10]. The second patch tracks plane state attribute changes during atomic commits[cite: 9]. When FBC Dirty Rectangle mode is active, partial updates only apply to surface address changes (PLANE_SURF)[cite: 9]. Modifications to any other plane state parameters require fetching full-plane pixel data from memory to re-compress and update the entire CFB in stolen memory[cite: 9]. Once fully re-compressed, subsequent atomic commits can resume selective dirty rectangle updates[cite: 9]. Austin Hu (1): drm/i915/fbc: nuke CFB if Plane setting (except for surf addr) changes[cite: 9] Charlton Lin (1): drm/i915/fbc: fbc_dirty_rect restrictions and logging[cite: 10] drivers/gpu/drm/i915/display/intel_fbc.c | 158 +++++++++++++++++++++-[cite: 9, 10] 1 file changed, 151 insertions(+), 7 deletions(-)[cite: 9, 10]