drm/atomic: Handle encoder assignment conflicts in a separate check, v3.
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Thu, 3 Mar 2016 09:17:40 +0000 (10:17 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 8 Mar 2016 10:04:41 +0000 (11:04 +0100)
commit8248b65df653c0a536bdd64f8a6c8bb150bfdd60
treebc2e7fb1366594ca515bc7692dba4da5b3a42c66
parent40616a26d1c68e4c80e2358a02297ba492f4cc17
drm/atomic: Handle encoder assignment conflicts in a separate check, v3.

The current check doesn't handle the case where we don't steal an
encoder, but keep it on the current connector. If we repurpose
disable_conflicting_encoders to do the checking, we just have
to reject the ones that conflict.

Changes since v1:
- Return early with empty encoder_mask, drm_for_each_connector
  requires connection_mutex held.
Changes since v2:
- Add comments for the loops.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Testcase: kms_setmode.invalid-clone-single-crtc-stealing
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/1456996662-8704-6-git-send-email-maarten.lankhorst@linux.intel.com
drivers/gpu/drm/drm_atomic_helper.c