How to map depth=30 fb to XBGR instead of XRGB?

Ilia Mirkin imirkin at
Sun Dec 31 06:03:39 UTC 2017

NVIDIA hardware, prior to Kepler, only supports XBGR2101010. However
drmAddFB with depth = 30 will use the mapping in
drm_mode_legacy_fb_format and pick the XRGB version of the format.

One solution is to tell userspace "stop using addfb, move to addfb2".
However I'm hoping that there's some sort of semi-clean way of dealing
with such driver eccentricities without resorting to changing

Can the ioctl be handled in the driver perhaps? Or would it be
reasonable to add a callback in drm_driver?

Suggestions welcome.


More information about the dri-devel mailing list