72 lines
2.6 KiB
Diff
72 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: kimsehun <se.hun.kim@intel.com>
|
|
Date: Thu, 7 Mar 2019 03:25:42 -0500
|
|
Subject: [PATCH] INTERNAL drm/i915: Additional alpha blending support
|
|
|
|
This patch is related with commit id b20815255 and e5fa98aa2
|
|
Since INTERNAL version doesn't work with native clear linux.
|
|
|
|
To fully support alpha blending on native Clear linux,
|
|
need to alpha and blending property set on primary plane create
|
|
and sprite plane create function.
|
|
|
|
Hot Fix of - INTERNAL drm/i915: Add plane alpha blending support, v2.
|
|
|
|
Tracked-On: OLINUX-3689
|
|
Tracked-On: PKT-1773
|
|
Signed-off-by: kimsehun <se.hun.kim@intel.com>
|
|
---
|
|
drivers/gpu/drm/i915/intel_display.c | 9 ++++++++-
|
|
drivers/gpu/drm/i915/intel_sprite.c | 8 ++++++++
|
|
2 files changed, 16 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
|
|
index 498dfd275d20..b465bcacfc2d 100644
|
|
--- a/drivers/gpu/drm/i915/intel_display.c
|
|
+++ b/drivers/gpu/drm/i915/intel_display.c
|
|
@@ -13905,7 +13905,7 @@ intel_primary_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
|
|
DRM_ERROR("Failed to create decryption property\n");
|
|
}
|
|
|
|
- if (INTEL_GEN(dev_priv) >= 9)
|
|
+ if (INTEL_GEN(dev_priv) >= 9) {
|
|
drm_plane_create_color_properties(&primary->base,
|
|
BIT(DRM_COLOR_YCBCR_BT601) |
|
|
BIT(DRM_COLOR_YCBCR_BT709),
|
|
@@ -13914,6 +13914,13 @@ intel_primary_plane_create(struct drm_i915_private *dev_priv, enum pipe pipe)
|
|
DRM_COLOR_YCBCR_BT709,
|
|
DRM_COLOR_YCBCR_LIMITED_RANGE);
|
|
|
|
+ drm_plane_create_alpha_property(&primary->base);
|
|
+ drm_plane_create_blend_mode_property(&primary->base,
|
|
+ BIT(DRM_MODE_BLEND_PIXEL_NONE) |
|
|
+ BIT(DRM_MODE_BLEND_PREMULTI) |
|
|
+ BIT(DRM_MODE_BLEND_COVERAGE));
|
|
+ }
|
|
+
|
|
drm_plane_helper_add(&primary->base, &intel_plane_helper_funcs);
|
|
|
|
return primary;
|
|
diff --git a/drivers/gpu/drm/i915/intel_sprite.c b/drivers/gpu/drm/i915/intel_sprite.c
|
|
index 8a013f19fa99..b388a6b5b402 100644
|
|
--- a/drivers/gpu/drm/i915/intel_sprite.c
|
|
+++ b/drivers/gpu/drm/i915/intel_sprite.c
|
|
@@ -1755,6 +1755,14 @@ intel_sprite_plane_create(struct drm_i915_private *dev_priv,
|
|
DRM_COLOR_YCBCR_BT709,
|
|
DRM_COLOR_YCBCR_LIMITED_RANGE);
|
|
|
|
+ if (INTEL_GEN(dev_priv) >= 9) {
|
|
+ drm_plane_create_alpha_property(&intel_plane->base);
|
|
+ drm_plane_create_blend_mode_property(&intel_plane->base,
|
|
+ BIT(DRM_MODE_BLEND_PIXEL_NONE) |
|
|
+ BIT(DRM_MODE_BLEND_PREMULTI) |
|
|
+ BIT(DRM_MODE_BLEND_COVERAGE));
|
|
+ }
|
|
+
|
|
drm_plane_helper_add(&intel_plane->base, &intel_plane_helper_funcs);
|
|
|
|
return intel_plane;
|
|
--
|
|
https://clearlinux.org
|
|
|