aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_gem_cma_helper.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/drm_gem_cma_helper.c')
-rw-r--r--drivers/gpu/drm/drm_gem_cma_helper.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/gpu/drm/drm_gem_cma_helper.c b/drivers/gpu/drm/drm_gem_cma_helper.c
index e467e67af6e7..0316310e2cc4 100644
--- a/drivers/gpu/drm/drm_gem_cma_helper.c
+++ b/drivers/gpu/drm/drm_gem_cma_helper.c
@@ -316,7 +316,8 @@ out:
316EXPORT_SYMBOL_GPL(drm_gem_cma_prime_get_sg_table); 316EXPORT_SYMBOL_GPL(drm_gem_cma_prime_get_sg_table);
317 317
318struct drm_gem_object * 318struct drm_gem_object *
319drm_gem_cma_prime_import_sg_table(struct drm_device *dev, size_t size, 319drm_gem_cma_prime_import_sg_table(struct drm_device *dev,
320 struct dma_buf_attachment *attach,
320 struct sg_table *sgt) 321 struct sg_table *sgt)
321{ 322{
322 struct drm_gem_cma_object *cma_obj; 323 struct drm_gem_cma_object *cma_obj;
@@ -325,14 +326,14 @@ drm_gem_cma_prime_import_sg_table(struct drm_device *dev, size_t size,
325 return ERR_PTR(-EINVAL); 326 return ERR_PTR(-EINVAL);
326 327
327 /* Create a CMA GEM buffer. */ 328 /* Create a CMA GEM buffer. */
328 cma_obj = __drm_gem_cma_create(dev, size); 329 cma_obj = __drm_gem_cma_create(dev, attach->dmabuf->size);
329 if (IS_ERR(cma_obj)) 330 if (IS_ERR(cma_obj))
330 return ERR_CAST(cma_obj); 331 return ERR_CAST(cma_obj);
331 332
332 cma_obj->paddr = sg_dma_address(sgt->sgl); 333 cma_obj->paddr = sg_dma_address(sgt->sgl);
333 cma_obj->sgt = sgt; 334 cma_obj->sgt = sgt;
334 335
335 DRM_DEBUG_PRIME("dma_addr = %pad, size = %zu\n", &cma_obj->paddr, size); 336 DRM_DEBUG_PRIME("dma_addr = %pad, size = %zu\n", &cma_obj->paddr, attach->dmabuf->size);
336 337
337 return &cma_obj->base; 338 return &cma_obj->base;
338} 339}