drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 ++ 1 file changed, 2 insertions(+)
From: Johan Jonker <jbx6244@gmail.com>
A validate_blend_mode_for_alpha_formats() function was added that
fills the kernel log with warnings for Rockchip VOP version 1 SoCs.
Add a drm_plane_create_blend_mode_property() function as fix.
VOP version 1 doesn't support blending with a pixel alpha background
layer, only with a constant alpha. Advertise blending capability with
DRM_MODE_BLEND_PIXEL_NONE.
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
---
Changed V2:
Add comment line
---
drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
index 0090d8ff0c79..0bc5b606f021 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
@@ -1850,6 +1850,8 @@ static void vop_plane_add_properties(struct drm_plane *plane,
if (flags)
drm_plane_create_rotation_property(plane, DRM_MODE_ROTATE_0,
DRM_MODE_ROTATE_0 | flags);
+ drm_plane_create_blend_mode_property(plane,
+ BIT(DRM_MODE_BLEND_PIXEL_NONE));
}
static int vop_create_crtc(struct vop *vop)
---
base-commit: 9d80aa4617b32f5054c5aa471d06b66704854935
change-id: 20260909-blend-c89d2c9f6984
Best regards,
--
Johan Jonker <jbx6244@gmail.com>
On Wed Sep 9, 2026 at 11:20 PM CEST, Johan Jonker wrote: > A validate_blend_mode_for_alpha_formats() function was added that > fills the kernel log with warnings for Rockchip VOP version 1 SoCs. > Add a drm_plane_create_blend_mode_property() function as fix. > VOP version 1 doesn't support blending with a pixel alpha background > layer, only with a constant alpha. Advertise blending capability with > DRM_MODE_BLEND_PIXEL_NONE. On a 7.3-rc1 kernel without this patch, I saw the following: Rock64 (RK3328): ```sh root@rock64-test:~# dmesg --level 4 | grep PLANE [ 7.567004] rockchip-drm display-subsystem: [drm] [PLANE:35:plane-0] pixel format with alpha exposed but blend mode not setup. Please fix. [ 7.567083] rockchip-drm display-subsystem: [drm] [PLANE:38:plane-1] pixel format with alpha exposed but blend mode not setup. Please fix. [ 7.567132] rockchip-drm display-subsystem: [drm] [PLANE:42:plane-2] pixel format with alpha exposed but blend mode not setup. Please fix. ``` RockPro64 (RK3399): ```sh root@rockpro64:~# dmesg --level 4 | grep PLANE [ 5.695597] rockchip-drm display-subsystem: [drm] [PLANE:35:plane-0] pixel format with alpha exposed but blend mode not setup. Please fix. [ 5.695636] rockchip-drm display-subsystem: [drm] [PLANE:38:plane-1] pixel format with alpha exposed but blend mode not setup. Please fix. [ 5.695665] rockchip-drm display-subsystem: [drm] [PLANE:42:plane-2] pixel format with alpha exposed but blend mode not setup. Please fix. [ 5.695692] rockchip-drm display-subsystem: [drm] [PLANE:45:plane-3] pixel format with alpha exposed but blend mode not setup. Please fix. [ 5.695718] rockchip-drm display-subsystem: [drm] [PLANE:48:plane-4] pixel format with alpha exposed but blend mode not setup. Please fix. [ 5.695745] rockchip-drm display-subsystem: [drm] [PLANE:51:plane-5] pixel format with alpha exposed but blend mode not setup. Please fix. ``` And on a (7.3-rc4) kernel *with* this patch, those warnings were gone. Thanks! Feel free to include Tested-by: Diederik de Haas <diederik@cknow-tech.com> # Rock64, RockPro64 Cheers, Diederik > Signed-off-by: Johan Jonker <jbx6244@gmail.com> > --- > > Changed V2: > Add comment line > --- > drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > index 0090d8ff0c79..0bc5b606f021 100644 > --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c > @@ -1850,6 +1850,8 @@ static void vop_plane_add_properties(struct drm_plane *plane, > if (flags) > drm_plane_create_rotation_property(plane, DRM_MODE_ROTATE_0, > DRM_MODE_ROTATE_0 | flags); > + drm_plane_create_blend_mode_property(plane, > + BIT(DRM_MODE_BLEND_PIXEL_NONE)); > } > > static int vop_create_crtc(struct vop *vop) > > --- > base-commit: 9d80aa4617b32f5054c5aa471d06b66704854935 > change-id: 20260909-blend-c89d2c9f6984 > > Best regards,
© 2016 - 2026 Red Hat, Inc.