Lines Matching full:unmap
1179 #define __UNMAP_POOL(x) { .size = x, .name = "dmaengine-unmap-" __stringify(x) }
1212 struct dmaengine_unmap_data *unmap = container_of(kref, typeof(*unmap), kref); in dmaengine_unmap() local
1213 struct device *dev = unmap->dev; in dmaengine_unmap()
1216 cnt = unmap->to_cnt; in dmaengine_unmap()
1218 dma_unmap_page(dev, unmap->addr[i], unmap->len, in dmaengine_unmap()
1220 cnt += unmap->from_cnt; in dmaengine_unmap()
1222 dma_unmap_page(dev, unmap->addr[i], unmap->len, in dmaengine_unmap()
1224 cnt += unmap->bidi_cnt; in dmaengine_unmap()
1226 if (unmap->addr[i] == 0) in dmaengine_unmap()
1228 dma_unmap_page(dev, unmap->addr[i], unmap->len, in dmaengine_unmap()
1231 cnt = unmap->map_cnt; in dmaengine_unmap()
1232 mempool_free(unmap, __get_unmap_pool(cnt)->pool); in dmaengine_unmap()
1235 void dmaengine_unmap_put(struct dmaengine_unmap_data *unmap) in dmaengine_unmap_put() argument
1237 if (unmap) in dmaengine_unmap_put()
1238 kref_put(&unmap->kref, dmaengine_unmap); in dmaengine_unmap_put()
1286 struct dmaengine_unmap_data *unmap; in dmaengine_get_unmap_data() local
1288 unmap = mempool_alloc(__get_unmap_pool(nr)->pool, flags); in dmaengine_get_unmap_data()
1289 if (!unmap) in dmaengine_get_unmap_data()
1292 memset(unmap, 0, sizeof(*unmap)); in dmaengine_get_unmap_data()
1293 kref_init(&unmap->kref); in dmaengine_get_unmap_data()
1294 unmap->dev = dev; in dmaengine_get_unmap_data()
1295 unmap->map_cnt = nr; in dmaengine_get_unmap_data()
1297 return unmap; in dmaengine_get_unmap_data()