drm/qxl: switch qxl to &drm_gem_object_funcs.mmap
authorGerd Hoffmann <kraxel@redhat.com>
Thu, 17 Oct 2019 13:26:35 +0000 (15:26 +0200)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 22 Oct 2019 09:34:02 +0000 (11:34 +0200)
Wire up the new drm_gem_ttm_mmap() helper function.
Use generic drm_gem_mmap() and remove qxl_mmap().

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20191017132638.9693-3-kraxel@redhat.com
drivers/gpu/drm/qxl/qxl_drv.c
drivers/gpu/drm/qxl/qxl_drv.h
drivers/gpu/drm/qxl/qxl_object.c
drivers/gpu/drm/qxl/qxl_ttm.c

index 483b4c57554a6155ffd5f0e82cc16d685b69b94c..65464630ac98cfc7a7ac9aff0a81032c08edd1f5 100644 (file)
@@ -157,7 +157,7 @@ static const struct file_operations qxl_fops = {
        .unlocked_ioctl = drm_ioctl,
        .poll = drm_poll,
        .read = drm_read,
-       .mmap = qxl_mmap,
+       .mmap = drm_gem_mmap,
 };
 
 static int qxl_drm_freeze(struct drm_device *dev)
index d4051409ce64f54fe166a03681a5e51a5df172ea..a5cb3864d686f7c92405312d829a0ebef14b74cf 100644 (file)
@@ -355,7 +355,6 @@ int qxl_mode_dumb_mmap(struct drm_file *filp,
 /* qxl ttm */
 int qxl_ttm_init(struct qxl_device *qdev);
 void qxl_ttm_fini(struct qxl_device *qdev);
-int qxl_mmap(struct file *filp, struct vm_area_struct *vma);
 
 /* qxl image */
 
index c013c516f5619cb4da90a0302f31c3d3a4076739..927ab917b834b09dd2e843d561c282786076743a 100644 (file)
@@ -86,6 +86,7 @@ static const struct drm_gem_object_funcs qxl_object_funcs = {
        .get_sg_table = qxl_gem_prime_get_sg_table,
        .vmap = qxl_gem_prime_vmap,
        .vunmap = qxl_gem_prime_vunmap,
+       .mmap = drm_gem_ttm_mmap,
        .print_info = drm_gem_ttm_print_info,
 };
 
index dba925589e178aab127eef0bbbde837a3aa35fd8..629ac8e77a21b8cc832c05fa863f530dd8a02f57 100644 (file)
@@ -48,22 +48,6 @@ static struct qxl_device *qxl_get_qdev(struct ttm_bo_device *bdev)
        return qdev;
 }
 
-int qxl_mmap(struct file *filp, struct vm_area_struct *vma)
-{
-       struct drm_file *file_priv = filp->private_data;
-       struct qxl_device *qdev = file_priv->minor->dev->dev_private;
-
-       if (qdev == NULL) {
-               DRM_ERROR(
-                "filp->private_data->minor->dev->dev_private == NULL\n");
-               return -EINVAL;
-       }
-       DRM_DEBUG_DRIVER("filp->private_data = 0x%p, vma->vm_pgoff = %lx\n",
-                 filp->private_data, vma->vm_pgoff);
-
-       return ttm_bo_mmap(filp, vma, &qdev->mman.bdev);
-}
-
 static int qxl_invalidate_caches(struct ttm_bo_device *bdev, uint32_t flags)
 {
        return 0;