drm/ingenic: Use GEM CMA object functions
authorThomas Zimmermann <tzimmermann@suse.de>
Fri, 5 Jun 2020 07:32:21 +0000 (09:32 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Wed, 10 Jun 2020 07:03:33 +0000 (09:03 +0200)
Create GEM objects with drm_gem_cma_create_object_default_funcs(), which
allocates the object and sets CMA's default object functions. Corresponding
callbacks in struct drm_driver are cleared. No functional changes are made.

Driver and object-function instances use the same callback functions, with
the exception of vunmap. The implementation of vunmap is empty and left out
in CMA's default object functions.

v3:
* convert to DRIVER_OPS macro in a separate patch

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Paul Cercueil <paul@crapouillou.net>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200605073247.4057-18-tzimmermann@suse.de
drivers/gpu/drm/ingenic/ingenic-drm.c

index 632d72177123c524bbff14840991d96f6475b21a..68208d9f63b5854fbb1e2ccdf5e2a9ae330e707d 100644 (file)
@@ -520,16 +520,12 @@ static struct drm_driver ingenic_drm_driver_data = {
 
        .fops                   = &ingenic_drm_fops,
 
+       .gem_create_object      = drm_gem_cma_create_object_default_funcs,
        .dumb_create            = drm_gem_cma_dumb_create,
-       .gem_free_object_unlocked = drm_gem_cma_free_object,
-       .gem_vm_ops             = &drm_gem_cma_vm_ops,
 
        .prime_handle_to_fd     = drm_gem_prime_handle_to_fd,
        .prime_fd_to_handle     = drm_gem_prime_fd_to_handle,
-       .gem_prime_get_sg_table = drm_gem_cma_prime_get_sg_table,
        .gem_prime_import_sg_table = drm_gem_cma_prime_import_sg_table,
-       .gem_prime_vmap         = drm_gem_cma_prime_vmap,
-       .gem_prime_vunmap       = drm_gem_cma_prime_vunmap,
        .gem_prime_mmap         = drm_gem_cma_prime_mmap,
 
        .irq_handler            = ingenic_drm_irq_handler,