Lines Matching refs:dma_buf

91 	struct dma_buf *dma_buf;  member
99 struct dma_buf *dma_buf, uint32_t handle) in drm_prime_add_buf_handle() argument
108 get_dma_buf(dma_buf); in drm_prime_add_buf_handle()
109 member->dma_buf = dma_buf; in drm_prime_add_buf_handle()
119 if (dma_buf > pos->dma_buf) in drm_prime_add_buf_handle()
145 static struct dma_buf *drm_prime_lookup_buf_by_handle(struct drm_prime_file_private *prime_fpriv, in drm_prime_lookup_buf_by_handle()
156 return member->dma_buf; in drm_prime_lookup_buf_by_handle()
167 struct dma_buf *dma_buf, in drm_prime_lookup_buf_handle() argument
177 if (member->dma_buf == dma_buf) { in drm_prime_lookup_buf_handle()
180 } else if (member->dma_buf < dma_buf) { in drm_prime_lookup_buf_handle()
206 dma_buf_put(member->dma_buf); in drm_prime_remove_buf_handle()
244 struct dma_buf *drm_gem_dmabuf_export(struct drm_device *dev, in drm_gem_dmabuf_export()
248 struct dma_buf *dma_buf; in drm_gem_dmabuf_export() local
250 dma_buf = dma_buf_export(exp_info); in drm_gem_dmabuf_export()
251 if (IS_ERR(dma_buf)) in drm_gem_dmabuf_export()
252 return dma_buf; in drm_gem_dmabuf_export()
256 dma_buf->file->f_mapping = obj->dev->anon_inode->i_mapping; in drm_gem_dmabuf_export()
258 return dma_buf; in drm_gem_dmabuf_export()
271 void drm_gem_dmabuf_release(struct dma_buf *dma_buf) in drm_gem_dmabuf_release() argument
273 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_dmabuf_release()
301 struct dma_buf *dma_buf; in drm_gem_prime_fd_to_handle() local
305 dma_buf = dma_buf_get(prime_fd); in drm_gem_prime_fd_to_handle()
306 if (IS_ERR(dma_buf)) in drm_gem_prime_fd_to_handle()
307 return PTR_ERR(dma_buf); in drm_gem_prime_fd_to_handle()
312 dma_buf, handle); in drm_gem_prime_fd_to_handle()
319 obj = dev->driver->gem_prime_import(dev, dma_buf); in drm_gem_prime_fd_to_handle()
321 obj = drm_gem_prime_import(dev, dma_buf); in drm_gem_prime_fd_to_handle()
327 if (obj->dma_buf) { in drm_gem_prime_fd_to_handle()
328 WARN_ON(obj->dma_buf != dma_buf); in drm_gem_prime_fd_to_handle()
330 obj->dma_buf = dma_buf; in drm_gem_prime_fd_to_handle()
331 get_dma_buf(dma_buf); in drm_gem_prime_fd_to_handle()
341 dma_buf, *handle); in drm_gem_prime_fd_to_handle()
346 dma_buf_put(dma_buf); in drm_gem_prime_fd_to_handle()
355 dma_buf_put(dma_buf); in drm_gem_prime_fd_to_handle()
362 dma_buf_put(dma_buf); in drm_gem_prime_fd_to_handle()
379 static struct dma_buf *export_and_register_object(struct drm_device *dev, in export_and_register_object()
383 struct dma_buf *dmabuf; in export_and_register_object()
409 obj->dma_buf = dmabuf; in export_and_register_object()
410 get_dma_buf(obj->dma_buf); in export_and_register_object()
435 struct dma_buf *dmabuf; in drm_gem_prime_handle_to_fd()
458 if (obj->dma_buf) { in drm_gem_prime_handle_to_fd()
459 get_dma_buf(obj->dma_buf); in drm_gem_prime_handle_to_fd()
460 dmabuf = obj->dma_buf; in drm_gem_prime_handle_to_fd()
580 int drm_gem_map_attach(struct dma_buf *dma_buf, in drm_gem_map_attach() argument
583 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_map_attach()
598 void drm_gem_map_detach(struct dma_buf *dma_buf, in drm_gem_map_detach() argument
601 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_map_detach()
676 void *drm_gem_dmabuf_vmap(struct dma_buf *dma_buf) in drm_gem_dmabuf_vmap() argument
678 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_dmabuf_vmap()
697 void drm_gem_dmabuf_vunmap(struct dma_buf *dma_buf, void *vaddr) in drm_gem_dmabuf_vunmap() argument
699 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_dmabuf_vunmap()
775 int drm_gem_dmabuf_mmap(struct dma_buf *dma_buf, struct vm_area_struct *vma) in drm_gem_dmabuf_mmap() argument
777 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_dmabuf_mmap()
797 int drm_gem_dmabuf_get_uuid(struct dma_buf *dma_buf, uuid_t *uuid) in drm_gem_dmabuf_get_uuid() argument
799 struct drm_gem_object *obj = dma_buf->priv; in drm_gem_dmabuf_get_uuid()
901 struct dma_buf *drm_gem_prime_export(struct drm_gem_object *obj, in drm_gem_prime_export()
934 struct dma_buf *dma_buf, in drm_gem_prime_import_dev() argument
942 if (dma_buf->ops == &drm_gem_prime_dmabuf_ops) { in drm_gem_prime_import_dev()
943 obj = dma_buf->priv; in drm_gem_prime_import_dev()
957 attach = dma_buf_attach(dma_buf, attach_dev); in drm_gem_prime_import_dev()
961 get_dma_buf(dma_buf); in drm_gem_prime_import_dev()
976 obj->resv = dma_buf->resv; in drm_gem_prime_import_dev()
983 dma_buf_detach(dma_buf, attach); in drm_gem_prime_import_dev()
984 dma_buf_put(dma_buf); in drm_gem_prime_import_dev()
1004 struct dma_buf *dma_buf) in drm_gem_prime_import() argument
1006 return drm_gem_prime_import_dev(dev, dma_buf, dev->dev); in drm_gem_prime_import()
1061 struct dma_buf *dma_buf; in drm_prime_gem_destroy() local
1066 dma_buf = attach->dmabuf; in drm_prime_gem_destroy()
1069 dma_buf_put(dma_buf); in drm_prime_gem_destroy()