OSDN Git Service

drm: Remove obsolete GEM and PRIME callbacks from struct drm_driver
authorThomas Zimmermann <tzimmermann@suse.de>
Wed, 23 Sep 2020 10:21:59 +0000 (12:21 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Fri, 25 Sep 2020 07:21:48 +0000 (09:21 +0200)
commitd693def4fd1c23f1ca5aed1afb9993b3a2069ad2
treef67f192a6fe6214acab21c0d12fa381810f0f39f
parentc85dce1b2e7e5037ef9f01bc64a26e40c92a9e79
drm: Remove obsolete GEM and PRIME callbacks from struct drm_driver

Several GEM and PRIME callbacks have been deprecated in favor of
per-instance GEM object functions. Remove the callbacks as they are
now unused. The only exception is .gem_prime_mmap, which is still
in use by several drivers.

What is also gone is gem_vm_ops in struct drm_driver. All drivers now
use struct drm_gem_object_funcs.vm_ops instead.

While at it, the patch also improves error handling around calls
to .free and .get_sg_table callbacks.

v3:
* restore default call to drm_gem_prime_export() in
  drm_gem_prime_handle_to_fd()
* return -ENOSYS if get_sg_table is not set
* drop all checks for obj->funcs
* clean up TODO list and documentation
v2:
* update related TODO item (Sam)

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200923102159.24084-23-tzimmermann@suse.de
Documentation/gpu/drm-mm.rst
Documentation/gpu/todo.rst
drivers/gpu/drm/drm_gem.c
drivers/gpu/drm/drm_gem_cma_helper.c
drivers/gpu/drm/drm_prime.c
include/drm/drm_drv.h
include/drm/drm_gem.h