XenevaOS
Loading...
Searching...
No Matches
Classes | Functions
drm_prime.h File Reference
#include <linux/mutex.h>
#include <linux/rbtree.h>
#include <linux/scatterlist.h>
Include dependency graph for drm_prime.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  drm_prime_file_private
 

Functions

struct dma_buf * drm_gem_dmabuf_export (struct drm_device *dev, struct dma_buf_export_info *exp_info)
 
void drm_gem_dmabuf_release (struct dma_buf *dma_buf)
 
int drm_gem_prime_fd_to_handle (struct drm_device *dev, struct drm_file *file_priv, int prime_fd, uint32_t *handle)
 
struct dma_buf * drm_gem_prime_handle_to_dmabuf (struct drm_device *dev, struct drm_file *file_priv, uint32_t handle, uint32_t flags)
 
int drm_gem_prime_handle_to_fd (struct drm_device *dev, struct drm_file *file_priv, uint32_t handle, uint32_t flags, int *prime_fd)
 
int drm_gem_map_attach (struct dma_buf *dma_buf, struct dma_buf_attachment *attach)
 
void drm_gem_map_detach (struct dma_buf *dma_buf, struct dma_buf_attachment *attach)
 
struct sg_table * drm_gem_map_dma_buf (struct dma_buf_attachment *attach, enum dma_data_direction dir)
 
void drm_gem_unmap_dma_buf (struct dma_buf_attachment *attach, struct sg_table *sgt, enum dma_data_direction dir)
 
int drm_gem_dmabuf_vmap (struct dma_buf *dma_buf, struct iosys_map *map)
 
void drm_gem_dmabuf_vunmap (struct dma_buf *dma_buf, struct iosys_map *map)
 
int drm_gem_prime_mmap (struct drm_gem_object *obj, struct vm_area_struct *vma)
 
int drm_gem_dmabuf_mmap (struct dma_buf *dma_buf, struct vm_area_struct *vma)
 
struct sg_table * drm_prime_pages_to_sg (struct drm_device *dev, struct page **pages, unsigned int nr_pages)
 
struct dma_buf * drm_gem_prime_export (struct drm_gem_object *obj, int flags)
 
unsigned long drm_prime_get_contiguous_size (struct sg_table *sgt)
 
bool drm_gem_is_prime_exported_dma_buf (struct drm_device *dev, struct dma_buf *dma_buf)
 
struct drm_gem_object * drm_gem_prime_import_dev (struct drm_device *dev, struct dma_buf *dma_buf, struct device *attach_dev)
 
struct drm_gem_object * drm_gem_prime_import (struct drm_device *dev, struct dma_buf *dma_buf)
 
void drm_prime_gem_destroy (struct drm_gem_object *obj, struct sg_table *sg)
 
int drm_prime_sg_to_page_array (struct sg_table *sgt, struct page **pages, int max_pages)
 
int drm_prime_sg_to_dma_addr_array (struct sg_table *sgt, dma_addr_t *addrs, int max_pages)
 

Function Documentation

◆ drm_gem_dmabuf_export()

struct dma_buf * drm_gem_dmabuf_export ( struct drm_device *  dev,
struct dma_buf_export_info *  exp_info 
)

◆ drm_gem_dmabuf_mmap()

int drm_gem_dmabuf_mmap ( struct dma_buf *  dma_buf,
struct vm_area_struct *  vma 
)

◆ drm_gem_dmabuf_release()

void drm_gem_dmabuf_release ( struct dma_buf *  dma_buf)

◆ drm_gem_dmabuf_vmap()

int drm_gem_dmabuf_vmap ( struct dma_buf *  dma_buf,
struct iosys_map *  map 
)

◆ drm_gem_dmabuf_vunmap()

void drm_gem_dmabuf_vunmap ( struct dma_buf *  dma_buf,
struct iosys_map *  map 
)

◆ drm_gem_is_prime_exported_dma_buf()

bool drm_gem_is_prime_exported_dma_buf ( struct drm_device *  dev,
struct dma_buf *  dma_buf 
)

◆ drm_gem_map_attach()

int drm_gem_map_attach ( struct dma_buf *  dma_buf,
struct dma_buf_attachment *  attach 
)

◆ drm_gem_map_detach()

void drm_gem_map_detach ( struct dma_buf *  dma_buf,
struct dma_buf_attachment *  attach 
)

◆ drm_gem_map_dma_buf()

struct sg_table * drm_gem_map_dma_buf ( struct dma_buf_attachment *  attach,
enum dma_data_direction  dir 
)

◆ drm_gem_prime_export()

struct dma_buf * drm_gem_prime_export ( struct drm_gem_object *  obj,
int  flags 
)

◆ drm_gem_prime_fd_to_handle()

int drm_gem_prime_fd_to_handle ( struct drm_device *  dev,
struct drm_file *  file_priv,
int  prime_fd,
uint32_t *  handle 
)

◆ drm_gem_prime_handle_to_dmabuf()

struct dma_buf * drm_gem_prime_handle_to_dmabuf ( struct drm_device *  dev,
struct drm_file *  file_priv,
uint32_t  handle,
uint32_t  flags 
)

◆ drm_gem_prime_handle_to_fd()

int drm_gem_prime_handle_to_fd ( struct drm_device *  dev,
struct drm_file *  file_priv,
uint32_t  handle,
uint32_t  flags,
int *  prime_fd 
)

◆ drm_gem_prime_import()

struct drm_gem_object * drm_gem_prime_import ( struct drm_device *  dev,
struct dma_buf *  dma_buf 
)

◆ drm_gem_prime_import_dev()

struct drm_gem_object * drm_gem_prime_import_dev ( struct drm_device *  dev,
struct dma_buf *  dma_buf,
struct device *  attach_dev 
)

◆ drm_gem_prime_mmap()

int drm_gem_prime_mmap ( struct drm_gem_object *  obj,
struct vm_area_struct *  vma 
)

◆ drm_gem_unmap_dma_buf()

void drm_gem_unmap_dma_buf ( struct dma_buf_attachment *  attach,
struct sg_table *  sgt,
enum dma_data_direction  dir 
)

◆ drm_prime_gem_destroy()

void drm_prime_gem_destroy ( struct drm_gem_object *  obj,
struct sg_table *  sg 
)

◆ drm_prime_get_contiguous_size()

unsigned long drm_prime_get_contiguous_size ( struct sg_table *  sgt)

◆ drm_prime_pages_to_sg()

struct sg_table * drm_prime_pages_to_sg ( struct drm_device *  dev,
struct page **  pages,
unsigned int  nr_pages 
)

◆ drm_prime_sg_to_dma_addr_array()

int drm_prime_sg_to_dma_addr_array ( struct sg_table *  sgt,
dma_addr_t *  addrs,
int  max_pages 
)

◆ drm_prime_sg_to_page_array()

int drm_prime_sg_to_page_array ( struct sg_table *  sgt,
struct page **  pages,
int  max_pages 
)