diff mbox

drm: Remove the struct drm_device platformdev field

Message ID 20161217223916.32384-1-laurent.pinchart+renesas@ideasonboard.com (mailing list archive)
State New, archived
Headers show

Commit Message

Laurent Pinchart Dec. 17, 2016, 10:39 p.m. UTC
The field contains a pointer to the parent platform device of the DRM
device. As struct drm_device also contains a dev pointer to the struct
device embedded in the platform_device structure, the platformdev field
is redundant. Remove it and use the dev pointer directly.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
---
 drivers/gpu/drm/armada/armada_drv.c             | 3 +--
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
 drivers/gpu/drm/msm/msm_drv.c                   | 1 -
 drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
 drivers/gpu/drm/sti/sti_drv.c                   | 2 --
 drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
 include/drm/drmP.h                              | 1 -
 11 files changed, 7 insertions(+), 17 deletions(-)

Comments

Daniel Vetter Dec. 18, 2016, 1:16 p.m. UTC | #1
On Sun, Dec 18, 2016 at 12:39:16AM +0200, Laurent Pinchart wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

Oh sweet.

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

> ---
>  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>  include/drm/drmP.h                              | 1 -
>  11 files changed, 7 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 07086b427c22..f6442ed23bcd 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -154,10 +154,9 @@ static int armada_drm_bind(struct device *dev)
>  		return ret;
>  	}
>  
> -	priv->drm.platformdev = to_platform_device(dev);
>  	priv->drm.dev_private = priv;
>  
> -	platform_set_drvdata(priv->drm.platformdev, &priv->drm);
> +	dev_set_drvdata(dev, &priv->drm);
>  
>  	INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
>  	INIT_KFIFO(priv->fb_unref);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index afc2b5d2d5f0..ec1c70d1b682 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -975,7 +975,7 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
>  
>  static int ade_drm_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct ade_data *ade;
>  	struct ade_hw_ctx *ctx;
>  	struct ade_crtc *acrtc;
> @@ -1036,8 +1036,7 @@ static int ade_drm_init(struct drm_device *dev)
>  
>  static void ade_drm_cleanup(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> -	struct ade_data *ade = platform_get_drvdata(pdev);
> +	struct ade_data *ade = dev_get_drvdata(dev->dev);
>  	struct drm_crtc *crtc = &ade->acrtc.base;
>  
>  	drm_crtc_cleanup(crtc);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> index ebd5f4fe4c23..842f70251691 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> @@ -209,8 +209,6 @@ static int kirin_drm_bind(struct device *dev)
>  	if (IS_ERR(drm_dev))
>  		return PTR_ERR(drm_dev);
>  
> -	drm_dev->platformdev = to_platform_device(dev);
> -
>  	ret = kirin_drm_kms_init(drm_dev);
>  	if (ret)
>  		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> index b782efd4b95f..e8e14a502d21 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> @@ -438,7 +438,7 @@ static int modeset_init(struct mdp4_kms *mdp4_kms)
>  
>  struct msm_kms *mdp4_kms_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct mdp4_platform_config *config = mdp4_get_config(pdev);
>  	struct mdp4_kms *mdp4_kms;
>  	struct msm_kms *kms = NULL;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> index 618b2ffed9b4..70eae85cf1de 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> @@ -495,7 +495,7 @@ struct mdp5_cfg_handler *mdp5_cfg_init(struct mdp5_kms *mdp5_kms,
>  		uint32_t major, uint32_t minor)
>  {
>  	struct drm_device *dev = mdp5_kms->dev;
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct mdp5_cfg_handler *cfg_handler;
>  	struct mdp5_cfg_platform *pconfig;
>  	int i, ret = 0;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> index d444a6901fff..f8f48d014978 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> @@ -160,7 +160,7 @@ void msm_mdss_destroy(struct drm_device *dev)
>  
>  int msm_mdss_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct msm_drm_private *priv = dev->dev_private;
>  	struct msm_mdss *mdss;
>  	int ret;
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index e29bb66f55b1..12548642b227 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -364,7 +364,6 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv)
>  	}
>  
>  	platform_set_drvdata(pdev, ddev);
> -	ddev->platformdev = pdev;
>  
>  	priv = kzalloc(sizeof(*priv), GFP_KERNEL);
>  	if (!priv) {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 59348fc41c77..6082e184007d 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -106,7 +106,7 @@ nouveau_name(struct drm_device *dev)
>  	if (dev->pdev)
>  		return nouveau_pci_name(dev->pdev);
>  	else
> -		return nouveau_platform_name(dev->platformdev);
> +		return nouveau_platform_name(to_platform_device(dev->dev));
>  }
>  
>  static int
> @@ -1089,7 +1089,6 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
>  		goto err_free;
>  	}
>  
> -	drm->platformdev = pdev;
>  	platform_set_drvdata(pdev, drm);
>  
>  	return drm;
> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c
> index ff71e25ab5bf..0df0de397d2c 100644
> --- a/drivers/gpu/drm/sti/sti_drv.c
> +++ b/drivers/gpu/drm/sti/sti_drv.c
> @@ -388,8 +388,6 @@ static int sti_bind(struct device *dev)
>  	if (IS_ERR(ddev))
>  		return PTR_ERR(ddev);
>  
> -	ddev->platformdev = to_platform_device(dev);
> -
>  	ret = sti_init(ddev);
>  	if (ret)
>  		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> index bd0a3bd07167..8f7f6a54ee68 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> @@ -245,7 +245,6 @@ static int tilcdc_init(struct drm_driver *ddrv, struct device *dev)
>  	if (IS_ERR(ddev))
>  		return PTR_ERR(ddev);
>  
> -	ddev->platformdev = pdev;
>  	ddev->dev_private = priv;
>  	platform_set_drvdata(pdev, ddev);
>  	drm_mode_config_init(ddev);
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index 0d6c1a13f533..4cc27449d6d7 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -609,7 +609,6 @@ struct drm_device {
>  	struct pci_controller *hose;
>  #endif
>  
> -	struct platform_device *platformdev; /**< Platform device struture */
>  	struct virtio_device *virtdev;
>  
>  	struct drm_sg_mem *sg;	/**< Scatter gather memory */
> -- 
> Regards,
> 
> Laurent Pinchart
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
Laurent Pinchart Dec. 18, 2016, 8:24 p.m. UTC | #2
Hi Daniel,

On Sunday 18 Dec 2016 14:16:26 Daniel Vetter wrote:
> On Sun, Dec 18, 2016 at 12:39:16AM +0200, Laurent Pinchart wrote:
> > The field contains a pointer to the parent platform device of the DRM
> > device. As struct drm_device also contains a dev pointer to the struct
> > device embedded in the platform_device structure, the platformdev field
> > is redundant. Remove it and use the dev pointer directly.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas@ideasonboard.com>
> 
> Oh sweet.
> 
> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Thanks. Now it's your turn for the struct pci_device pointer ;-)

> > ---
> > 
> >  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
> >  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
> >  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
> >  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
> >  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
> >  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
> >  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
> >  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
> >  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
> >  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
> >  include/drm/drmP.h                              | 1 -
> >  11 files changed, 7 insertions(+), 17 deletions(-)
Jyri Sarha Dec. 19, 2016, 8:30 a.m. UTC | #3
On 12/18/16 00:39, Laurent Pinchart wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

Acked-by: Jyri Sarha <jsarha@ti.com>

> ---
>  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>  include/drm/drmP.h                              | 1 -
>  11 files changed, 7 insertions(+), 17 deletions(-)
Vincent Abriou Jan. 3, 2017, 1:49 p.m. UTC | #4
Hi Laurent,

Ok for the sti driver.
Acked-by: Vincent Abriou <vincent.abriou@st.com>

On 12/17/2016 11:39 PM, Laurent Pinchart wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>  include/drm/drmP.h                              | 1 -
>  11 files changed, 7 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 07086b427c22..f6442ed23bcd 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -154,10 +154,9 @@ static int armada_drm_bind(struct device *dev)
>  		return ret;
>  	}
>
> -	priv->drm.platformdev = to_platform_device(dev);
>  	priv->drm.dev_private = priv;
>
> -	platform_set_drvdata(priv->drm.platformdev, &priv->drm);
> +	dev_set_drvdata(dev, &priv->drm);
>
>  	INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
>  	INIT_KFIFO(priv->fb_unref);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index afc2b5d2d5f0..ec1c70d1b682 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -975,7 +975,7 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
>
>  static int ade_drm_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct ade_data *ade;
>  	struct ade_hw_ctx *ctx;
>  	struct ade_crtc *acrtc;
> @@ -1036,8 +1036,7 @@ static int ade_drm_init(struct drm_device *dev)
>
>  static void ade_drm_cleanup(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> -	struct ade_data *ade = platform_get_drvdata(pdev);
> +	struct ade_data *ade = dev_get_drvdata(dev->dev);
>  	struct drm_crtc *crtc = &ade->acrtc.base;
>
>  	drm_crtc_cleanup(crtc);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> index ebd5f4fe4c23..842f70251691 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> @@ -209,8 +209,6 @@ static int kirin_drm_bind(struct device *dev)
>  	if (IS_ERR(drm_dev))
>  		return PTR_ERR(drm_dev);
>
> -	drm_dev->platformdev = to_platform_device(dev);
> -
>  	ret = kirin_drm_kms_init(drm_dev);
>  	if (ret)
>  		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> index b782efd4b95f..e8e14a502d21 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> @@ -438,7 +438,7 @@ static int modeset_init(struct mdp4_kms *mdp4_kms)
>
>  struct msm_kms *mdp4_kms_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct mdp4_platform_config *config = mdp4_get_config(pdev);
>  	struct mdp4_kms *mdp4_kms;
>  	struct msm_kms *kms = NULL;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> index 618b2ffed9b4..70eae85cf1de 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> @@ -495,7 +495,7 @@ struct mdp5_cfg_handler *mdp5_cfg_init(struct mdp5_kms *mdp5_kms,
>  		uint32_t major, uint32_t minor)
>  {
>  	struct drm_device *dev = mdp5_kms->dev;
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct mdp5_cfg_handler *cfg_handler;
>  	struct mdp5_cfg_platform *pconfig;
>  	int i, ret = 0;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> index d444a6901fff..f8f48d014978 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> @@ -160,7 +160,7 @@ void msm_mdss_destroy(struct drm_device *dev)
>
>  int msm_mdss_init(struct drm_device *dev)
>  {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>  	struct msm_drm_private *priv = dev->dev_private;
>  	struct msm_mdss *mdss;
>  	int ret;
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index e29bb66f55b1..12548642b227 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -364,7 +364,6 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv)
>  	}
>
>  	platform_set_drvdata(pdev, ddev);
> -	ddev->platformdev = pdev;
>
>  	priv = kzalloc(sizeof(*priv), GFP_KERNEL);
>  	if (!priv) {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 59348fc41c77..6082e184007d 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -106,7 +106,7 @@ nouveau_name(struct drm_device *dev)
>  	if (dev->pdev)
>  		return nouveau_pci_name(dev->pdev);
>  	else
> -		return nouveau_platform_name(dev->platformdev);
> +		return nouveau_platform_name(to_platform_device(dev->dev));
>  }
>
>  static int
> @@ -1089,7 +1089,6 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
>  		goto err_free;
>  	}
>
> -	drm->platformdev = pdev;
>  	platform_set_drvdata(pdev, drm);
>
>  	return drm;
> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c
> index ff71e25ab5bf..0df0de397d2c 100644
> --- a/drivers/gpu/drm/sti/sti_drv.c
> +++ b/drivers/gpu/drm/sti/sti_drv.c
> @@ -388,8 +388,6 @@ static int sti_bind(struct device *dev)
>  	if (IS_ERR(ddev))
>  		return PTR_ERR(ddev);
>
> -	ddev->platformdev = to_platform_device(dev);
> -
>  	ret = sti_init(ddev);
>  	if (ret)
>  		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> index bd0a3bd07167..8f7f6a54ee68 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> @@ -245,7 +245,6 @@ static int tilcdc_init(struct drm_driver *ddrv, struct device *dev)
>  	if (IS_ERR(ddev))
>  		return PTR_ERR(ddev);
>
> -	ddev->platformdev = pdev;
>  	ddev->dev_private = priv;
>  	platform_set_drvdata(pdev, ddev);
>  	drm_mode_config_init(ddev);
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index 0d6c1a13f533..4cc27449d6d7 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -609,7 +609,6 @@ struct drm_device {
>  	struct pci_controller *hose;
>  #endif
>
> -	struct platform_device *platformdev; /**< Platform device struture */
>  	struct virtio_device *virtdev;
>
>  	struct drm_sg_mem *sg;	/**< Scatter gather memory */
>
Russell King (Oracle) Jan. 3, 2017, 2 p.m. UTC | #5
On Sun, Dec 18, 2016 at 12:39:16AM +0200, Laurent Pinchart wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
> 
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>  include/drm/drmP.h                              | 1 -
>  11 files changed, 7 insertions(+), 17 deletions(-)
> 
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 07086b427c22..f6442ed23bcd 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -154,10 +154,9 @@ static int armada_drm_bind(struct device *dev)
>  		return ret;
>  	}
>  
> -	priv->drm.platformdev = to_platform_device(dev);
>  	priv->drm.dev_private = priv;
>  
> -	platform_set_drvdata(priv->drm.platformdev, &priv->drm);
> +	dev_set_drvdata(dev, &priv->drm);
>  
>  	INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
>  	INIT_KFIFO(priv->fb_unref);

For Armada,

Acked-by: Russell King <rmk+kernel@armlinux.org.uk>

Thanks.
Rob Clark Jan. 3, 2017, 3:29 p.m. UTC | #6
On Sat, Dec 17, 2016 at 5:39 PM, Laurent Pinchart
<laurent.pinchart+renesas@ideasonboard.com> wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

for msm,

Acked-by: Rob Clark <robdclark@gmail.com>

> ---
>  drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>  drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>  drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>  drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>  drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>  drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>  drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>  include/drm/drmP.h                              | 1 -
>  11 files changed, 7 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 07086b427c22..f6442ed23bcd 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -154,10 +154,9 @@ static int armada_drm_bind(struct device *dev)
>                 return ret;
>         }
>
> -       priv->drm.platformdev = to_platform_device(dev);
>         priv->drm.dev_private = priv;
>
> -       platform_set_drvdata(priv->drm.platformdev, &priv->drm);
> +       dev_set_drvdata(dev, &priv->drm);
>
>         INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
>         INIT_KFIFO(priv->fb_unref);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index afc2b5d2d5f0..ec1c70d1b682 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -975,7 +975,7 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
>
>  static int ade_drm_init(struct drm_device *dev)
>  {
> -       struct platform_device *pdev = dev->platformdev;
> +       struct platform_device *pdev = to_platform_device(dev->dev);
>         struct ade_data *ade;
>         struct ade_hw_ctx *ctx;
>         struct ade_crtc *acrtc;
> @@ -1036,8 +1036,7 @@ static int ade_drm_init(struct drm_device *dev)
>
>  static void ade_drm_cleanup(struct drm_device *dev)
>  {
> -       struct platform_device *pdev = dev->platformdev;
> -       struct ade_data *ade = platform_get_drvdata(pdev);
> +       struct ade_data *ade = dev_get_drvdata(dev->dev);
>         struct drm_crtc *crtc = &ade->acrtc.base;
>
>         drm_crtc_cleanup(crtc);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> index ebd5f4fe4c23..842f70251691 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> @@ -209,8 +209,6 @@ static int kirin_drm_bind(struct device *dev)
>         if (IS_ERR(drm_dev))
>                 return PTR_ERR(drm_dev);
>
> -       drm_dev->platformdev = to_platform_device(dev);
> -
>         ret = kirin_drm_kms_init(drm_dev);
>         if (ret)
>                 goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> index b782efd4b95f..e8e14a502d21 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> @@ -438,7 +438,7 @@ static int modeset_init(struct mdp4_kms *mdp4_kms)
>
>  struct msm_kms *mdp4_kms_init(struct drm_device *dev)
>  {
> -       struct platform_device *pdev = dev->platformdev;
> +       struct platform_device *pdev = to_platform_device(dev->dev);
>         struct mdp4_platform_config *config = mdp4_get_config(pdev);
>         struct mdp4_kms *mdp4_kms;
>         struct msm_kms *kms = NULL;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> index 618b2ffed9b4..70eae85cf1de 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> @@ -495,7 +495,7 @@ struct mdp5_cfg_handler *mdp5_cfg_init(struct mdp5_kms *mdp5_kms,
>                 uint32_t major, uint32_t minor)
>  {
>         struct drm_device *dev = mdp5_kms->dev;
> -       struct platform_device *pdev = dev->platformdev;
> +       struct platform_device *pdev = to_platform_device(dev->dev);
>         struct mdp5_cfg_handler *cfg_handler;
>         struct mdp5_cfg_platform *pconfig;
>         int i, ret = 0;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> index d444a6901fff..f8f48d014978 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> @@ -160,7 +160,7 @@ void msm_mdss_destroy(struct drm_device *dev)
>
>  int msm_mdss_init(struct drm_device *dev)
>  {
> -       struct platform_device *pdev = dev->platformdev;
> +       struct platform_device *pdev = to_platform_device(dev->dev);
>         struct msm_drm_private *priv = dev->dev_private;
>         struct msm_mdss *mdss;
>         int ret;
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index e29bb66f55b1..12548642b227 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -364,7 +364,6 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv)
>         }
>
>         platform_set_drvdata(pdev, ddev);
> -       ddev->platformdev = pdev;
>
>         priv = kzalloc(sizeof(*priv), GFP_KERNEL);
>         if (!priv) {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 59348fc41c77..6082e184007d 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -106,7 +106,7 @@ nouveau_name(struct drm_device *dev)
>         if (dev->pdev)
>                 return nouveau_pci_name(dev->pdev);
>         else
> -               return nouveau_platform_name(dev->platformdev);
> +               return nouveau_platform_name(to_platform_device(dev->dev));
>  }
>
>  static int
> @@ -1089,7 +1089,6 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
>                 goto err_free;
>         }
>
> -       drm->platformdev = pdev;
>         platform_set_drvdata(pdev, drm);
>
>         return drm;
> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c
> index ff71e25ab5bf..0df0de397d2c 100644
> --- a/drivers/gpu/drm/sti/sti_drv.c
> +++ b/drivers/gpu/drm/sti/sti_drv.c
> @@ -388,8 +388,6 @@ static int sti_bind(struct device *dev)
>         if (IS_ERR(ddev))
>                 return PTR_ERR(ddev);
>
> -       ddev->platformdev = to_platform_device(dev);
> -
>         ret = sti_init(ddev);
>         if (ret)
>                 goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> index bd0a3bd07167..8f7f6a54ee68 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> @@ -245,7 +245,6 @@ static int tilcdc_init(struct drm_driver *ddrv, struct device *dev)
>         if (IS_ERR(ddev))
>                 return PTR_ERR(ddev);
>
> -       ddev->platformdev = pdev;
>         ddev->dev_private = priv;
>         platform_set_drvdata(pdev, ddev);
>         drm_mode_config_init(ddev);
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index 0d6c1a13f533..4cc27449d6d7 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -609,7 +609,6 @@ struct drm_device {
>         struct pci_controller *hose;
>  #endif
>
> -       struct platform_device *platformdev; /**< Platform device struture */
>         struct virtio_device *virtdev;
>
>         struct drm_sg_mem *sg;  /**< Scatter gather memory */
> --
> Regards,
>
> Laurent Pinchart
>
Xinwei Kong Jan. 4, 2017, 1:22 a.m. UTC | #7
On 2016/12/18 6:39, Laurent Pinchart wrote:
> The field contains a pointer to the parent platform device of the DRM
> device. As struct drm_device also contains a dev pointer to the struct
> device embedded in the platform_device structure, the platformdev field
> is redundant. Remove it and use the dev pointer directly.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
> ---
>   drivers/gpu/drm/armada/armada_drv.c             | 3 +--
>   drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 5 ++---
>   drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 2 --
>   drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c         | 2 +-
>   drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c         | 2 +-
>   drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c        | 2 +-
>   drivers/gpu/drm/msm/msm_drv.c                   | 1 -
>   drivers/gpu/drm/nouveau/nouveau_drm.c           | 3 +--
>   drivers/gpu/drm/sti/sti_drv.c                   | 2 --
>   drivers/gpu/drm/tilcdc/tilcdc_drv.c             | 1 -
>   include/drm/drmP.h                              | 1 -
>   11 files changed, 7 insertions(+), 17 deletions(-)
>
> diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
> index 07086b427c22..f6442ed23bcd 100644
> --- a/drivers/gpu/drm/armada/armada_drv.c
> +++ b/drivers/gpu/drm/armada/armada_drv.c
> @@ -154,10 +154,9 @@ static int armada_drm_bind(struct device *dev)
>   		return ret;
>   	}
>   
> -	priv->drm.platformdev = to_platform_device(dev);
>   	priv->drm.dev_private = priv;
>   
> -	platform_set_drvdata(priv->drm.platformdev, &priv->drm);
> +	dev_set_drvdata(dev, &priv->drm);
>   
>   	INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
>   	INIT_KFIFO(priv->fb_unref);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> index afc2b5d2d5f0..ec1c70d1b682 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
> @@ -975,7 +975,7 @@ static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
>   
>   static int ade_drm_init(struct drm_device *dev)
>   {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>   	struct ade_data *ade;
>   	struct ade_hw_ctx *ctx;
>   	struct ade_crtc *acrtc;
> @@ -1036,8 +1036,7 @@ static int ade_drm_init(struct drm_device *dev)
>   
>   static void ade_drm_cleanup(struct drm_device *dev)
>   {
> -	struct platform_device *pdev = dev->platformdev;
> -	struct ade_data *ade = platform_get_drvdata(pdev);
> +	struct ade_data *ade = dev_get_drvdata(dev->dev);
>   	struct drm_crtc *crtc = &ade->acrtc.base;
>   
>   	drm_crtc_cleanup(crtc);
> diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> index ebd5f4fe4c23..842f70251691 100644
> --- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> +++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
> @@ -209,8 +209,6 @@ static int kirin_drm_bind(struct device *dev)
>   	if (IS_ERR(drm_dev))
>   		return PTR_ERR(drm_dev);
>   
> -	drm_dev->platformdev = to_platform_device(dev);
> -
>   	ret = kirin_drm_kms_init(drm_dev);
>   	if (ret)
>   		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> index b782efd4b95f..e8e14a502d21 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
> @@ -438,7 +438,7 @@ static int modeset_init(struct mdp4_kms *mdp4_kms)
>   
>   struct msm_kms *mdp4_kms_init(struct drm_device *dev)
>   {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>   	struct mdp4_platform_config *config = mdp4_get_config(pdev);
>   	struct mdp4_kms *mdp4_kms;
>   	struct msm_kms *kms = NULL;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> index 618b2ffed9b4..70eae85cf1de 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
> @@ -495,7 +495,7 @@ struct mdp5_cfg_handler *mdp5_cfg_init(struct mdp5_kms *mdp5_kms,
>   		uint32_t major, uint32_t minor)
>   {
>   	struct drm_device *dev = mdp5_kms->dev;
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>   	struct mdp5_cfg_handler *cfg_handler;
>   	struct mdp5_cfg_platform *pconfig;
>   	int i, ret = 0;
> diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> index d444a6901fff..f8f48d014978 100644
> --- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> +++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
> @@ -160,7 +160,7 @@ void msm_mdss_destroy(struct drm_device *dev)
>   
>   int msm_mdss_init(struct drm_device *dev)
>   {
> -	struct platform_device *pdev = dev->platformdev;
> +	struct platform_device *pdev = to_platform_device(dev->dev);
>   	struct msm_drm_private *priv = dev->dev_private;
>   	struct msm_mdss *mdss;
>   	int ret;
> diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
> index e29bb66f55b1..12548642b227 100644
> --- a/drivers/gpu/drm/msm/msm_drv.c
> +++ b/drivers/gpu/drm/msm/msm_drv.c
> @@ -364,7 +364,6 @@ static int msm_drm_init(struct device *dev, struct drm_driver *drv)
>   	}
>   
>   	platform_set_drvdata(pdev, ddev);
> -	ddev->platformdev = pdev;
>   
>   	priv = kzalloc(sizeof(*priv), GFP_KERNEL);
>   	if (!priv) {
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index 59348fc41c77..6082e184007d 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -106,7 +106,7 @@ nouveau_name(struct drm_device *dev)
>   	if (dev->pdev)
>   		return nouveau_pci_name(dev->pdev);
>   	else
> -		return nouveau_platform_name(dev->platformdev);
> +		return nouveau_platform_name(to_platform_device(dev->dev));
>   }
>   
>   static int
> @@ -1089,7 +1089,6 @@ nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
>   		goto err_free;
>   	}
>   
> -	drm->platformdev = pdev;
>   	platform_set_drvdata(pdev, drm);
>   
>   	return drm;
> diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c
> index ff71e25ab5bf..0df0de397d2c 100644
> --- a/drivers/gpu/drm/sti/sti_drv.c
> +++ b/drivers/gpu/drm/sti/sti_drv.c
> @@ -388,8 +388,6 @@ static int sti_bind(struct device *dev)
>   	if (IS_ERR(ddev))
>   		return PTR_ERR(ddev);
>   
> -	ddev->platformdev = to_platform_device(dev);
> -
>   	ret = sti_init(ddev);
>   	if (ret)
>   		goto err_drm_dev_unref;
> diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> index bd0a3bd07167..8f7f6a54ee68 100644
> --- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> +++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
> @@ -245,7 +245,6 @@ static int tilcdc_init(struct drm_driver *ddrv, struct device *dev)
>   	if (IS_ERR(ddev))
>   		return PTR_ERR(ddev);
>   
> -	ddev->platformdev = pdev;
>   	ddev->dev_private = priv;
>   	platform_set_drvdata(pdev, ddev);
>   	drm_mode_config_init(ddev);
> diff --git a/include/drm/drmP.h b/include/drm/drmP.h
> index 0d6c1a13f533..4cc27449d6d7 100644
> --- a/include/drm/drmP.h
> +++ b/include/drm/drmP.h
> @@ -609,7 +609,6 @@ struct drm_device {
>   	struct pci_controller *hose;
>   #endif
>   
> -	struct platform_device *platformdev; /**< Platform device struture */
>   	struct virtio_device *virtdev;
>   
>   	struct drm_sg_mem *sg;	/**< Scatter gather memory */

Acked-by: Xinwei Kong<kong.kongxinwei@hisilicon.com>
diff mbox

Patch

diff --git a/drivers/gpu/drm/armada/armada_drv.c b/drivers/gpu/drm/armada/armada_drv.c
index 07086b427c22..f6442ed23bcd 100644
--- a/drivers/gpu/drm/armada/armada_drv.c
+++ b/drivers/gpu/drm/armada/armada_drv.c
@@ -154,10 +154,9 @@  static int armada_drm_bind(struct device *dev)
 		return ret;
 	}
 
-	priv->drm.platformdev = to_platform_device(dev);
 	priv->drm.dev_private = priv;
 
-	platform_set_drvdata(priv->drm.platformdev, &priv->drm);
+	dev_set_drvdata(dev, &priv->drm);
 
 	INIT_WORK(&priv->fb_unref_work, armada_drm_unref_work);
 	INIT_KFIFO(priv->fb_unref);
diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
index afc2b5d2d5f0..ec1c70d1b682 100644
--- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
+++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c
@@ -975,7 +975,7 @@  static int ade_dts_parse(struct platform_device *pdev, struct ade_hw_ctx *ctx)
 
 static int ade_drm_init(struct drm_device *dev)
 {
-	struct platform_device *pdev = dev->platformdev;
+	struct platform_device *pdev = to_platform_device(dev->dev);
 	struct ade_data *ade;
 	struct ade_hw_ctx *ctx;
 	struct ade_crtc *acrtc;
@@ -1036,8 +1036,7 @@  static int ade_drm_init(struct drm_device *dev)
 
 static void ade_drm_cleanup(struct drm_device *dev)
 {
-	struct platform_device *pdev = dev->platformdev;
-	struct ade_data *ade = platform_get_drvdata(pdev);
+	struct ade_data *ade = dev_get_drvdata(dev->dev);
 	struct drm_crtc *crtc = &ade->acrtc.base;
 
 	drm_crtc_cleanup(crtc);
diff --git a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
index ebd5f4fe4c23..842f70251691 100644
--- a/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
+++ b/drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c
@@ -209,8 +209,6 @@  static int kirin_drm_bind(struct device *dev)
 	if (IS_ERR(drm_dev))
 		return PTR_ERR(drm_dev);
 
-	drm_dev->platformdev = to_platform_device(dev);
-
 	ret = kirin_drm_kms_init(drm_dev);
 	if (ret)
 		goto err_drm_dev_unref;
diff --git a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
index b782efd4b95f..e8e14a502d21 100644
--- a/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
+++ b/drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c
@@ -438,7 +438,7 @@  static int modeset_init(struct mdp4_kms *mdp4_kms)
 
 struct msm_kms *mdp4_kms_init(struct drm_device *dev)
 {
-	struct platform_device *pdev = dev->platformdev;
+	struct platform_device *pdev = to_platform_device(dev->dev);
 	struct mdp4_platform_config *config = mdp4_get_config(pdev);
 	struct mdp4_kms *mdp4_kms;
 	struct msm_kms *kms = NULL;
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
index 618b2ffed9b4..70eae85cf1de 100644
--- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
+++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c
@@ -495,7 +495,7 @@  struct mdp5_cfg_handler *mdp5_cfg_init(struct mdp5_kms *mdp5_kms,
 		uint32_t major, uint32_t minor)
 {
 	struct drm_device *dev = mdp5_kms->dev;
-	struct platform_device *pdev = dev->platformdev;
+	struct platform_device *pdev = to_platform_device(dev->dev);
 	struct mdp5_cfg_handler *cfg_handler;
 	struct mdp5_cfg_platform *pconfig;
 	int i, ret = 0;
diff --git a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
index d444a6901fff..f8f48d014978 100644
--- a/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
+++ b/drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c
@@ -160,7 +160,7 @@  void msm_mdss_destroy(struct drm_device *dev)
 
 int msm_mdss_init(struct drm_device *dev)
 {
-	struct platform_device *pdev = dev->platformdev;
+	struct platform_device *pdev = to_platform_device(dev->dev);
 	struct msm_drm_private *priv = dev->dev_private;
 	struct msm_mdss *mdss;
 	int ret;
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c
index e29bb66f55b1..12548642b227 100644
--- a/drivers/gpu/drm/msm/msm_drv.c
+++ b/drivers/gpu/drm/msm/msm_drv.c
@@ -364,7 +364,6 @@  static int msm_drm_init(struct device *dev, struct drm_driver *drv)
 	}
 
 	platform_set_drvdata(pdev, ddev);
-	ddev->platformdev = pdev;
 
 	priv = kzalloc(sizeof(*priv), GFP_KERNEL);
 	if (!priv) {
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 59348fc41c77..6082e184007d 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -106,7 +106,7 @@  nouveau_name(struct drm_device *dev)
 	if (dev->pdev)
 		return nouveau_pci_name(dev->pdev);
 	else
-		return nouveau_platform_name(dev->platformdev);
+		return nouveau_platform_name(to_platform_device(dev->dev));
 }
 
 static int
@@ -1089,7 +1089,6 @@  nouveau_platform_device_create(const struct nvkm_device_tegra_func *func,
 		goto err_free;
 	}
 
-	drm->platformdev = pdev;
 	platform_set_drvdata(pdev, drm);
 
 	return drm;
diff --git a/drivers/gpu/drm/sti/sti_drv.c b/drivers/gpu/drm/sti/sti_drv.c
index ff71e25ab5bf..0df0de397d2c 100644
--- a/drivers/gpu/drm/sti/sti_drv.c
+++ b/drivers/gpu/drm/sti/sti_drv.c
@@ -388,8 +388,6 @@  static int sti_bind(struct device *dev)
 	if (IS_ERR(ddev))
 		return PTR_ERR(ddev);
 
-	ddev->platformdev = to_platform_device(dev);
-
 	ret = sti_init(ddev);
 	if (ret)
 		goto err_drm_dev_unref;
diff --git a/drivers/gpu/drm/tilcdc/tilcdc_drv.c b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
index bd0a3bd07167..8f7f6a54ee68 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_drv.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_drv.c
@@ -245,7 +245,6 @@  static int tilcdc_init(struct drm_driver *ddrv, struct device *dev)
 	if (IS_ERR(ddev))
 		return PTR_ERR(ddev);
 
-	ddev->platformdev = pdev;
 	ddev->dev_private = priv;
 	platform_set_drvdata(pdev, ddev);
 	drm_mode_config_init(ddev);
diff --git a/include/drm/drmP.h b/include/drm/drmP.h
index 0d6c1a13f533..4cc27449d6d7 100644
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -609,7 +609,6 @@  struct drm_device {
 	struct pci_controller *hose;
 #endif
 
-	struct platform_device *platformdev; /**< Platform device struture */
 	struct virtio_device *virtdev;
 
 	struct drm_sg_mem *sg;	/**< Scatter gather memory */