wayland: wrong tiling with wl_drm on Vivante GC2000

Christian Gudrian CGU at ivu.de
Thu Mar 30 19:15:29 UTC 2023


Hello!

We're running a custom Wayland compositor based on Qt Wayland on an i.MX6 Quad system with a Vivante GC2000 GPU using the Mesa Gallium driver. While the compositor itself displays correctly, client buffers are displayed with wrong tiling.

So far I've found out, that the client's __DRIimage is created by etna_resource_create with a tiled layout. This image is later passed to create_wl_buffer which ignores the tiling information and passes the image's FD to wl_drm_create_prime_buffer.

If I patch etna_resource_create to always use a linear layout the client's buffer is displayed correctly. That's certainly not how to do it correctly. Is there a way to ensure a linear layout for this use case?

Christian


More information about the mesa-dev mailing list