drm/ast: Disconnect BMC if physical connector is connected
authorThomas Zimmermann <tzimmermann@suse.de>
Thu, 16 Nov 2023 13:02:12 +0000 (14:02 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 3 Dec 2023 06:33:06 +0000 (07:33 +0100)
commitf1a0e42f6651b86b02fdb1881ec69eeba5cf155c
tree6dd93113120e53cf6af0b33e69c76391b23839ba
parent405b4f6d211345b1be64df938ef980e816519af3
drm/ast: Disconnect BMC if physical connector is connected

commit 8d6ef26501b97243ee6c16b8187c5b38cb69b77d upstream.

Many user-space compositors fail with mode setting if a CRTC has
more than one connected connector. This is the case with the BMC
on Aspeed systems. Work around this problem by setting the BMC's
connector status to disconnected when the physical connector has
a display attached. This way compositors will only see one connected
connector at a time; either the physical one or the BMC.

Suggested-by: Jocelyn Falempe <jfalempe@redhat.com>
Fixes: e329cb53b45d ("drm/ast: Add BMC virtual connector")
Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Cc: <stable@vger.kernel.org> # v6.6+
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231116130217.22931-1-tzimmermann@suse.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/ast/ast_drv.h
drivers/gpu/drm/ast/ast_mode.c