drm/stm: ltdc: rework reset sequence
authorYannick Fertre <yannick.fertre@st.com>
Fri, 29 Jun 2018 11:22:35 +0000 (13:22 +0200)
committerBenjamin Gaignard <benjamin.gaignard@linaro.org>
Fri, 6 Jul 2018 08:15:47 +0000 (10:15 +0200)
Reset must be properly assert before deassert.
This is important if there is an early boot splash screen
before the kernel start up.

Signed-off-by: Yannick Fertre <yannick.fertre@st.com>
Reviewed-by: Philippe Cornu <philippe.cornu@st.com>
Tested-by: Philippe Cornu <philippe.cornu@st.com>
Signed-off-by: Benjamin Gaignard <benjamin.gaignard@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/1530271355-5608-1-git-send-email-yannick.fertre@st.com
drivers/gpu/drm/stm/ltdc.c

index f1f37336a57add716077e586cbe154a8fa4dc448..808d9fb627e97ab07562c17183ade0508abfe0b7 100644 (file)
@@ -1082,8 +1082,11 @@ int ltdc_load(struct drm_device *ddev)
                }
        }
 
-       if (!IS_ERR(rstc))
+       if (!IS_ERR(rstc)) {
+               reset_control_assert(rstc);
+               usleep_range(10, 20);
                reset_control_deassert(rstc);
+       }
 
        /* Disable interrupts */
        reg_clear(ldev->regs, LTDC_IER,