This reduces the latency of pinning framebuffers by re-using the previous mapping, if available. Additionally, DPT is preallocated when creating the FB, instead of performing a bo allocation on every pin. Maarten Lankhorst (5): drm/xe/display: Preparations for preallocating dpt bo drm/xe: Use simple xchg to cache DPT drm/xe: Remove safety check from __xe_ttm_stolen_io_mem_reserve_stolen drm/xe/display: Prevent overwriting original GGTT when taking over initial FB. drm/xe/display: Re-use display vmas when possible .../gpu/drm/i915/display/intel_atomic_plane.c | 2 +- drivers/gpu/drm/i915/display/intel_cursor.c | 2 +- drivers/gpu/drm/i915/display/intel_fb_pin.c | 3 +- drivers/gpu/drm/i915/display/intel_fb_pin.h | 3 +- drivers/gpu/drm/i915/display/intel_fbdev.c | 5 + drivers/gpu/drm/i915/display/intel_fbdev.h | 9 + .../gpu/drm/xe/compat-i915-headers/i915_vma.h | 3 + drivers/gpu/drm/xe/display/xe_fb_pin.c | 246 ++++++++++++++---- drivers/gpu/drm/xe/display/xe_fb_pin.h | 20 ++ drivers/gpu/drm/xe/display/xe_plane_initial.c | 15 +- drivers/gpu/drm/xe/xe_ggtt.c | 9 +- drivers/gpu/drm/xe/xe_ggtt.h | 3 +- drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c | 4 - 13 files changed, 254 insertions(+), 70 deletions(-) create mode 100644 drivers/gpu/drm/xe/display/xe_fb_pin.h -- 2.43.0