Renewed Work Around GNOME 30-bit Deep Color Frame-Buffer Support

Daniel Van Vugt of Canonical who is known for his work on upstream GNOME contributions the past number of years has spent some time recently revisiting the Wayland deep color frame-buffer support.
This merge request remains the center of attention on that front for not hard-coding the frame-buffer configuration to GBM's XRGB8888 but going with the first supported configuration.
In practice this means most systems should now get a 30-bit color mode set instead of 24-bit. This works on modern Intel systems (the 'iris' Mesa driver) for example. It doesn't work on Raspberry Pi FKMS though, which is one reason why we also need to check the pixel format support of the primary plane here...
Performance considerations
For most drivers we would expect no change in memory bandwidth requirements since both the old and new formats are 4 bytes per pixel. Compositing of native Wayland GL clients is made slightly more efficient using 30-bit because they already default to XR30 or AR30 formats when possible. Only legacy Xwayland clients and most SHM clients still using 24-bit color will see slightly slower compositing.
Over the past few weeks the work has been re-based and improvements like better checking around secondary GPU support. Daniel's recent work on the Xilinx GNOME support with upstream changes has also led to changes to this merge request / patches.
The merge request remains open and with the GNOME 43 feature freeze having started this past Saturday, it looks like we'll be waiting until at least GNOME 44 next year before potentially seeing this long-awaited GNOME Wayland 30-bit color support.
33 Comments