]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
drm: allow encoder mode_set even when connectors change for crtc
authorAbhinav Kumar <quic_abhinavk@quicinc.com>
Wed, 11 Dec 2024 21:18:42 +0000 (13:18 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 05:39:11 +0000 (07:39 +0200)
commita3477a2872ec6fd8db34b80f5be6d3e731c013e6
treeb9f6fb4f3a655ace3492a8a5ee0c770603223ad2
parent48effdb7a798232db945503cf3f51e0be8070cea
drm: allow encoder mode_set even when connectors change for crtc

[ Upstream commit 7e182cb4f5567f53417b762ec0d679f0b6f0039d ]

In certain use-cases, a CRTC could switch between two encoders
and because the mode being programmed on the CRTC remains
the same during this switch, the CRTC's mode_changed remains false.
In such cases, the encoder's mode_set also gets skipped.

Skipping mode_set on the encoder for such cases could cause an issue
because even though the same CRTC mode was being used, the encoder
type could have changed like the CRTC could have switched from a
real time encoder to a writeback encoder OR vice-versa.

Allow encoder's mode_set to happen even when connectors changed on a
CRTC and not just when the mode changed.

Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Signed-off-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Reviewed-by: Maxime Ripard <mripard@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241211-abhinavk-modeset-fix-v3-1-0de4bf3e7c32@quicinc.com
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/drm_atomic_helper.c