It is not necessary to write dplane->ctrl0 under the CRTC spinlock, as this is only accessed under process context where the DRM locks will protect us instead.
Signed-off-by: Russell King rmk+kernel@arm.linux.org.uk --- drivers/gpu/drm/armada/armada_overlay.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c index 9686d79335a0..e7e020d4372a 100644 --- a/drivers/gpu/drm/armada/armada_overlay.c +++ b/drivers/gpu/drm/armada/armada_overlay.c @@ -275,9 +275,10 @@ static int armada_ovl_plane_disable(struct drm_plane *plane)
spin_lock_irq(&dcrtc->irq_lock); armada_drm_vbl_event_remove(dcrtc, &dplane->vbl.update); - dplane->ctrl0 = 0; spin_unlock_irq(&dcrtc->irq_lock);
+ dplane->ctrl0 = 0; + armada_drm_crtc_plane_disable(dcrtc, plane);
fb = xchg(&dplane->old_fb, NULL);