xen_drm_front_gem.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /* SPDX-License-Identifier: GPL-2.0 OR MIT */
  2. /*
  3. * Xen para-virtual DRM device
  4. *
  5. * Copyright (C) 2016-2018 EPAM Systems Inc.
  6. *
  7. * Author: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
  8. */
  9. #ifndef __XEN_DRM_FRONT_GEM_H
  10. #define __XEN_DRM_FRONT_GEM_H
  11. struct dma_buf_attachment;
  12. struct iosys_map;
  13. struct drm_device;
  14. struct drm_gem_object;
  15. struct sg_table;
  16. struct drm_gem_object *xen_drm_front_gem_create(struct drm_device *dev,
  17. size_t size);
  18. struct drm_gem_object *
  19. xen_drm_front_gem_import_sg_table(struct drm_device *dev,
  20. struct dma_buf_attachment *attach,
  21. struct sg_table *sgt);
  22. struct sg_table *xen_drm_front_gem_get_sg_table(struct drm_gem_object *gem_obj);
  23. struct page **xen_drm_front_gem_get_pages(struct drm_gem_object *obj);
  24. void xen_drm_front_gem_free_object_unlocked(struct drm_gem_object *gem_obj);
  25. int xen_drm_front_gem_prime_vmap(struct drm_gem_object *gem_obj,
  26. struct iosys_map *map);
  27. void xen_drm_front_gem_prime_vunmap(struct drm_gem_object *gem_obj,
  28. struct iosys_map *map);
  29. #endif /* __XEN_DRM_FRONT_GEM_H */