[PATCH] drm/vmwgfx: Stop using dev_private to store driver data.

Zack Rusin zack.rusin at broadcom.com
Thu May 2 02:02:02 UTC 2024


On Wed, May 1, 2024 at 8:41 PM Maaz Mombasawala
<maaz.mombasawala at broadcom.com> wrote:
>
> Currently vmwgfx uses the dev_private opaque pointer in drm_device to store
> driver data in vmw_private struct. Using dev_private is deprecated, and the
> recommendation is to embed struct drm_device in the larger per-device
> structure.
>
> The vmwgfx driver already embeds struct drm_device in its struct
> vmw_private, so switch to using that exclusively and stop using
> dev_private.
>
> Signed-off-by: Maaz Mombasawala <maaz.mombasawala at broadcom.com>
> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 --
>  drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 2 +-
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 ++--
>  3 files changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> index bdad93864b98..97e48e93dbbf 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> @@ -858,8 +858,6 @@ static int vmw_driver_load(struct vmw_private *dev_priv, u32 pci_id)
>         bool refuse_dma = false;
>         struct pci_dev *pdev = to_pci_dev(dev_priv->drm.dev);
>
> -       dev_priv->drm.dev_private = dev_priv;
> -
>         vmw_sw_context_init(dev_priv);
>
>         mutex_init(&dev_priv->cmdbuf_mutex);
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> index 4ecaea0026fc..df89e468a1fc 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> @@ -638,7 +638,7 @@ static inline struct vmw_surface *vmw_res_to_srf(struct vmw_resource *res)
>
>  static inline struct vmw_private *vmw_priv(struct drm_device *dev)
>  {
> -       return (struct vmw_private *)dev->dev_private;
> +       return container_of(dev, struct vmw_private, drm);
>  }
>
>  static inline struct vmw_private *vmw_priv_from_ttm(struct ttm_device *bdev)
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index 13b2820cae51..b3f0fb6828de 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -276,7 +276,7 @@ static void vmw_du_put_cursor_mob(struct vmw_cursor_plane *vcp,
>  static int vmw_du_get_cursor_mob(struct vmw_cursor_plane *vcp,
>                                  struct vmw_plane_state *vps)
>  {
> -       struct vmw_private *dev_priv = vcp->base.dev->dev_private;
> +       struct vmw_private *dev_priv = vmw_priv(vcp->base.dev);
>         u32 size = vmw_du_cursor_mob_size(vps->base.crtc_w, vps->base.crtc_h);
>         u32 i;
>         u32 cursor_max_dim, mob_max_size;
> @@ -515,7 +515,7 @@ void vmw_du_cursor_plane_destroy(struct drm_plane *plane)
>         struct vmw_cursor_plane *vcp = vmw_plane_to_vcp(plane);
>         u32 i;
>
> -       vmw_cursor_update_position(plane->dev->dev_private, false, 0, 0);
> +       vmw_cursor_update_position(vmw_priv(plane->dev), false, 0, 0);
>
>         for (i = 0; i < ARRAY_SIZE(vcp->cursor_mobs); i++)
>                 vmw_du_destroy_cursor_mob(&vcp->cursor_mobs[i]);
> --
> 2.34.1
>

Looks good.
Reviewed-by: Zack Rusin <zack.rusin at broadcom.com>

z


More information about the dri-devel mailing list