[PATCH] drm/panel: ronbo-rb070d30: Ignore DCS errors in disable()

From: Hsieh Hung-En

Date: Tue Sep 29 2026 - 21:32:25 EST


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@xxxxxxxxxxxx>
Signed-off-by: Hsieh Hung-En <hungen3108@xxxxxxxxx>
---

Notes:
This applies on top of:
https://lore.kernel.org/all/20260929080143.559685-1-hungen3108@xxxxxxxxx/

As suggested by Doug in:
https://lore.kernel.org/all/CAD=FV=UU+NS0T-Ga8i12QKTNCYOu8kar_6=NsH0=4FVUFyKB7A@xxxxxxxxxxxxxx/

Compile-tested on arm64 with W=1; not tested on hardware.

drivers/gpu/drm/panel/panel-ronbo-rb070d30.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c b/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c
index ebe6352db..2d54182fe 100644
--- a/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c
+++ b/drivers/gpu/drm/panel/panel-ronbo-rb070d30.c
@@ -87,7 +87,7 @@ 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;
+ return 0;
}

/* Default timings */
--
2.43.0