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 <[email protected]>
---
drivers/gpu/drm/stm/ltdc.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c
index 96d20c2..8f4606d 100644
--- a/drivers/gpu/drm/stm/ltdc.c
+++ b/drivers/gpu/drm/stm/ltdc.c
@@ -1130,8 +1130,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,
--
1.9.1
Hi Yannick,
On 06/29/2018 01:22 PM, Yannick Fertre wrote:
> 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 <[email protected]>
> ---
> drivers/gpu/drm/stm/ltdc.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c
> index 96d20c2..8f4606d 100644
> --- a/drivers/gpu/drm/stm/ltdc.c
> +++ b/drivers/gpu/drm/stm/ltdc.c
> @@ -1130,8 +1130,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);
> + }
Thank you for your patch,
Reviewed-by: Philippe Cornu <[email protected]>
Tested-by: Philippe Cornu <[email protected]>
Philippe :-)
>
> /* Disable interrupts */
> reg_clear(ldev->regs, LTDC_IER,
>
2018-06-29 13:22 GMT+02:00 Yannick Fertre <[email protected]>:
> 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 <[email protected]>
Applied on drm-misc-next.
Thansk,
Benjamin
> ---
> drivers/gpu/drm/stm/ltdc.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/stm/ltdc.c b/drivers/gpu/drm/stm/ltdc.c
> index 96d20c2..8f4606d 100644
> --- a/drivers/gpu/drm/stm/ltdc.c
> +++ b/drivers/gpu/drm/stm/ltdc.c
> @@ -1130,8 +1130,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,
> --
> 1.9.1
>