mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
drm/panel: ronbo-rb070d30: Ignore DCS errors in disable()
If rb070d30_panel_disable() returns an error, drm_panel_disable() skips clearing panel->enabled. unprepare() still powers the panel off, but the next drm_panel_enable() sees the panel as already enabled and does nothing, so the panel stays dark. Always return 0 from disable(). A failed ENTER_SLEEP_MODE is still logged by mipi_dsi_dcs_enter_sleep_mode_multi(). Suggested-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Hsieh Hung-En <hungen3108@gmail.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://patch.msgid.link/20261001004940.110776-1-hungen3108@gmail.com
This commit is contained in:
parent
f5c3d702f4
commit
00efe8a685
|
|
@ -87,7 +87,13 @@ static int rb070d30_panel_disable(struct drm_panel *panel)
|
|||
struct mipi_dsi_multi_context dsi_ctx = { .dsi = ctx->dsi };
|
||||
|
||||
mipi_dsi_dcs_enter_sleep_mode_multi(&dsi_ctx);
|
||||
return dsi_ctx.accum_err;
|
||||
|
||||
/*
|
||||
* Returning an error would leave panel->enabled set, causing the
|
||||
* next enable to be skipped even after unprepare powers off the panel.
|
||||
* The helper above already logs any command failure.
|
||||
*/
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Default timings */
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user