Am 01.09.26 um 19:17 schrieb Icenowy Zheng:
Blend mode properties are now required to expose pixel formats w/ alpha.

Experiments show that the fixed blending mode for the cursor seems to be
COVERAGE:

- With a cursor plane filled with R=G=0, B=0xff, A=0x40, the cursor is
   visible on a pure-white background, which means the background is
   multiplied.
- With a cursor plane filled with R=G=B=0xff, A=0x40, the cursor isn't
   pure white and non-white patterns can be see through, which means the
   cursor is multiplied.

Add a fixed COVERAGE blend mode property for the cursor plane.

Signed-off-by: Icenowy Zheng <[email protected]>
---
  drivers/gpu/drm/verisilicon/vs_cursor_plane.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/verisilicon/vs_cursor_plane.c 
b/drivers/gpu/drm/verisilicon/vs_cursor_plane.c
index fa4f601dd0c87..36e3664373fa1 100644
--- a/drivers/gpu/drm/verisilicon/vs_cursor_plane.c
+++ b/drivers/gpu/drm/verisilicon/vs_cursor_plane.c
@@ -11,6 +11,7 @@
#include <drm/drm_atomic.h>
  #include <drm/drm_atomic_helper.h>
+#include <drm/drm_blend.h>
  #include <drm/drm_crtc.h>
  #include <drm/drm_fourcc.h>
  #include <drm/drm_framebuffer.h>
@@ -268,5 +269,7 @@ struct drm_plane *vs_cursor_plane_init(struct drm_device 
*drm_dev,
drm_plane_helper_add(plane, &vs_cursor_plane_helper_funcs); + drm_plane_create_blend_mode_property(plane,
+                                            BIT(DRM_MODE_BLEND_COVERAGE));

Reviewed-by: Thomas Zimmermann <[email protected]>

Please see the other patch for my comments on coding style.

        return plane;
  }

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg)


Reply via email to