bcm27xx: add support for linux v5.15
[openwrt/staging/chunkeey.git] / target / linux / bcm27xx / patches-5.15 / 950-0759-drm-vc4-txp-Don-t-set-TXP_VSTART_AT_EOF.patch
1 From b93868be23764905325c200832d58c4f2c0dda7a Mon Sep 17 00:00:00 2001
2 From: Maxime Ripard <maxime@cerno.tech>
3 Date: Fri, 4 Mar 2022 15:55:25 +0100
4 Subject: [PATCH] drm/vc4: txp: Don't set TXP_VSTART_AT_EOF
5
6 The TXP_VSTART_AT_EOF will generate a second VSTART signal to the HVS.
7 However, the HVS waits for VSTART to enable the FIFO and will thus start
8 filling the FIFO before the start of the frame.
9
10 This leads to corruption at the beginning of the first frame, and
11 content from the previous frame at the beginning of the next frames.
12
13 Since one VSTART is enough, let's get rid of it.
14
15 Fixes: 008095e065a8 ("drm/vc4: Add support for the transposer block")
16 Signed-off-by: Maxime Ripard <maxime@cerno.tech>
17 ---
18 drivers/gpu/drm/vc4/vc4_txp.c | 2 +-
19 1 file changed, 1 insertion(+), 1 deletion(-)
20
21 --- a/drivers/gpu/drm/vc4/vc4_txp.c
22 +++ b/drivers/gpu/drm/vc4/vc4_txp.c
23 @@ -298,7 +298,7 @@ static void vc4_txp_connector_atomic_com
24 if (WARN_ON(i == ARRAY_SIZE(drm_fmts)))
25 return;
26
27 - ctrl = TXP_GO | TXP_VSTART_AT_EOF | TXP_EI |
28 + ctrl = TXP_GO | TXP_EI |
29 VC4_SET_FIELD(0xf, TXP_BYTE_ENABLE) |
30 VC4_SET_FIELD(txp_fmts[i], TXP_FORMAT);
31