Lines Matching full:attach

540  * Optional pinning of buffers is handled at dma-buf attach and detach time in
568 * drm_gem_map_attach - dma_buf attach implementation for GEM
569 * @dma_buf: buffer to attach device to
570 * @attach: buffer attachment data
573 * used as the &dma_buf_ops.attach callback. Must be used together with
579 struct dma_buf_attachment *attach) in drm_gem_map_attach() argument
593 * @attach: attachment to be detached
600 struct dma_buf_attachment *attach) in drm_gem_map_detach() argument
610 * @attach: attachment whose scatterlist is to be returned
620 struct sg_table *drm_gem_map_dma_buf(struct dma_buf_attachment *attach, in drm_gem_map_dma_buf() argument
623 struct drm_gem_object *obj = attach->dmabuf->priv; in drm_gem_map_dma_buf()
637 ret = dma_map_sgtable(attach->dev, sgt, dir, in drm_gem_map_dma_buf()
651 * @attach: attachment to unmap buffer from
657 void drm_gem_unmap_dma_buf(struct dma_buf_attachment *attach, in drm_gem_unmap_dma_buf() argument
664 dma_unmap_sgtable(attach->dev, sgt, dir, DMA_ATTR_SKIP_CPU_SYNC); in drm_gem_unmap_dma_buf()
783 .attach = drm_gem_map_attach,
893 * @attach_dev: struct device to dma_buf attach
907 struct dma_buf_attachment *attach; in drm_gem_prime_import_dev() local
927 attach = dma_buf_attach(dma_buf, attach_dev); in drm_gem_prime_import_dev()
928 if (IS_ERR(attach)) in drm_gem_prime_import_dev()
929 return ERR_CAST(attach); in drm_gem_prime_import_dev()
933 sgt = dma_buf_map_attachment_unlocked(attach, DMA_BIDIRECTIONAL); in drm_gem_prime_import_dev()
939 obj = dev->driver->gem_prime_import_sg_table(dev, attach, sgt); in drm_gem_prime_import_dev()
945 obj->import_attach = attach; in drm_gem_prime_import_dev()
951 dma_buf_unmap_attachment_unlocked(attach, sgt, DMA_BIDIRECTIONAL); in drm_gem_prime_import_dev()
953 dma_buf_detach(dma_buf, attach); in drm_gem_prime_import_dev()
1043 struct dma_buf_attachment *attach; in drm_prime_gem_destroy() local
1046 attach = obj->import_attach; in drm_prime_gem_destroy()
1048 dma_buf_unmap_attachment_unlocked(attach, sg, DMA_BIDIRECTIONAL); in drm_prime_gem_destroy()
1049 dma_buf = attach->dmabuf; in drm_prime_gem_destroy()
1050 dma_buf_detach(attach->dmabuf, attach); in drm_prime_gem_destroy()