[PULL] drm-xe-fixes

Lucas De Marchi
2024-10-18T03:34:04Z

Hi Dave and Simona,

drm-xe-fixes for 6.12-rc4. Mostly some error path fixes and locking
adjustements. Timestamp bit width fixes delta time calculations in
userspace and one display fix for tile4 modifier in LNL/BMG.

thanks
Lucas De Marchi

drm-xe-fixes-2024-10-17:
Driver Changes:
- New workaround to Xe2 (Aradhya)
- Fix unbalanced rpm put (Matthew Auld)
- Remove fragile lock optimization (Matthew Brost)
- Fix job release, delegating it to the drm scheduler (Matthew Brost)
- Fix timestamp bit width for Xe2 (Lucas)
- Fix external BO's dma-resv usag (Matthew Brost)
- Fix returning success for timeout in wait_token (Nirmoy)
- Initialize fence to avoid it being detected as signaled (Matthew Auld)
- Improve cache flush for BMG (Matthew Auld)
- Don't allow hflip for tile4 framebuffer on Xe2 (Juha-Pekka)
The following changes since commit 8e929cb546ee42c9a61d24fae60605e9e3192354:

Linux 6.12-rc3 (2024-10-13 14:33:32 -0700)

are available in the Git repository at:

https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2024-10-17

for you to fetch changes up to ffafd12696d1a4c8eeb7386d798d75e1fafb4e01:

drm/i915/display: Don't allow tile4 framebuffer to do hflip on display20 or greater (2024-10-16 09:07:09 -0500)

----------------------------------------------------------------
Driver Changes:
- New workaround to Xe2 (Aradhya)
- Fix unbalanced rpm put (Matthew Auld)
- Remove fragile lock optimization (Matthew Brost)
- Fix job release, delegating it to the drm scheduler (Matthew Brost)
- Fix timestamp bit width for Xe2 (Lucas)
- Fix external BO's dma-resv usag (Matthew Brost)
- Fix returning success for timeout in wait_token (Nirmoy)
- Initialize fence to avoid it being detected as signaled (Matthew Auld)
- Improve cache flush for BMG (Matthew Auld)
- Don't allow hflip for tile4 framebuffer on Xe2 (Juha-Pekka)

----------------------------------------------------------------
Aradhya Bhatia (1):
drm/xe/xe2lpg: Extend Wa_15016589081 for xe2lpg

Juha-Pekka Heikkila (1):
drm/i915/display: Don't allow tile4 framebuffer to do hflip on display20 or greater

Lucas De Marchi (1):
drm/xe/query: Increase timestamp width

Matthew Auld (4):
drm/xe: fix unbalanced rpm put() with fence_fini()
drm/xe: fix unbalanced rpm put() with declare_wedged()
drm/xe/xe_sync: initialise ufence.signalled
drm/xe/bmg: improve cache flushing behaviour

Matthew Brost (3):
drm/xe: Take job list lock in xe_sched_add_pending_job
drm/xe: Don't free job in TDR
drm/xe: Use bookkeep slots for external BO's in exec IOCTL

Nirmoy Das (1):
drm/xe/ufence: ufence can be signaled right after wait_woken

drivers/gpu/drm/i915/display/intel_fb.c | 13 ++++++++++
drivers/gpu/drm/i915/display/intel_fb.h | 1 +
drivers/gpu/drm/i915/display/skl_universal_plane.c | 11 ++++++++
drivers/gpu/drm/xe/regs/xe_gt_regs.h | 3 ---
drivers/gpu/drm/xe/xe_device.c | 4 +--
drivers/gpu/drm/xe/xe_exec.c | 12 +++------
drivers/gpu/drm/xe/xe_gpu_scheduler.h | 2 ++
drivers/gpu/drm/xe/xe_gt.c | 1 -
drivers/gpu/drm/xe/xe_gt_tlb_invalidation.c | 29 ++++++++++------------
drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h | 1 -
drivers/gpu/drm/xe/xe_guc_submit.c | 7 ++++--
drivers/gpu/drm/xe/xe_query.c | 6 ++++-
drivers/gpu/drm/xe/xe_sync.c | 2 +-
drivers/gpu/drm/xe/xe_vm.c | 8 ++----
drivers/gpu/drm/xe/xe_wa.c | 4 +++
drivers/gpu/drm/xe/xe_wait_user_fence.c | 3 ---
16 files changed, 63 insertions(+), 44 deletions(-)