[RFT PATCH v2 01/48] drm/panel: raydium-rm692e5: Stop tracking prepared

Luca Weiss luca.weiss at fairphone.com
Fri May 10 06:39:41 UTC 2024


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 at fairphone.com>
> Cc: Konrad Dybcio <konrad.dybcio at linaro.org>
> Signed-off-by: Douglas Anderson <dianders at 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 at 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;
>  }
>  



More information about the dri-devel mailing list