diff options
author | yannick fertre <yannick.fertre@st.com> | 2018-03-02 15:59:21 +0100 |
---|---|---|
committer | Anatolij Gustschin <agust@denx.de> | 2018-03-19 10:50:25 +0100 |
commit | c0fb2fc0453a9a3cf1486887d7b5685af6767040 (patch) | |
tree | f0f508e02aea5ed2347aa90f98127ab7de57161b /drivers | |
parent | 1ef9aed92a577a4bb67f5ec99440fe81e87988a1 (diff) |
video: stm32: stm32_ltdc: add reset
Add reset of LTDC display controller.
Signed-off-by: yannick fertre <yannick.fertre@st.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/stm32/stm32_ltdc.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/video/stm32/stm32_ltdc.c b/drivers/video/stm32/stm32_ltdc.c index b417ac260a..d8784f1590 100644 --- a/drivers/video/stm32/stm32_ltdc.c +++ b/drivers/video/stm32/stm32_ltdc.c @@ -11,6 +11,7 @@ #include <clk.h> #include <dm.h> #include <panel.h> +#include <reset.h> #include <video.h> #include <asm/io.h> #include <asm/arch/gpio.h> @@ -302,6 +303,7 @@ static int stm32_ltdc_probe(struct udevice *dev) struct stm32_ltdc_priv *priv = dev_get_priv(dev); struct udevice *panel; struct clk pclk, pxclk; + struct reset_ctl rst; int ret; priv->regs = (void *)dev_read_addr(dev); @@ -316,6 +318,15 @@ static int stm32_ltdc_probe(struct udevice *dev) return ret; } + ret = reset_get_by_index(dev, 0, &rst); + if (ret) { + debug("%s: missing ltdc hardware reset\n", __func__); + return -ENODEV; + } + + /* Reset */ + reset_deassert(&rst); + ret = panel_enable_backlight(panel); if (ret) { debug("%s: panel %s enable backlight error %d\n", |