summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvinal Kumar <avinal.xlvii@gmail.com>2026-04-17 11:48:42 +0530
committerDouglas Anderson <dianders@chromium.org>2026-04-24 10:12:20 -0700
commit03af6c3afc4893988ceed54531f5dde4bebd6024 (patch)
treee7c441af82dae6f1afa13c0047dcd66ae88d6302
parentac7e1a9819d6ada9a9800d6d26256e5258711b99 (diff)
downloadlinux-03af6c3afc4893988ceed54531f5dde4bebd6024.tar.gz
linux-03af6c3afc4893988ceed54531f5dde4bebd6024.zip
drm/panel: panasonic-vvx10f034n00: transition to mipi_dsi wrapped functions
Change the panasonic-vvx10f034n00 panel to multi style functions for improved error handling and remove redundant error printout. Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Douglas Anderson <dianders@chromium.org> Signed-off-by: Douglas Anderson <dianders@chromium.org> Link: https://patch.msgid.link/20260417061842.66631-3-avinal.xlvii@gmail.com
-rw-r--r--drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c b/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c
index 3c3308fc55df..d21d93a0700e 100644
--- a/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c
+++ b/drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c
@@ -44,14 +44,23 @@ static inline struct wuxga_nt_panel *to_wuxga_nt_panel(struct drm_panel *panel)
static int wuxga_nt_panel_on(struct wuxga_nt_panel *wuxga_nt)
{
- return mipi_dsi_turn_on_peripheral(wuxga_nt->dsi);
+ struct mipi_dsi_multi_context dsi_ctx = {
+ .dsi = wuxga_nt->dsi
+ };
+
+ mipi_dsi_turn_on_peripheral_multi(&dsi_ctx);
+ return dsi_ctx.accum_err;
}
static int wuxga_nt_panel_disable(struct drm_panel *panel)
{
struct wuxga_nt_panel *wuxga_nt = to_wuxga_nt_panel(panel);
+ struct mipi_dsi_multi_context dsi_ctx = {
+ .dsi = wuxga_nt->dsi
+ };
- return mipi_dsi_shutdown_peripheral(wuxga_nt->dsi);
+ mipi_dsi_shutdown_peripheral_multi(&dsi_ctx);
+ return dsi_ctx.accum_err;
}
static int wuxga_nt_panel_unprepare(struct drm_panel *panel)
@@ -94,15 +103,8 @@ static int wuxga_nt_panel_prepare(struct drm_panel *panel)
msleep(250);
ret = wuxga_nt_panel_on(wuxga_nt);
- if (ret < 0) {
- dev_err(panel->dev, "failed to set panel on: %d\n", ret);
- goto poweroff;
- }
-
- return 0;
-
-poweroff:
- regulator_disable(wuxga_nt->supply);
+ if (ret < 0)
+ regulator_disable(wuxga_nt->supply);
return ret;
}