Re: [PATCH 1/8] display: fix blend_mode for non-overlay planes
From: Bert Karwatzki
Date: Fri Aug 21 2026 - 15:45:50 EST
Am Freitag, dem 21.08.2026 um 14:47 -0400 schrieb Joshua Peisach:
> On Fri Aug 14, 2026 at 11:17 AM EDT, Bert Karwatzki wrote:
> > Previously drm_plane_create_blend_mode_property() was only called for
> > planes of type DRM_PLANE_TYPE_OVERLAY. Since commit commit 860e748bddcc
> > ("drm: ensure blend mode supported if pixel format with alpha exposed")
> > this results in warnings from validate_blend_mode_for_alpha_formats().
> > We fix this here by calling drm_plane_create_blend_mode_property() for
> > all plane types if the plane is supporting a format with
> > per_pixel_alpha.
> >
> > Signed-off-by: Bert Karwatzki <spasswolf@xxxxxx>
> > ---
> > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c | 5 ++++-
> > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 3 +--
> > 2 files changed, 5 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> > index 62eac6e65334..a6a54351ea56 100644
> > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_crtc.c
> > @@ -755,13 +755,16 @@ int amdgpu_dm_crtc_init(struct amdgpu_display_manager *dm,
> > struct drm_plane *cursor_plane;
> > bool has_degamma;
> > int res = -ENOMEM;
> > + struct dc_plane_cap dummy_cap = {
> > + .per_pixel_alpha = 1,
> > + };
> >
> > cursor_plane = kzalloc_obj(*cursor_plane);
> > if (!cursor_plane)
> > goto fail;
> >
> > cursor_plane->type = DRM_PLANE_TYPE_CURSOR;
> > - res = amdgpu_dm_plane_init(dm, cursor_plane, 0, NULL);
> > + res = amdgpu_dm_plane_init(dm, cursor_plane, 0, &dummy_cap);
> >
> > acrtc = kzalloc_obj(struct amdgpu_crtc);
> > if (!acrtc)
> > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> > index 824ef3ce5de0..4c0c6a8a0dac 100644
> > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c
> > @@ -2208,8 +2208,7 @@ int amdgpu_dm_plane_init(struct amdgpu_display_manager *dm,
> > if (res)
> > return res;
> >
> > - if (plane->type == DRM_PLANE_TYPE_OVERLAY &&
> > - plane_cap && plane_cap->per_pixel_alpha) {
> > + if (plane_cap && plane_cap->per_pixel_alpha) {
> > unsigned int blend_caps = BIT(DRM_MODE_BLEND_PIXEL_NONE) |
> > BIT(DRM_MODE_BLEND_PREMULTI) |
> > BIT(DRM_MODE_BLEND_COVERAGE);
>
> Not sure where the full patch set is, but this does make the warning
> go away.
>
> Tested-by: Joshua Peisach <jpeisach@xxxxxxxxxx>
This is actually the only patch, the 1/8 is an artifact from using
git format-patch which I forgot to remove.
Bert Karwatzki