[PATCH 02/59] drm/vmwgfx: drop bo map/unmap dma functions.
daniel at ffwll.ch
daniel at ffwll.ch
Wed Aug 5 07:59:26 UTC 2020
On Tue, Aug 04, 2020 at 12:55:35PM +1000, Dave Airlie wrote:
> From: Dave Airlie <airlied at redhat.com>
>
> The map one was used once, just inline it, and drop them both.
>
> Signed-off-by: Dave Airlie <airlied at redhat.com>
> ---
> drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 2 -
> drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 46 +++-------------------
> 2 files changed, 6 insertions(+), 42 deletions(-)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> index b7c763713b4c..65c414f119c0 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.h
> @@ -1019,8 +1019,6 @@ extern struct ttm_placement vmw_mob_placement;
> extern struct ttm_placement vmw_mob_ne_placement;
> extern struct ttm_placement vmw_nonfixed_placement;
> extern struct ttm_bo_driver vmw_bo_driver;
> -extern int vmw_bo_map_dma(struct ttm_buffer_object *bo);
> -extern void vmw_bo_unmap_dma(struct ttm_buffer_object *bo);
> extern const struct vmw_sg_table *
> vmw_bo_sg_table(struct ttm_buffer_object *bo);
> extern int vmw_bo_create_and_populate(struct vmw_private *dev_priv,
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> index 8e2a82ded900..3a141a08d4bd 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c
> @@ -519,43 +519,6 @@ static void vmw_ttm_unmap_dma(struct vmw_ttm_tt *vmw_tt)
> vmw_tt->mapped = false;
> }
>
> -
> -/**
> - * vmw_bo_map_dma - Make sure buffer object pages are visible to the device
> - *
> - * @bo: Pointer to a struct ttm_buffer_object
> - *
> - * Wrapper around vmw_ttm_map_dma, that takes a TTM buffer object pointer
> - * instead of a pointer to a struct vmw_ttm_backend as argument.
> - * Note that the buffer object must be either pinned or reserved before
> - * calling this function.
> - */
> -int vmw_bo_map_dma(struct ttm_buffer_object *bo)
> -{
> - struct vmw_ttm_tt *vmw_tt =
> - container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm);
> -
> - return vmw_ttm_map_dma(vmw_tt);
> -}
> -
> -
> -/**
> - * vmw_bo_unmap_dma - Make sure buffer object pages are visible to the device
> - *
> - * @bo: Pointer to a struct ttm_buffer_object
> - *
> - * Wrapper around vmw_ttm_unmap_dma, that takes a TTM buffer object pointer
> - * instead of a pointer to a struct vmw_ttm_backend as argument.
> - */
> -void vmw_bo_unmap_dma(struct ttm_buffer_object *bo)
> -{
> - struct vmw_ttm_tt *vmw_tt =
> - container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm);
> -
> - vmw_ttm_unmap_dma(vmw_tt);
> -}
> -
> -
> /**
> * vmw_bo_sg_table - Return a struct vmw_sg_table object for a
> * TTM buffer object
> @@ -839,9 +802,12 @@ int vmw_bo_create_and_populate(struct vmw_private *dev_priv,
>
> ret = ttm_bo_reserve(bo, false, true, NULL);
> BUG_ON(ret != 0);
> - ret = vmw_bo_driver.ttm_tt_populate(bo->ttm, &ctx);
> - if (likely(ret == 0))
> - ret = vmw_bo_map_dma(bo);
> + ret = vmw_ttm_populate(bo->ttm, &ctx);
Snuck a replacement for a vfunc call with a direct all in here, maybe
mention that in the commit message.
Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> + if (likely(ret == 0)) {
> + struct vmw_ttm_tt *vmw_tt =
> + container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm);
> + ret = vmw_ttm_map_dma(vmw_tt);
> + }
>
> ttm_bo_unreserve(bo);
>
> --
> 2.26.2
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the dri-devel
mailing list