Wayland Is Driving Fragmentation Around EDID Parsing - A Call To Fix That
Currently there is no de facto EDID parsing library for Linux but many different choices and most Wayland compositors rolling their own. The Extended Display Identification Data (EDID) is exposed by the kernel to user-space for offering various metadata around the display. This offers much more information in the standardized structure than what the kernel otherwise normally exposes to user-space and is becoming more important for advanced features like high dynamic range (HDR) and advanced color features that are relevant to compositors and other user-space software. (Heck even to reliably query the monitor(s) model string under Linux for the Phoronix Test Suite for years has meant just parsing the EDID information via sysfs.)
Rather than exposing all of the parsed information from the kernel, there is now a call to have a more unified Linux EDID parsing library. Prominent Wayland developer Pekka Paalanen made the call today for having such a library, potentially based on one od the existing EDID parsing libraries already out there. This hypothetical project would be FreeDesktop.org-hosted, MIT-licensed, offer at least a C ABI, and have minimal dependencies while being quite comprehensive with its implementation.
In turn this would cut-down on code duplication across Wayland compositors and the many different parsing implementations currently out there. The call was made on the Wayland mailing list and is currently up for discussion.
Such a project would also likely need to support DisplayID well, the VESA standard that aims to eventually replace EDID/E-EDID. Intel developer Jani Nikula expressed that the DisplayID block handling will likely be needed in the "near future". (Similarly, with the DRM EDID parsing code in DRM-Next for Linux 5.13 is also some recent DisplayID handling improvements.)