diff options
author | Douglas Anderson <dianders@chromium.org> | 2021-07-30 08:46:02 -0700 |
---|---|---|
committer | Sam Ravnborg <sam@ravnborg.org> | 2021-07-31 20:03:24 +0200 |
commit | e183bf31cf0d3a05162e633e428350ed176ce926 (patch) | |
tree | 54d5775466ec04238cc6138ed962fadbf2038cb2 /drivers | |
parent | acb06210b096830e28e9ffd2c6501fe99bdb10fd (diff) | |
download | linux-stable-e183bf31cf0d3a05162e633e428350ed176ce926.tar.gz linux-stable-e183bf31cf0d3a05162e633e428350ed176ce926.tar.bz2 linux-stable-e183bf31cf0d3a05162e633e428350ed176ce926.zip |
drm/bridge: ti-sn65dsi86: Add some 100 us delays
The manual has always said that we need 100 us delays in a few
places. Though it hasn't seemed to be a big deal to skip these, let's
add them in case it makes something happier.
NOTE: this fixes no known issues but it seems good to make it right.
Fixes: a095f15c00e2 ("drm/bridge: add support for sn65dsi86 bridge driver")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Acked-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20210730084534.v2.3.I842d483139531aa4651da8338512fdf0171ff23c@changeid
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/bridge/ti-sn65dsi86.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index 5e932070a1c3..cd0fccdd8dfd 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -307,6 +307,9 @@ static int __maybe_unused ti_sn65dsi86_resume(struct device *dev) return ret; } + /* td2: min 100 us after regulators before enabling the GPIO */ + usleep_range(100, 110); + gpiod_set_value(pdata->enable_gpio, 1); /* @@ -1096,6 +1099,9 @@ static void ti_sn_bridge_pre_enable(struct drm_bridge *bridge) if (!pdata->refclk) ti_sn65dsi86_enable_comms(pdata); + + /* td7: min 100 us after enable before DSI data */ + usleep_range(100, 110); } static void ti_sn_bridge_post_disable(struct drm_bridge *bridge) |