Commit d57294c1 authored by Chen-Yu Tsai's avatar Chen-Yu Tsai Committed by Maxime Ripard

drm/sun4i: tcon: Unconditionally reset the TCON

When binding the TCON, we were checking the reset control status and
asserting reset if it wasn't in reset. The check failed to account for
the reset control API returning error codes if the status callback was
not implemented.

Since we want the TCON to be reset in all cases, use reset_control_reset
to force a reset instead.

Fixes: 9026e0d1 ("drm: Add Allwinner A10 Display Engine support")
Signed-off-by: default avatarChen-Yu Tsai <wens@csie.org>
Signed-off-by: default avatarMaxime Ripard <maxime.ripard@free-electrons.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20170908090016.32224-1-wens@csie.org
parent 1f2308f7
...@@ -530,10 +530,7 @@ static int sun4i_tcon_bind(struct device *dev, struct device *master, ...@@ -530,10 +530,7 @@ static int sun4i_tcon_bind(struct device *dev, struct device *master,
} }
/* Make sure our TCON is reset */ /* Make sure our TCON is reset */
if (!reset_control_status(tcon->lcd_rst)) ret = reset_control_reset(tcon->lcd_rst);
reset_control_assert(tcon->lcd_rst);
ret = reset_control_deassert(tcon->lcd_rst);
if (ret) { if (ret) {
dev_err(dev, "Couldn't deassert our reset line\n"); dev_err(dev, "Couldn't deassert our reset line\n");
return ret; return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment