drm/vc4: hvs: Remove dlist setup duplication
authorMaxime Ripard <maxime@cerno.tech>
Thu, 31 Mar 2022 14:37:41 +0000 (16:37 +0200)
committerMaxime Ripard <maxime@cerno.tech>
Wed, 6 Apr 2022 13:18:01 +0000 (15:18 +0200)
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 <maxime@cerno.tech>
Acked-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://lore.kernel.org/r/20220331143744.777652-5-maxime@cerno.tech
drivers/gpu/drm/vc4/vc4_hvs.c

index d225eea..71aa508 100644 (file)
@@ -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);