Some hardware only supports the COVERAGE blend mode and lacks PREMULTI support entirely. DRM currently requires that PREMULTI is present when creating a blend mode property, which prevents such drivers from being properly upstreamed.
This series removes this restriction and allows drivers to create a blend mode property without PREMULTI. On Weston (userspace), we are working [1] towards adding support for this kind of hardware. [1] https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/2046 v3: - Changed where we enforce drivers to expose blend mode for planes that support the alpha property or pixel formats with alpha. - Fixed missing check to forbid calling drm_plane_create_blend_mode_property() with a zero bitmask of supported modes. v2: - Force drivers to expose blend mode if plane supports alpha property or pixel format with alpha. Leandro Ribeiro (2): drm/drm_blend: allow blend mode property without PREMULTI drm: ensure blend mode supported if alpha exposed drivers/gpu/drm/drm_blend.c | 20 +++++++++++----- drivers/gpu/drm/drm_crtc_internal.h | 2 +- drivers/gpu/drm/drm_drv.c | 7 ++++-- drivers/gpu/drm/drm_mode_config.c | 37 +++++++++++++++++++++++++++-- 4 files changed, 55 insertions(+), 11 deletions(-) -- 2.54.0
