From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Cc: intel-gfx@lists.freedesktop.org, intel-xe@lists.freedesktop.org,
Uma Shankar <uma.shankar@intel.com>,
Leandro Ribeiro <leandro.ribeiro@collabora.com>
Subject: Re: [PATCH] drm/i915/display: expose blend mode on alpha-capable planes
Date: Wed, 15 Jul 2026 15:01:44 +0300 [thread overview]
Message-ID: <ald2qKro09WTer7_@intel.com> (raw)
In-Reply-To: <20260715054221.451421-1-chaitanya.kumar.borah@intel.com>
On Wed, Jul 15, 2026 at 11:12:21AM +0530, Chaitanya Kumar Borah wrote:
> Since commit 860e748bddcc ("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. The cursor (ARGB8888, all platforms) and the VLV/CHV primary
> and sprite planes trip this.
>
> Userspace has historically assumed premultiplied blending when the
> property is not attached, so it is safe to assume that planes that
> did not expose the property already blended with fixed pre-multiplied
> alpha in hardware. Therefore, expose a "pixel blend mode" property
> advertising only DRM_MODE_BLEND_PREMULTI to match that assumption and
> silence the warning. The cursor call is unconditional; the primary and
> sprite calls are gated to VLV/CHV, the only platforms whose format lists
> include alpha formats.
>
> Assisted-by: Claude:claude-opus-4-8
> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Cc: Uma Shankar <uma.shankar@intel.com>
> Cc: Leandro Ribeiro <leandro.ribeiro@collabora.com>
> Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/work_items/16623
> Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
https://lore.kernel.org/intel-gfx/20260522194935.27411-1-ville.syrjala@linux.intel.com/
> ---
> drivers/gpu/drm/i915/display/i9xx_plane.c | 4 ++++
> drivers/gpu/drm/i915/display/intel_cursor.c | 3 +++
> drivers/gpu/drm/i915/display/intel_sprite.c | 4 ++++
> 3 files changed, 11 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/display/i9xx_plane.c b/drivers/gpu/drm/i915/display/i9xx_plane.c
> index 70734d32a409..490908f59141 100644
> --- a/drivers/gpu/drm/i915/display/i9xx_plane.c
> +++ b/drivers/gpu/drm/i915/display/i9xx_plane.c
> @@ -1108,6 +1108,10 @@ intel_primary_plane_create(struct intel_display *display, enum pipe pipe)
> DRM_MODE_ROTATE_0,
> supported_rotations);
>
> + if (display->platform.valleyview || display->platform.cherryview)
> + drm_plane_create_blend_mode_property(&plane->base,
> + BIT(DRM_MODE_BLEND_PREMULTI));
> +
> zpos = 0;
> drm_plane_create_zpos_immutable_property(&plane->base, zpos);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_cursor.c b/drivers/gpu/drm/i915/display/intel_cursor.c
> index 88384dea868b..0673f16f6fd0 100644
> --- a/drivers/gpu/drm/i915/display/intel_cursor.c
> +++ b/drivers/gpu/drm/i915/display/intel_cursor.c
> @@ -1078,6 +1078,9 @@ intel_cursor_plane_create(struct intel_display *display,
>
> intel_cursor_add_size_hints_property(cursor);
>
> + drm_plane_create_blend_mode_property(&cursor->base,
> + BIT(DRM_MODE_BLEND_PREMULTI));
> +
> zpos = DISPLAY_RUNTIME_INFO(display)->num_sprites[pipe] + 1;
> drm_plane_create_zpos_immutable_property(&cursor->base, zpos);
>
> diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c
> index 6a65f92e8a03..3e38960bbbd8 100644
> --- a/drivers/gpu/drm/i915/display/intel_sprite.c
> +++ b/drivers/gpu/drm/i915/display/intel_sprite.c
> @@ -1722,6 +1722,10 @@ intel_sprite_plane_create(struct intel_display *display,
> DRM_COLOR_YCBCR_BT709,
> DRM_COLOR_YCBCR_LIMITED_RANGE);
>
> + if (display->platform.valleyview || display->platform.cherryview)
> + drm_plane_create_blend_mode_property(&plane->base,
> + BIT(DRM_MODE_BLEND_PREMULTI));
> +
> zpos = sprite + 1;
> drm_plane_create_zpos_immutable_property(&plane->base, zpos);
>
> --
> 2.25.1
--
Ville Syrjälä
Intel
prev parent reply other threads:[~2026-07-15 12:01 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-15 5:42 [PATCH] drm/i915/display: expose blend mode on alpha-capable planes Chaitanya Kumar Borah
2026-07-15 6:22 ` ✓ CI.KUnit: success for " Patchwork
2026-07-15 7:07 ` ✓ i915.CI.BAT: " Patchwork
2026-07-15 7:08 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-15 7:43 ` [PATCH] " Shankar, Uma
2026-07-15 8:19 ` ✓ Xe.CI.FULL: success for " Patchwork
2026-07-15 12:01 ` Ville Syrjälä [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ald2qKro09WTer7_@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=chaitanya.kumar.borah@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=leandro.ribeiro@collabora.com \
--cc=uma.shankar@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.