[PATCH 47/51] drm/mipi-dbi: Move drm_mode_config_init into mipi library

Sam Ravnborg sam at ravnborg.org
Fri Feb 28 20:34:50 UTC 2020


On Thu, Feb 27, 2020 at 07:15:18PM +0100, Daniel Vetter wrote:
> 7/7 drivers agree that's the right choice, let's do this.
> 
> This avoids duplicating the same old error checking code over all 7
> drivers, which is the motivation here.
> 
> Reviewed-by: Noralf Trønnes <noralf at tronnes.org>
> Tested-by: Noralf Trønnes <noralf at tronnes.org>
> Signed-off-by: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> Cc: Maxime Ripard <mripard at kernel.org>
> Cc: Thomas Zimmermann <tzimmermann at suse.de>
> Cc: David Airlie <airlied at linux.ie>
> Cc: Daniel Vetter <daniel at ffwll.ch>
> Cc: Eric Anholt <eric at anholt.net>
> Cc: David Lechner <david at lechnology.com>
> Cc: Kamlesh Gurudasani <kamlesh.gurudasani at gmail.com>
> Cc: "Noralf Trønnes" <noralf at tronnes.org>
> Cc: Sam Ravnborg <sam at ravnborg.org>

Acked-by: Sam Ravnborg <sam at ravnborg.org>

> ---
>  drivers/gpu/drm/drm_mipi_dbi.c  | 4 ++++
>  drivers/gpu/drm/tiny/hx8357d.c  | 2 --
>  drivers/gpu/drm/tiny/ili9225.c  | 2 --
>  drivers/gpu/drm/tiny/ili9341.c  | 2 --
>  drivers/gpu/drm/tiny/ili9486.c  | 2 --
>  drivers/gpu/drm/tiny/mi0283qt.c | 2 --
>  drivers/gpu/drm/tiny/st7586.c   | 2 --
>  drivers/gpu/drm/tiny/st7735r.c  | 2 --
>  8 files changed, 4 insertions(+), 14 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_mipi_dbi.c b/drivers/gpu/drm/drm_mipi_dbi.c
> index a678e07508d4..9de1586659be 100644
> --- a/drivers/gpu/drm/drm_mipi_dbi.c
> +++ b/drivers/gpu/drm/drm_mipi_dbi.c
> @@ -510,6 +510,10 @@ int mipi_dbi_dev_init_with_formats(struct mipi_dbi_dev *dbidev,
>  	if (!dbidev->dbi.command)
>  		return -EINVAL;
>  
> +	ret = drm_mode_config_init(drm);
> +	if (ret)
> +		return ret;
> +
>  	dbidev->tx_buf = devm_kmalloc(drm->dev, tx_buf_size, GFP_KERNEL);
>  	if (!dbidev->tx_buf)
>  		return -ENOMEM;
> diff --git a/drivers/gpu/drm/tiny/hx8357d.c b/drivers/gpu/drm/tiny/hx8357d.c
> index 42bc5dadcb1c..c88b84366dc5 100644
> --- a/drivers/gpu/drm/tiny/hx8357d.c
> +++ b/drivers/gpu/drm/tiny/hx8357d.c
> @@ -239,8 +239,6 @@ static int hx8357d_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dc = devm_gpiod_get(dev, "dc", GPIOD_OUT_LOW);
>  	if (IS_ERR(dc)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'dc'\n");
> diff --git a/drivers/gpu/drm/tiny/ili9225.c b/drivers/gpu/drm/tiny/ili9225.c
> index aae88dc5b3f7..fa998a16026c 100644
> --- a/drivers/gpu/drm/tiny/ili9225.c
> +++ b/drivers/gpu/drm/tiny/ili9225.c
> @@ -390,8 +390,6 @@ static int ili9225_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dbi->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
>  	if (IS_ERR(dbi->reset)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
> diff --git a/drivers/gpu/drm/tiny/ili9341.c b/drivers/gpu/drm/tiny/ili9341.c
> index 7d40cb4ff72b..945e15169866 100644
> --- a/drivers/gpu/drm/tiny/ili9341.c
> +++ b/drivers/gpu/drm/tiny/ili9341.c
> @@ -197,8 +197,6 @@ static int ili9341_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dbi->reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
>  	if (IS_ERR(dbi->reset)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
> diff --git a/drivers/gpu/drm/tiny/ili9486.c b/drivers/gpu/drm/tiny/ili9486.c
> index 7d735fc67498..38d293cf5377 100644
> --- a/drivers/gpu/drm/tiny/ili9486.c
> +++ b/drivers/gpu/drm/tiny/ili9486.c
> @@ -211,8 +211,6 @@ static int ili9486_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dbi->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
>  	if (IS_ERR(dbi->reset)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
> diff --git a/drivers/gpu/drm/tiny/mi0283qt.c b/drivers/gpu/drm/tiny/mi0283qt.c
> index 8555a56bce8c..b8c973bc2347 100644
> --- a/drivers/gpu/drm/tiny/mi0283qt.c
> +++ b/drivers/gpu/drm/tiny/mi0283qt.c
> @@ -201,8 +201,6 @@ static int mi0283qt_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dbi->reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
>  	if (IS_ERR(dbi->reset)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
> diff --git a/drivers/gpu/drm/tiny/st7586.c b/drivers/gpu/drm/tiny/st7586.c
> index 427c2561f5f4..1f1a576be93c 100644
> --- a/drivers/gpu/drm/tiny/st7586.c
> +++ b/drivers/gpu/drm/tiny/st7586.c
> @@ -331,8 +331,6 @@ static int st7586_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	bufsize = (st7586_mode.vdisplay + 2) / 3 * st7586_mode.hdisplay;
>  
>  	dbi->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
> diff --git a/drivers/gpu/drm/tiny/st7735r.c b/drivers/gpu/drm/tiny/st7735r.c
> index b447235c3d47..0f48a5a2d3d7 100644
> --- a/drivers/gpu/drm/tiny/st7735r.c
> +++ b/drivers/gpu/drm/tiny/st7735r.c
> @@ -212,8 +212,6 @@ static int st7735r_probe(struct spi_device *spi)
>  	}
>  	drmm_add_final_kfree(drm, dbidev);
>  
> -	drm_mode_config_init(drm);
> -
>  	dbi->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
>  	if (IS_ERR(dbi->reset)) {
>  		DRM_DEV_ERROR(dev, "Failed to get gpio 'reset'\n");
> -- 
> 2.24.1


More information about the dri-devel mailing list