diff options
Diffstat (limited to 'drivers/gpu/drm/drm_gem_cma_helper.c')
-rw-r--r-- | drivers/gpu/drm/drm_gem_cma_helper.c | 7 |
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: | |||
316 | EXPORT_SYMBOL_GPL(drm_gem_cma_prime_get_sg_table); | 316 | EXPORT_SYMBOL_GPL(drm_gem_cma_prime_get_sg_table); |
317 | 317 | ||
318 | struct drm_gem_object * | 318 | struct drm_gem_object * |
319 | drm_gem_cma_prime_import_sg_table(struct drm_device *dev, size_t size, | 319 | drm_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 | } |