[PATCH] drm/vc4: Initialize vc4_drm_driver with CMA helper defaults

Daniel Vetter daniel at ffwll.ch
Thu Jan 14 09:45:22 UTC 2021


On Thu, Jan 14, 2021 at 09:49:49AM +0100, Thomas Zimmermann wrote:
> The function vc4_prime_import_sg_table() is an otherwise empty wrapper
> around CMA's drm_gem_cma_prime_import_sg_table(). Removing it in favor
> of the latter allows to initialize vc4_drm_driver with CMA's initializer
> macro.
> 
> Signed-off-by: Thomas Zimmermann <tzimmermann at suse.de>

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

> ---
>  drivers/gpu/drm/vc4/vc4_bo.c  | 14 --------------
>  drivers/gpu/drm/vc4/vc4_drv.c |  7 +------
>  drivers/gpu/drm/vc4/vc4_drv.h |  3 ---
>  3 files changed, 1 insertion(+), 23 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vc4/vc4_bo.c b/drivers/gpu/drm/vc4/vc4_bo.c
> index 28e48ef2d295..fddaeb0b09c1 100644
> --- a/drivers/gpu/drm/vc4/vc4_bo.c
> +++ b/drivers/gpu/drm/vc4/vc4_bo.c
> @@ -738,20 +738,6 @@ static const struct drm_gem_object_funcs vc4_gem_object_funcs = {
>  	.vm_ops = &vc4_vm_ops,
>  };
>  
> -struct drm_gem_object *
> -vc4_prime_import_sg_table(struct drm_device *dev,
> -			  struct dma_buf_attachment *attach,
> -			  struct sg_table *sgt)
> -{
> -	struct drm_gem_object *obj;
> -
> -	obj = drm_gem_cma_prime_import_sg_table(dev, attach, sgt);
> -	if (IS_ERR(obj))
> -		return obj;
> -
> -	return obj;
> -}
> -
>  static int vc4_grab_bin_bo(struct vc4_dev *vc4, struct vc4_file *vc4file)
>  {
>  	int ret;
> diff --git a/drivers/gpu/drm/vc4/vc4_drv.c b/drivers/gpu/drm/vc4/vc4_drv.c
> index d9b3bba7f2b7..556ad0f02a0d 100644
> --- a/drivers/gpu/drm/vc4/vc4_drv.c
> +++ b/drivers/gpu/drm/vc4/vc4_drv.c
> @@ -180,12 +180,7 @@ static struct drm_driver vc4_drm_driver = {
>  
>  	.gem_create_object = vc4_create_object,
>  
> -	.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
> -	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
> -	.gem_prime_import_sg_table = vc4_prime_import_sg_table,
> -	.gem_prime_mmap = drm_gem_prime_mmap,
> -
> -	.dumb_create = vc4_dumb_create,
> +	DRM_GEM_CMA_DRIVER_OPS_WITH_DUMB_CREATE(vc4_dumb_create),
>  
>  	.ioctls = vc4_drm_ioctls,
>  	.num_ioctls = ARRAY_SIZE(vc4_drm_ioctls),
> diff --git a/drivers/gpu/drm/vc4/vc4_drv.h b/drivers/gpu/drm/vc4/vc4_drv.h
> index 0d9c0ecc4769..a7500716cf3f 100644
> --- a/drivers/gpu/drm/vc4/vc4_drv.h
> +++ b/drivers/gpu/drm/vc4/vc4_drv.h
> @@ -801,9 +801,6 @@ int vc4_get_hang_state_ioctl(struct drm_device *dev, void *data,
>  			     struct drm_file *file_priv);
>  int vc4_label_bo_ioctl(struct drm_device *dev, void *data,
>  		       struct drm_file *file_priv);
> -struct drm_gem_object *vc4_prime_import_sg_table(struct drm_device *dev,
> -						 struct dma_buf_attachment *attach,
> -						 struct sg_table *sgt);
>  int vc4_bo_cache_init(struct drm_device *dev);
>  int vc4_bo_inc_usecnt(struct vc4_bo *bo);
>  void vc4_bo_dec_usecnt(struct vc4_bo *bo);
> -- 
> 2.29.2
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list