Merge tag 'drm-intel-next-2018-02-21' of git://anongit.freedesktop.org/drm/drm-intel...
[linux-2.6-block.git] / drivers / gpu / drm / i915 / intel_sprite.c
index 3be22c0fcfb5d3257a5b732194569c7ff192c8e8..e098e4b2c85c7bd3d4efc15317b63d93948cbef9 100644 (file)
@@ -1063,8 +1063,8 @@ intel_check_sprite_plane(struct intel_plane *plane,
        return 0;
 }
 
-int intel_sprite_set_colorkey(struct drm_device *dev, void *data,
-                             struct drm_file *file_priv)
+int intel_sprite_set_colorkey_ioctl(struct drm_device *dev, void *data,
+                                   struct drm_file *file_priv)
 {
        struct drm_i915_private *dev_priv = to_i915(dev);
        struct drm_intel_sprite_colorkey *set = data;
@@ -1077,6 +1077,9 @@ int intel_sprite_set_colorkey(struct drm_device *dev, void *data,
        /* ignore the pointless "none" flag */
        set->flags &= ~I915_SET_COLORKEY_NONE;
 
+       if (set->flags & ~(I915_SET_COLORKEY_DESTINATION | I915_SET_COLORKEY_SOURCE))
+               return -EINVAL;
+
        /* Make sure we don't try to enable both src & dest simultaneously */
        if ((set->flags & (I915_SET_COLORKEY_DESTINATION | I915_SET_COLORKEY_SOURCE)) == (I915_SET_COLORKEY_DESTINATION | I915_SET_COLORKEY_SOURCE))
                return -EINVAL;