drm/vc4: hvs: Reset muxes at probe time
authorMaxime Ripard <maxime@cerno.tech>
Mon, 28 Mar 2022 15:36:54 +0000 (17:36 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Jun 2022 08:22:45 +0000 (10:22 +0200)
commit0e26a6da02e63b75b629573d13966c36aa6264f0
treed28eb7b41fc4a3c4053bcdd89f1f68dc9d8d7338
parentfdb3da70ad0297a5910f35c86fd0ff43eafad4a1
drm/vc4: hvs: Reset muxes at probe time

[ Upstream commit 8514e6b1f40319e31ac4aa3fbf606796786366c9 ]

By default, the HVS driver will force the HVS output 3 to be muxed to
the HVS channel 2. However, the Transposer can only be assigned to the
HVS channel 2, so whenever we try to use the writeback connector, we'll
mux its associated output (Output 2) to the channel 2.

This leads to both the output 2 and 3 feeding from the same channel,
which is explicitly discouraged in the documentation.

In order to avoid this, let's reset all the output muxes to their reset
value.

Fixes: 87ebcd42fb7b ("drm/vc4: crtc: Assign output to channel automatically")
Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://lore.kernel.org/r/20220328153659.2382206-2-maxime@cerno.tech
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/gpu/drm/vc4/vc4_hvs.c