[PATCH v3 0/8] AuxCCS handling and render compression modifiers

Juha-Pekka Heikkilä juhapekka.heikkila at gmail.com
Wed Mar 19 13:41:05 UTC 2025


Hi Tvrtko,

I did quick run with these patches. With these changes on top of
today's drm-tip I got a complete system freeze on mtl and its variants
when do modprobe. I had kgdb enabled but I wasn't even thrown there,
the machine went completely unresponsive. On 3/3 tries modprobe xe
always completely froze the box.

/Juha-Pekka


On Tue, Mar 18, 2025 at 6:22 PM Tvrtko Ursulin
<tvrtko.ursulin at igalia.com> wrote:
>
> A series to fix and add xe support for AuxCSS framebuffers via DPT.
>
> Currently the auxiliary buffer data isn't mapped into the page tables at all so
> cf48bddd31de ("drm/i915/display: Disable AuxCCS framebuffers if built for Xe")
> had to disable the support.
>
> On top of that there are missing flushes and invalidations both from the ring
> buffer side and from the CPU side.
>
> Tested with KDE Wayland, on Lenovo Carbon X1 ADL-P:
>
>   [PLANE:32:plane 1A]: type=PRI
>           uapi: [FB:242] AR30 little-endian (0x30335241),0x100000000000008,2880x1800, visible=visible, src=2880.000000x1800.000000+0.000000+0.000000, dst=2880x1800+0+0, rotation=0 (0x00000001)
>           hw: [FB:242] AR30 little-endian (0x30335241),0x100000000000008,2880x1800, visible=yes, src=2880.000000x1800.000000+0.000000+0.000000, dst=2880x1800+0+0, rotation=0 (0x00000001)
>
> Display seems working fine - no artefacts, no DMAR/PIPE faults. CI also appears
> to be happy with v2.
>
> v2:
>  * More patches added to fix kms_flip_tiling.
>
> v3:
>  * Rebased after some cleanup patches from v2 were merged.
>  * Added people to Cc as suggested by Rodrigo.
>  * Adjusted last patch title. (Rodrigo)
>  * Apply GGTT flushing only to iomapped system memory buffers.
>
> Cc: José Roberto de Souza <jose.souza at intel.com>
> Cc: Juha-Pekka Heikkila <juhapekka.heikkila at gmail.com>
> Cc: Michael J. Ruhl <michael.j.ruhl at intel.com>
> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Tvrtko Ursulin (8):
>   drm/xe: Add ring buffer handling for AuxCCS
>   drm/xe: Use fb cached min alignment
>   drm/xe: Reduce DPT table alignment as in i915
>   drm/xe: Flush GGTT writes after populating DPT
>   drm/xe: Handle DPT in system memory
>   drm/xe: Force flush system memory AuxCCS framebuffers before scan out
>   drm/xe/display: Add support for AuxCCS
>   drm/i915/display: Expose AuxCCS frame buffer modifiers for Xe
>
>  .../drm/i915/display/skl_universal_plane.c    |   6 -
>  drivers/gpu/drm/xe/display/xe_fb_pin.c        | 181 ++++++++++++++----
>  .../gpu/drm/xe/instructions/xe_gpu_commands.h |   1 +
>  .../gpu/drm/xe/instructions/xe_mi_commands.h  |   6 +
>  drivers/gpu/drm/xe/regs/xe_gt_regs.h          |   1 +
>  drivers/gpu/drm/xe/xe_bo_types.h              |  14 +-
>  drivers/gpu/drm/xe/xe_ring_ops.c              | 173 +++++++++--------
>  drivers/gpu/drm/xe/xe_ring_ops_types.h        |   2 +-
>  8 files changed, 261 insertions(+), 123 deletions(-)
>
> --
> 2.48.0
>


More information about the Intel-xe mailing list