Message ID | 20240503143327.RFT.v2.1.I784238de4810658212a5786b219f128460562a37@changeid (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/panel: Remove most store/double-check of prepared/enabled state | expand |
On Fri May 3, 2024 at 11:32 PM CEST, Douglas Anderson wrote: > As talked about in commit d2aacaf07395 ("drm/panel: Check for already > prepared/enabled in drm_panel"), we want to remove needless code from > panel drivers that was storing and double-checking the > prepared/enabled state. Even if someone was relying on the > double-check before, that double-check is now in the core and not > needed in individual drivers. > > Cc: Luca Weiss <luca.weiss@fairphone.com> > Cc: Konrad Dybcio <konrad.dybcio@linaro.org> > Signed-off-by: Douglas Anderson <dianders@chromium.org> Seems to match with the changes I did for another (generated) panel driver I upstreamed - see also: https://github.com/msm8916-mainline/linux-mdss-dsi-panel-driver-generator/commit/74c104440dfd828aa94194fd279c0c505ab55854 Functionally also seems to be fine, I don't see any problems. Thanks! Tested-by: Luca Weiss <luca.weiss@fairphone.com> Regards Luca > --- > > Changes in v2: > - New > > drivers/gpu/drm/panel/panel-raydium-rm692e5.c | 10 ---------- > 1 file changed, 10 deletions(-) > > diff --git a/drivers/gpu/drm/panel/panel-raydium-rm692e5.c b/drivers/gpu/drm/panel/panel-raydium-rm692e5.c > index a613ba5b816c..21d97f6b8a2f 100644 > --- a/drivers/gpu/drm/panel/panel-raydium-rm692e5.c > +++ b/drivers/gpu/drm/panel/panel-raydium-rm692e5.c > @@ -23,7 +23,6 @@ struct rm692e5_panel { > struct drm_dsc_config dsc; > struct regulator_bulk_data supplies[3]; > struct gpio_desc *reset_gpio; > - bool prepared; > }; > > static inline struct rm692e5_panel *to_rm692e5_panel(struct drm_panel *panel) > @@ -171,9 +170,6 @@ static int rm692e5_prepare(struct drm_panel *panel) > struct device *dev = &ctx->dsi->dev; > int ret; > > - if (ctx->prepared) > - return 0; > - > ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies); > if (ret < 0) { > dev_err(dev, "Failed to enable regulators: %d\n", ret); > @@ -213,8 +209,6 @@ static int rm692e5_prepare(struct drm_panel *panel) > > mipi_dsi_generic_write_seq(ctx->dsi, 0xfe, 0x00); > > - ctx->prepared = true; > - > return 0; > } > > @@ -222,13 +216,9 @@ static int rm692e5_unprepare(struct drm_panel *panel) > { > struct rm692e5_panel *ctx = to_rm692e5_panel(panel); > > - if (!ctx->prepared) > - return 0; > - > gpiod_set_value_cansleep(ctx->reset_gpio, 1); > regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies); > > - ctx->prepared = false; > return 0; > } >
diff --git a/drivers/gpu/drm/panel/panel-raydium-rm692e5.c b/drivers/gpu/drm/panel/panel-raydium-rm692e5.c index a613ba5b816c..21d97f6b8a2f 100644 --- a/drivers/gpu/drm/panel/panel-raydium-rm692e5.c +++ b/drivers/gpu/drm/panel/panel-raydium-rm692e5.c @@ -23,7 +23,6 @@ struct rm692e5_panel { struct drm_dsc_config dsc; struct regulator_bulk_data supplies[3]; struct gpio_desc *reset_gpio; - bool prepared; }; static inline struct rm692e5_panel *to_rm692e5_panel(struct drm_panel *panel) @@ -171,9 +170,6 @@ static int rm692e5_prepare(struct drm_panel *panel) struct device *dev = &ctx->dsi->dev; int ret; - if (ctx->prepared) - return 0; - ret = regulator_bulk_enable(ARRAY_SIZE(ctx->supplies), ctx->supplies); if (ret < 0) { dev_err(dev, "Failed to enable regulators: %d\n", ret); @@ -213,8 +209,6 @@ static int rm692e5_prepare(struct drm_panel *panel) mipi_dsi_generic_write_seq(ctx->dsi, 0xfe, 0x00); - ctx->prepared = true; - return 0; } @@ -222,13 +216,9 @@ static int rm692e5_unprepare(struct drm_panel *panel) { struct rm692e5_panel *ctx = to_rm692e5_panel(panel); - if (!ctx->prepared) - return 0; - gpiod_set_value_cansleep(ctx->reset_gpio, 1); regulator_bulk_disable(ARRAY_SIZE(ctx->supplies), ctx->supplies); - ctx->prepared = false; return 0; }
As talked about in commit d2aacaf07395 ("drm/panel: Check for already prepared/enabled in drm_panel"), we want to remove needless code from panel drivers that was storing and double-checking the prepared/enabled state. Even if someone was relying on the double-check before, that double-check is now in the core and not needed in individual drivers. Cc: Luca Weiss <luca.weiss@fairphone.com> Cc: Konrad Dybcio <konrad.dybcio@linaro.org> Signed-off-by: Douglas Anderson <dianders@chromium.org> --- Changes in v2: - New drivers/gpu/drm/panel/panel-raydium-rm692e5.c | 10 ---------- 1 file changed, 10 deletions(-)