Lines Matching refs:dma_obj
25 struct drm_gem_dma_object *dma_obj = to_drm_gem_dma_obj(obj); in mtk_gem_free_object() local
28 if (dma_obj->sgt) in mtk_gem_free_object()
29 drm_prime_gem_destroy(obj, dma_obj->sgt); in mtk_gem_free_object()
31 dma_free_wc(priv->dma_dev, dma_obj->base.size, in mtk_gem_free_object()
32 dma_obj->vaddr, dma_obj->dma_addr); in mtk_gem_free_object()
37 kfree(dma_obj); in mtk_gem_free_object()
48 struct drm_gem_dma_object *dma_obj = to_drm_gem_dma_obj(obj); in mtk_gem_prime_get_sg_table() local
57 ret = dma_get_sgtable(priv->dma_dev, sgt, dma_obj->vaddr, in mtk_gem_prime_get_sg_table()
58 dma_obj->dma_addr, obj->size); in mtk_gem_prime_get_sg_table()
80 struct drm_gem_dma_object *dma_obj; in mtk_gem_init() local
88 dma_obj = kzalloc_obj(*dma_obj); in mtk_gem_init()
89 if (!dma_obj) in mtk_gem_init()
92 dma_obj->base.funcs = &mtk_gem_object_funcs; in mtk_gem_init()
96 drm_gem_private_object_init(dev, &dma_obj->base, size); in mtk_gem_init()
98 ret = drm_gem_object_init(dev, &dma_obj->base, size); in mtk_gem_init()
102 kfree(dma_obj); in mtk_gem_init()
106 return dma_obj; in mtk_gem_init()
112 struct drm_gem_dma_object *dma_obj; in mtk_gem_create() local
116 dma_obj = mtk_gem_init(dev, size, false); in mtk_gem_create()
117 if (IS_ERR(dma_obj)) in mtk_gem_create()
118 return ERR_CAST(dma_obj); in mtk_gem_create()
120 obj = &dma_obj->base; in mtk_gem_create()
122 dma_obj->vaddr = dma_alloc_wc(priv->dma_dev, obj->size, in mtk_gem_create()
123 &dma_obj->dma_addr, in mtk_gem_create()
125 if (!dma_obj->vaddr) { in mtk_gem_create()
132 dma_obj->vaddr, &dma_obj->dma_addr, in mtk_gem_create()
135 return dma_obj; in mtk_gem_create()
139 kfree(dma_obj); in mtk_gem_create()
146 struct drm_gem_dma_object *dma_obj; in mtk_gem_dumb_create() local
159 dma_obj = mtk_gem_create(dev, args->size); in mtk_gem_dumb_create()
160 if (IS_ERR(dma_obj)) in mtk_gem_dumb_create()
161 return PTR_ERR(dma_obj); in mtk_gem_dumb_create()
167 ret = drm_gem_handle_create(file_priv, &dma_obj->base, &args->handle); in mtk_gem_dumb_create()
172 drm_gem_object_put(&dma_obj->base); in mtk_gem_dumb_create()
177 mtk_gem_free_object(&dma_obj->base); in mtk_gem_dumb_create()
185 struct drm_gem_dma_object *dma_obj = to_drm_gem_dma_obj(obj); in mtk_gem_object_mmap() local
204 ret = dma_mmap_wc(priv->dma_dev, vma, dma_obj->vaddr, in mtk_gem_object_mmap()
205 dma_obj->dma_addr, obj->size); in mtk_gem_object_mmap()
215 struct drm_gem_dma_object *dma_obj; in mtk_gem_prime_import_sg_table() local
223 dma_obj = mtk_gem_init(dev, attach->dmabuf->size, true); in mtk_gem_prime_import_sg_table()
224 if (IS_ERR(dma_obj)) in mtk_gem_prime_import_sg_table()
225 return ERR_CAST(dma_obj); in mtk_gem_prime_import_sg_table()
227 dma_obj->dma_addr = sg_dma_address(sgt->sgl); in mtk_gem_prime_import_sg_table()
228 dma_obj->sgt = sgt; in mtk_gem_prime_import_sg_table()
230 return &dma_obj->base; in mtk_gem_prime_import_sg_table()