drm/nouveau: Fix nv50_mstc->best_encoder()
authorLyude Paul <lyude@redhat.com>
Mon, 8 Oct 2018 23:24:31 +0000 (19:24 -0400)
committerLyude Paul <lyude@redhat.com>
Wed, 10 Oct 2018 23:39:51 +0000 (19:39 -0400)
commite87b0bbc9f0380d403f8f2f6abba0d51c74d944f
treedc5eb364bffa18f517b9fac987e9e01b701c410d
parentb5d29843d8ef86d4cde4742e095b81b7fd41e688
drm/nouveau: Fix nv50_mstc->best_encoder()

As mentioned in the previous commit, we currently prevent new modesets
on recently-removed MST connectors by returning no encoder from our
->best_encoder() callback once the MST port has disappeared. This is
wrong however, because it prevents legacy modesetting users from being
able to disable CRTCs on MST connectors after the connector's respective
topology has disappeared.

So, fix this by instead by just always returning a valid encoder.

Changes since v2:
- Remove usage of atomic MST helper for now, since that got replaced
  with a much simpler solution

Signed-off-by: Lyude Paul <lyude@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Ben Skeggs <bskeggs@redhat.com>
Cc: stable@vger.kernel.org
Link: https://patchwork.freedesktop.org/patch/msgid/20181008232437.5571-3-lyude@redhat.com
drivers/gpu/drm/nouveau/dispnv50/disp.c