drm/rockchip: vop2: disable planes when disabling the crtc
authorMichael Tretter <m.tretter@pengutronix.de>
Fri, 28 Oct 2022 09:52:06 +0000 (11:52 +0200)
committerHeiko Stuebner <heiko@sntech.de>
Sat, 29 Oct 2022 12:41:29 +0000 (14:41 +0200)
commit447fb14bf07905b880c9ed1ea92c53d6dd0649d7
tree855c5a5109a4cfbe15552619c66f24a3c88db96a
parent471bf2406c043491b1a8288e5f04bc278f7d7ca1
drm/rockchip: vop2: disable planes when disabling the crtc

The vop2 driver needs to explicitly disable the planes if the crtc is
disabled. Unless the planes are explicitly disabled, the address of the
last framebuffer is kept in the registers of the VOP2. When re-enabling
the encoder after it has been disabled by the driver, the VOP2 will
start and read the framebuffer that has been freed but is still pointed
to by the register. The iommu will catch these read accesses and print
errors.

Explicitly disable the planes when the crtc is disabled to reset the
registers.

Signed-off-by: Michael Tretter <m.tretter@pengutronix.de>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20221028095206.2136601-3-m.tretter@pengutronix.de
drivers/gpu/drm/rockchip/rockchip_drm_vop2.c