Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 OR MIT */
0002 
0003 /*
0004  *  Xen para-virtual DRM device
0005  *
0006  * Copyright (C) 2016-2018 EPAM Systems Inc.
0007  *
0008  * Author: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
0009  */
0010 
0011 #ifndef __XEN_DRM_FRONT_GEM_H
0012 #define __XEN_DRM_FRONT_GEM_H
0013 
0014 struct dma_buf_attachment;
0015 struct iosys_map;
0016 struct drm_device;
0017 struct drm_gem_object;
0018 struct sg_table;
0019 
0020 struct drm_gem_object *xen_drm_front_gem_create(struct drm_device *dev,
0021                         size_t size);
0022 
0023 struct drm_gem_object *
0024 xen_drm_front_gem_import_sg_table(struct drm_device *dev,
0025                   struct dma_buf_attachment *attach,
0026                   struct sg_table *sgt);
0027 
0028 struct sg_table *xen_drm_front_gem_get_sg_table(struct drm_gem_object *gem_obj);
0029 
0030 struct page **xen_drm_front_gem_get_pages(struct drm_gem_object *obj);
0031 
0032 void xen_drm_front_gem_free_object_unlocked(struct drm_gem_object *gem_obj);
0033 
0034 int xen_drm_front_gem_prime_vmap(struct drm_gem_object *gem_obj,
0035                  struct iosys_map *map);
0036 
0037 void xen_drm_front_gem_prime_vunmap(struct drm_gem_object *gem_obj,
0038                     struct iosys_map *map);
0039 
0040 #endif /* __XEN_DRM_FRONT_GEM_H */