78f01927b6
Add struct weston_drm_format, which contains a DRM format and a list of modifiers. The patch also adds struct weston_drm_format_array and some helper functions to handle these two new structs: init/fini, find elements, add elements, etc. This will be useful in the next commits in which we add support to dmabuf-hints. It also allows a cleanup in the DRM-backend, where we currently have a similar struct in drm_plane but with no helper functions, so the code to handle it is scattered throughout the functions and there is a lot of repetition. This patch is based on previous work of Scott Anderson (@ascent). Signed-off-by: Scott Anderson <scott.anderson@collabora.com> Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>