Lines Matching refs:sgt

66 		if (dobj->sgt)  in armada_gem_free_object()
68 dobj->sgt, DMA_TO_DEVICE); in armada_gem_free_object()
381 struct sg_table *sgt; in armada_gem_prime_map_dma_buf() local
384 sgt = kmalloc(sizeof(*sgt), GFP_KERNEL); in armada_gem_prime_map_dma_buf()
385 if (!sgt) in armada_gem_prime_map_dma_buf()
393 if (sg_alloc_table(sgt, count, GFP_KERNEL)) in armada_gem_prime_map_dma_buf()
398 for_each_sg(sgt->sgl, sg, count, i) { in armada_gem_prime_map_dma_buf()
410 if (dma_map_sg(attach->dev, sgt->sgl, sgt->nents, dir) == 0) { in armada_gem_prime_map_dma_buf()
411 num = sgt->nents; in armada_gem_prime_map_dma_buf()
416 if (sg_alloc_table(sgt, 1, GFP_KERNEL)) in armada_gem_prime_map_dma_buf()
419 sg_set_page(sgt->sgl, dobj->page, dobj->obj.size, 0); in armada_gem_prime_map_dma_buf()
421 if (dma_map_sg(attach->dev, sgt->sgl, sgt->nents, dir) == 0) in armada_gem_prime_map_dma_buf()
425 if (sg_alloc_table(sgt, 1, GFP_KERNEL)) in armada_gem_prime_map_dma_buf()
427 sg_dma_address(sgt->sgl) = dobj->dev_addr; in armada_gem_prime_map_dma_buf()
428 sg_dma_len(sgt->sgl) = dobj->obj.size; in armada_gem_prime_map_dma_buf()
432 return sgt; in armada_gem_prime_map_dma_buf()
435 for_each_sg(sgt->sgl, sg, num, i) in armada_gem_prime_map_dma_buf()
438 sg_free_table(sgt); in armada_gem_prime_map_dma_buf()
440 kfree(sgt); in armada_gem_prime_map_dma_buf()
445 struct sg_table *sgt, enum dma_data_direction dir) in armada_gem_prime_unmap_dma_buf() argument
452 dma_unmap_sg(attach->dev, sgt->sgl, sgt->nents, dir); in armada_gem_prime_unmap_dma_buf()
456 for_each_sg(sgt->sgl, sg, sgt->nents, i) in armada_gem_prime_unmap_dma_buf()
460 sg_free_table(sgt); in armada_gem_prime_unmap_dma_buf()
461 kfree(sgt); in armada_gem_prime_unmap_dma_buf()
545 dobj->sgt = dma_buf_map_attachment(dobj->obj.import_attach, in armada_gem_map_import()
547 if (IS_ERR(dobj->sgt)) { in armada_gem_map_import()
548 ret = PTR_ERR(dobj->sgt); in armada_gem_map_import()
549 dobj->sgt = NULL; in armada_gem_map_import()
553 if (dobj->sgt->nents > 1) { in armada_gem_map_import()
557 if (sg_dma_len(dobj->sgt->sgl) < dobj->obj.size) { in armada_gem_map_import()
561 dobj->dev_addr = sg_dma_address(dobj->sgt->sgl); in armada_gem_map_import()