Setting the DISPLISTx register needs to occur in every case, and we
don't need to protect the register using the event_lock, so we can just
move it after the if branches and simplify a bit the function.

Signed-off-by: Maxime Ripard <max...@cerno.tech>
---
 drivers/gpu/drm/vc4/vc4_hvs.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/vc4/vc4_hvs.c b/drivers/gpu/drm/vc4/vc4_hvs.c
index d225eea6e640..71aa5081eaa3 100644
--- a/drivers/gpu/drm/vc4/vc4_hvs.c
+++ b/drivers/gpu/drm/vc4/vc4_hvs.c
@@ -402,15 +402,12 @@ static void vc4_hvs_update_dlist(struct drm_crtc *crtc)
                        crtc->state->event = NULL;
                }
 
-               HVS_WRITE(SCALER_DISPLISTX(vc4_state->assigned_channel),
-                         vc4_state->mm.start);
-
                spin_unlock_irqrestore(&dev->event_lock, flags);
-       } else {
-               HVS_WRITE(SCALER_DISPLISTX(vc4_state->assigned_channel),
-                         vc4_state->mm.start);
        }
 
+       HVS_WRITE(SCALER_DISPLISTX(vc4_state->assigned_channel),
+                 vc4_state->mm.start);
+
        spin_lock_irqsave(&vc4_crtc->irq_lock, flags);
        vc4_crtc->current_dlist = vc4_state->mm.start;
        spin_unlock_irqrestore(&vc4_crtc->irq_lock, flags);
-- 
2.35.1

Reply via email to