drm/fb-helper: Blacklist writeback when adding connectors to fbdev
authorPaul Kocialkowski <paul.kocialkowski@bootlin.com>
Thu, 15 Nov 2018 16:32:48 +0000 (17:32 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 21 Nov 2018 09:38:19 +0000 (10:38 +0100)
commit8fd3b90300bec541806dac271de2fd44e2e4e2d2
treed71300fce2291a4ba03b625d1c56e106f4751726
parent5c074eeabbd332b11559f7fc1e89d456f94801fb
drm/fb-helper: Blacklist writeback when adding connectors to fbdev

Writeback connectors do not produce any on-screen output and require
special care for use. Such connectors are hidden from enumeration in
DRM resources by default, but they are still picked-up by fbdev.
This makes rather little sense since fbdev is not really adapted for
dealing with writeback.

Moreover, this is also a source of issues when userspace disables the
CRTC (and associated plane) without detaching the CRTC from the
connector (which is hidden by default). In this case, the connector is
still using the CRTC, leading to am "enabled/connectors mismatch" and
eventually the failure of the associated atomic commit. This situation
happens with VC4 testing under IGT GPU Tools.

Filter out writeback connectors in the fbdev helper to solve this.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
Reviewed-by: Maxime Ripard <maxime.ripard@bootlin.com>
Tested-by: Maxime Ripard <maxime.ripard@bootlin.com>
Fixes: 935774cd71fe ("drm: Add writeback connector type")
Cc: <stable@vger.kernel.org> # v4.19+
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20181115163248.21168-1-paul.kocialkowski@bootlin.com
drivers/gpu/drm/drm_fb_helper.c