Plane scaling and colorkey are mutually exclusive. Ensure scaling
isn't active at the time of enabling colorkey.

Signed-off-by: Chandra Konduru <[email protected]>
---
 drivers/gpu/drm/i915/intel_sprite.c |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/i915/intel_sprite.c 
b/drivers/gpu/drm/i915/intel_sprite.c
index c010528..0194390 100644
--- a/drivers/gpu/drm/i915/intel_sprite.c
+++ b/drivers/gpu/drm/i915/intel_sprite.c
@@ -319,6 +319,12 @@ skl_update_colorkey(struct drm_plane *drm_plane,
        const int plane = intel_plane->plane;
        u32 plane_ctl;
 
+       /* plane scaling and colorkey are mutually exclusive */
+       if (to_intel_plane_state(drm_plane->state)->scaler_id >= 0) {
+               DRM_ERROR("colorkey not allowed with scaler\n");
+               return -EINVAL;
+       }
+
        I915_WRITE(PLANE_KEYVAL(pipe, plane), key->min_value);
        I915_WRITE(PLANE_KEYMAX(pipe, plane), key->max_value);
        I915_WRITE(PLANE_KEYMSK(pipe, plane), key->channel_mask);
-- 
1.7.9.5

_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to