diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index 8c750d5110a161aa60c7eafbea29c6de80afc301..787c50d194d4324a6264d8e415774ce6796c0849 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -1816,6 +1816,10 @@ static int pipe_crc_set_source(struct drm_device *dev, enum pipe pipe, if (pipe_crc->source == source) return 0; + /* forbid changing the source without going back to 'none' */ + if (pipe_crc->source && source) + return -EINVAL; + pipe_crc->source = source; switch (source) {