linux/drivers/gpu/drm/vboxvideo
Qinyun Tan 09f7fc4e8e drm/vboxvideo: create blend mode property on planes
Since commit 860e748bdd ("drm: ensure blend mode supported if pixel
format with alpha exposed"), drm_mode_config_validate() warns when a
plane exposes an alpha pixel format but not the "pixel blend mode"
property. Both the vboxvideo primary and cursor planes expose ARGB8888
and trip this on driver load.

VirtualBox draws the cursor through the host windowing system, which
treats the guest-supplied pointer shape as straight
(non-pre-multiplied) alpha: the host frontend loads the pixels
verbatim into an unpremultiplied ARGB image before handing them to the
host cursor APIs. This corresponds to DRM_MODE_BLEND_COVERAGE. Expose
a "pixel blend mode" property advertising only DRM_MODE_BLEND_COVERAGE
to make these semantics explicit and silence the warning. The primary
plane's alpha channel is ignored by the host (opaque blit) and it is
the bottom-most plane anyway; advertise the same value there for
consistency.

Fixes: 860e748bdd ("drm: ensure blend mode supported if pixel format with alpha exposed")
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Qinyun Tan <qinyuntan@linux.alibaba.com>
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patch.msgid.link/20260901083234.1828755-5-qinyuntan@linux.alibaba.com
2026-09-08 15:12:27 +02:00
..
hgsmi_base.c drm/vboxvideo: Remove unused hgsmi_cursor_position 2025-02-28 09:05:10 +01:00
hgsmi_ch_setup.h
hgsmi_channels.h
hgsmi_defs.h drm/vboxvideo: Replace HTTP links with HTTPS ones 2020-07-16 22:12:50 +02:00
Kconfig drm/vboxvideo: Run DRM default client setup 2024-09-26 09:31:28 +02:00
Makefile
modesetting.c drm/vboxvideo/modesetting: Provide function names for prototype headers 2021-06-03 13:33:18 +02:00
vbox_drv.c drm: remove driver date from struct drm_driver and all drivers 2024-12-05 12:35:42 +02:00
vbox_drv.h drm: remove driver date from struct drm_driver and all drivers 2024-12-05 12:35:42 +02:00
vbox_hgsmi.c drm/vboxvideo: Replace HTTP links with HTTPS ones 2020-07-16 22:12:50 +02:00
vbox_irq.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
vbox_main.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
vbox_mode.c drm/vboxvideo: create blend mode property on planes 2026-09-08 15:12:27 +02:00
vbox_ttm.c drm: include drm_print.h where needed 2025-10-31 10:34:52 +02:00
vboxvideo_guest.h drm/vboxvideo: Remove unused hgsmi_cursor_position 2025-02-28 09:05:10 +01:00
vboxvideo_vbe.h
vboxvideo.h drm/vboxvideo: Replace fake VLA at end of vbva_mouse_pointer_shape with real VLA 2024-09-14 13:32:15 +02:00
vbva_base.c