drm/i915: don't set modes for 2 connectors on the same encoder
authorPaulo Zanoni <paulo.r.zanoni@intel.com>
Tue, 7 Jan 2014 16:55:53 +0000 (14:55 -0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Fri, 10 Jan 2014 16:56:39 +0000 (17:56 +0100)
commit5a65f3582e011d0de947420b89c13442a2fda5b8
tree5f53a3aaf5c56e5fe1ece1b5a45ab28ff06146c7
parentfeb56b934463a7339ebc3c3cf2497c7958fe5a60
drm/i915: don't set modes for 2 connectors on the same encoder

In some cases we have more than 1 connector associated to an encoder
(e.g., SDVO, Haswell DP/HDMI) and we can only set a mode for one of
these connectors. If we only allowed modesets for connected connectors
we would never need this patch, but since we do allow modeset for
disconnected connectors we may see user space trying to set modes on
the two connectors attached to the same encoder, so we need to forbid
that.

This problem can be reproduced by running the following
intel-gpu-tools test case:
  ./kms_setmode --run-subtest clone-exclusive-crtc

Thanks to Daniel Vetter for providing a version of this patch on
pastebin.

Credits-to: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/intel_display.c