From: vandita kulkarni <vandita.kulkarni@xxxxxxxxx> Check blend state set by blend properties and set alpha blending accordingly. Signed-off-by: vandita kulkarni <vandita.kulkarni@xxxxxxxxx> --- drivers/gpu/drm/i915/intel_display.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 5fb281b..97b716f 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -3127,7 +3127,10 @@ static void skylake_update_primary_plane(struct drm_plane *plane, PLANE_CTL_PIPE_GAMMA_ENABLE | PLANE_CTL_PIPE_CSC_ENABLE; - plane_ctl |= skl_plane_ctl_format(fb->pixel_format, false, false); + plane_ctl |= skl_plane_ctl_format(fb->pixel_format, + plane_state->premultiplied_alpha, + plane_state->drop_alpha); + plane_ctl |= skl_plane_ctl_tiling(fb->modifier[0]); plane_ctl |= PLANE_CTL_PLANE_GAMMA_DISABLE; plane_ctl |= skl_plane_ctl_rotation(rotation); @@ -12080,6 +12083,10 @@ int intel_plane_atomic_calc_changes(struct drm_crtc_state *crtc_state, intel_crtc->atomic.wait_vblank = true; intel_crtc->atomic.update_fbc |= visible || mode_changed; + + ret = intel_plane_state_check_blend(plane_state); + if (ret) + return ret; break; case DRM_PLANE_TYPE_CURSOR: break; @@ -14259,6 +14266,9 @@ static struct drm_plane *intel_primary_plane_create(struct drm_device *dev, if (INTEL_INFO(dev)->gen >= 4) intel_create_rotation_property(dev, primary); + if (INTEL_INFO(dev)->gen == 9) + intel_plane_add_blend_properties(primary); + drm_plane_helper_add(&primary->base, &intel_plane_helper_funcs); return &primary->base; -- 1.9.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/intel-gfx