[PATCH 02/13] drm/omap: acx565akm: remove non-DT support

Laurent Pinchart laurent.pinchart at ideasonboard.com
Fri May 12 12:10:31 UTC 2017


Hi Tomi,

Thank you for the patch.

On Friday 12 May 2017 13:41:31 Tomi Valkeinen wrote:
> Non-DT booting is no longer supported, so remove legacy code.
> 
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen at ti.com>
> ---
>  .../drm/omapdrm/displays/panel-sony-acx565akm.c    | 50 +++----------------
>  1 file changed, 6 insertions(+), 44 deletions(-)
> 
> diff --git a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
> b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c index
> 5ab39e0060f2..be368868f77f 100644
> --- a/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
> +++ b/drivers/gpu/drm/omapdrm/displays/panel-sony-acx565akm.c
> @@ -32,8 +32,6 @@
>  #include <linux/of.h>
>  #include <linux/of_gpio.h>

Slightly out of scope for this patch, it would be nice to convert the driver 
to gpiod.

> 
> -#include <video/omap-panel-data.h>
> -
>  #include "../dss/omapdss.h"
> 
>  #define MIPID_CMD_READ_DISP_ID		0x04
> @@ -69,7 +67,6 @@ struct panel_drv_data {
>  	struct omap_dss_device *in;
> 
>  	int reset_gpio;
> -	int datapairs;
> 
>  	struct videomode vm;
> 
> @@ -547,9 +544,6 @@ static int acx565akm_panel_power_on(struct
> omap_dss_device *dssdev)
> 
>  	in->ops.sdi->set_timings(in, &ddata->vm);
> 
> -	if (ddata->datapairs > 0)
> -		in->ops.sdi->set_datapairs(in, ddata->datapairs);
> -
>  	r = in->ops.sdi->enable(in);
>  	if (r) {
>  		pr_err("%s sdi enable failed\n", __func__);
> @@ -701,32 +695,6 @@ static struct omap_dss_driver acx565akm_ops = {
>  	.get_resolution	= omapdss_default_get_resolution,
>  };
> 
> -static int acx565akm_probe_pdata(struct spi_device *spi)
> -{
> -	const struct panel_acx565akm_platform_data *pdata;
> -	struct panel_drv_data *ddata = dev_get_drvdata(&spi->dev);
> -	struct omap_dss_device *dssdev, *in;
> -
> -	pdata = dev_get_platdata(&spi->dev);
> -
> -	ddata->reset_gpio = pdata->reset_gpio;
> -
> -	in = omap_dss_find_output(pdata->source);
> -	if (in == NULL) {
> -		dev_err(&spi->dev, "failed to find video source '%s'\n",
> -				pdata->source);
> -		return -EPROBE_DEFER;
> -	}
> -	ddata->in = in;
> -
> -	ddata->datapairs = pdata->datapairs;
> -
> -	dssdev = &ddata->dssdev;
> -	dssdev->name = pdata->name;
> -
> -	return 0;
> -}
> -
>  static int acx565akm_probe_of(struct spi_device *spi)
>  {
>  	struct panel_drv_data *ddata = dev_get_drvdata(&spi->dev);
> @@ -754,6 +722,9 @@ static int acx565akm_probe(struct spi_device *spi)
> 
>  	dev_dbg(&spi->dev, "%s\n", __func__);
> 
> +	if (!spi->dev.of_node)
> +		return -ENODEV;
> +

This can't happen (I won't repeat the comment for the other patches in the 
series, please take it into account where applicable).

>  	spi->mode = SPI_MODE_3;
> 
>  	ddata = devm_kzalloc(&spi->dev, sizeof(*ddata), GFP_KERNEL);
> @@ -766,18 +737,9 @@ static int acx565akm_probe(struct spi_device *spi)
> 
>  	mutex_init(&ddata->mutex);
> 
> -	if (dev_get_platdata(&spi->dev)) {
> -		r = acx565akm_probe_pdata(spi);
> -		if (r)
> -			return r;
> -	} else if (spi->dev.of_node) {
> -		r = acx565akm_probe_of(spi);
> -		if (r)
> -			return r;
> -	} else {
> -		dev_err(&spi->dev, "platform data missing!\n");
> -		return -ENODEV;
> -	}
> +	r = acx565akm_probe_of(spi);
> +	if (r)
> +		return r;
> 
>  	if (gpio_is_valid(ddata->reset_gpio)) {
>  		r = devm_gpio_request_one(&spi->dev, ddata->reset_gpio,

-- 
Regards,

Laurent Pinchart



More information about the dri-devel mailing list