01ad9324151795accd4593f7bbfc67c0753c22b6
[openwrt/staging/ansuel.git] /
1 From 3660abb4a8523e988f1345985e89149804e50ebe Mon Sep 17 00:00:00 2001
2 From: Dave Stevenson <dave.stevenson@raspberrypi.com>
3 Date: Thu, 24 Aug 2023 15:36:21 +0100
4 Subject: [PATCH] drm/vc4: Fix dlist debug not resetting the next entry pointer
5
6 The debug function to display the dlists didn't reset next_entry_start
7 when starting each display, so resulting in not stopping the
8 list at the correct place.
9
10 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
11 ---
12 drivers/gpu/drm/vc4/vc4_hvs.c | 3 ++-
13 1 file changed, 2 insertions(+), 1 deletion(-)
14
15 --- a/drivers/gpu/drm/vc4/vc4_hvs.c
16 +++ b/drivers/gpu/drm/vc4/vc4_hvs.c
17 @@ -110,7 +110,7 @@ static int vc4_hvs_debugfs_dlist(struct
18 struct vc4_dev *vc4 = to_vc4_dev(dev);
19 struct vc4_hvs *hvs = vc4->hvs;
20 struct drm_printer p = drm_seq_file_printer(m);
21 - unsigned int next_entry_start = 0;
22 + unsigned int next_entry_start;
23 unsigned int i, j;
24 u32 dlist_word, dispstat;
25
26 @@ -124,6 +124,7 @@ static int vc4_hvs_debugfs_dlist(struct
27 }
28
29 drm_printf(&p, "HVS chan %u:\n", i);
30 + next_entry_start = 0;
31
32 for (j = HVS_READ(SCALER_DISPLISTX(i)); j < 256; j++) {
33 dlist_word = readl((u32 __iomem *)vc4->hvs->dlist + j);