drm/vc4: hdmi: Implement finer-grained hooks 87/243887/1
authorMaxime Ripard <maxime@cerno.tech>
Tue, 25 Aug 2020 09:26:58 +0000 (18:26 +0900)
committerHoegeun Kwon <hoegeun.kwon@samsung.com>
Fri, 11 Sep 2020 01:46:39 +0000 (10:46 +0900)
commit489ac6bc9de2adc1ff7a648ea18b6d8bcf081d7c
treed3b0255c7390ee4c8faa4f713255489c05cd6e51
parente191c6f5f87b90c2044912afa9e70e5a35367fe5
drm/vc4: hdmi: Implement finer-grained hooks

In order to prevent some pixels getting stuck in an unflushable FIFO on
bcm2711, we need to enable the HVS, the pixelvalve (the CRTC) and the HDMI
controller (the encoder) in an intertwined way, and with tight delays.

However, the atomic callbacks don't really provide a way to work with
either constraints, so we need to roll our own callbacks so that we can
provide those guarantees.

Since those callbacks have been implemented and called in the CRTC code, we
can just implement them in the HDMI driver now.

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Tested-by: Chanwoo Choi <cw00.choi@samsung.com>
Tested-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Tested-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
Link: https://patchwork.freedesktop.org/patch/msgid/2e9226d971117065f3b97e597f04f7fe2f0c134c.1599120059.git-series.maxime@cerno.tech
[hoegeun.kwon: Needed to troubleshoot page flip timed out issue.]
Signed-off-by: Hoegeun Kwon <hoegeun.kwon@samsung.com>
Change-Id: Ice9a866f353d8e478e8f24c66b6e2e836e474817
drivers/gpu/drm/vc4/vc4_hdmi.c