[PATCH v4 00/17] drm: add gem ttm helpers, rework mmap workflow.

Daniel Vetter daniel at ffwll.ch
Tue Sep 3 09:54:59 UTC 2019


On Thu, Aug 08, 2019 at 03:44:00PM +0200, Gerd Hoffmann wrote:
> 
> 
> Gerd Hoffmann (17):
>   drm/ttm: turn ttm_bo_device.vma_manager into a pointer
>   drm/ttm: add gem_ttm_bo_device_init()
>   drm/vram: switch vram helpers to the new gem_ttm_bo_device_init()
>   drm/qxl: switch qxl to the new gem_ttm_bo_device_init()
>   drm: add mmap() to drm_gem_object_funcs
>   drm/shmem: switch shmem helper to drm_gem_object_funcs->mmap
>   drm/shmem: drop DEFINE_DRM_GEM_SHMEM_FOPS
>   drm/ttm: factor out ttm_bo_mmap_vma_setup
>   drm/ttm: add drm_gem_ttm_mmap()
>   drm/vram: switch vram helper to drm_gem_object_funcs->mmap codepath
>   drm/vram: drop verify_access
>   drm: drop DRM_VRAM_MM_FILE_OPERATIONS
>   drm/qxl: use drm_gem_object_funcs
>   drm/qxl: drop qxl_ttm_fault
>   drm/qxl: switch qxl to drm_gem_object_funcs->mmap codepath
>   drm/qxl: drop verify_access
>   drm/qxl: use DEFINE_DRM_GEM_FOPS()

I like.

Dropped 2 thoughts for a bit more polish/usefulness for all this.
Unfortunately I'm kinda burried, so would be better if you find someone
else for detailed review and all that.
-Daniel

> 
>  drivers/gpu/drm/qxl/qxl_drv.h                 |  5 +-
>  drivers/gpu/drm/qxl/qxl_object.h              |  5 --
>  include/drm/drm_gem.h                         |  9 +++
>  include/drm/drm_gem_shmem_helper.h            | 28 +--------
>  include/drm/drm_gem_ttm_helper.h              | 32 ++++++++++
>  include/drm/drm_gem_vram_helper.h             |  9 +--
>  include/drm/drm_vram_mm_helper.h              | 27 ---------
>  include/drm/ttm/ttm_bo_api.h                  |  8 +++
>  include/drm/ttm/ttm_bo_driver.h               | 11 +++-
>  drivers/gpu/drm/ast/ast_drv.c                 |  5 +-
>  drivers/gpu/drm/bochs/bochs_drv.c             |  5 +-
>  drivers/gpu/drm/cirrus/cirrus.c               |  2 +-
>  drivers/gpu/drm/drm_gem.c                     |  6 ++
>  drivers/gpu/drm/drm_gem_shmem_helper.c        | 18 +++---
>  drivers/gpu/drm/drm_gem_ttm_helper.c          | 47 +++++++++++++++
>  drivers/gpu/drm/drm_gem_vram_helper.c         | 53 +----------------
>  drivers/gpu/drm/drm_vram_mm_helper.c          | 44 +-------------
>  .../gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c   |  6 +-
>  drivers/gpu/drm/mgag200/mgag200_drv.c         |  5 +-
>  drivers/gpu/drm/panfrost/panfrost_drv.c       |  2 +-
>  drivers/gpu/drm/panfrost/panfrost_gem.c       |  1 +
>  drivers/gpu/drm/qxl/qxl_drv.c                 | 19 +-----
>  drivers/gpu/drm/qxl/qxl_dumb.c                | 17 ------
>  drivers/gpu/drm/qxl/qxl_ioctl.c               |  5 +-
>  drivers/gpu/drm/qxl/qxl_object.c              | 13 +++++
>  drivers/gpu/drm/qxl/qxl_ttm.c                 | 58 ++-----------------
>  drivers/gpu/drm/ttm/ttm_bo.c                  | 29 +++++++---
>  drivers/gpu/drm/ttm/ttm_bo_vm.c               | 53 +++++++++--------
>  drivers/gpu/drm/v3d/v3d_bo.c                  |  1 +
>  drivers/gpu/drm/v3d/v3d_drv.c                 |  2 +-
>  drivers/gpu/drm/vboxvideo/vbox_drv.c          |  5 +-
>  Documentation/gpu/drm-mm.rst                  | 12 ++++
>  drivers/gpu/drm/Kconfig                       |  8 +++
>  drivers/gpu/drm/Makefile                      |  3 +
>  drivers/gpu/drm/qxl/Kconfig                   |  1 +
>  35 files changed, 231 insertions(+), 323 deletions(-)
>  create mode 100644 include/drm/drm_gem_ttm_helper.h
>  create mode 100644 drivers/gpu/drm/drm_gem_ttm_helper.c
> 
> -- 
> 2.18.1
> 
> _______________________________________________
> 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