]> www.infradead.org Git - users/jedix/linux-maple.git/commit
drm/mediatek: dpi/dsi: Fix possible_crtcs calculation
authorMichael Walle <mwalle@kernel.org>
Thu, 6 Jun 2024 09:21:22 +0000 (11:21 +0200)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Fri, 28 Jun 2024 12:25:18 +0000 (12:25 +0000)
commit9ff6df49e6cbcc9834865870d7c4f3059b0891d3
tree79fe0bd3ff2939bffc3636efd34103c817a40edf
parent45b70f71a1c161fc2848395f6cb1ef1ac2222d3b
drm/mediatek: dpi/dsi: Fix possible_crtcs calculation

mtk_find_possible_crtcs() assumes that the main path will always have
the CRTC with id 0, the ext id 1 and the third id 2. This is only true
if the paths are all available. But paths are optional (see also
comment in mtk_drm_kms_init()), e.g. the main path might not be enabled
or available at all. Then the CRTC IDs will shift one up, e.g. ext will
be 0 and the third path will be 1.

To fix that, dynamically calculate the IDs by the presence of the paths.

While at it, make the return code a signed one and return -ENODEV if no
path is found and handle the error in the callers.

Fixes: 5aa8e7647676 ("drm/mediatek: dpi/dsi: Change the getting possible_crtc way")
Suggested-by: NĂ­colas F. R. A. Prado <nfraprado@collabora.com>
Signed-off-by: Michael Walle <mwalle@kernel.org>
Link: https://patchwork.kernel.org/project/dri-devel/patch/20240606092122.2026313-1-mwalle@kernel.org/
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/mtk_ddp_comp.c
drivers/gpu/drm/mediatek/mtk_ddp_comp.h
drivers/gpu/drm/mediatek/mtk_dpi.c
drivers/gpu/drm/mediatek/mtk_dsi.c