Lines Matching refs:unmap
1228 struct dmaengine_unmap_data *unmap; in ntb_async_rx() local
1247 unmap = dmaengine_get_unmap_data(device->dev, 2, GFP_NOWAIT); in ntb_async_rx()
1248 if (!unmap) in ntb_async_rx()
1251 unmap->len = len; in ntb_async_rx()
1252 unmap->addr[0] = dma_map_page(device->dev, virt_to_page(offset), in ntb_async_rx()
1254 if (dma_mapping_error(device->dev, unmap->addr[0])) in ntb_async_rx()
1257 unmap->to_cnt = 1; in ntb_async_rx()
1259 unmap->addr[1] = dma_map_page(device->dev, virt_to_page(buf), in ntb_async_rx()
1261 if (dma_mapping_error(device->dev, unmap->addr[1])) in ntb_async_rx()
1264 unmap->from_cnt = 1; in ntb_async_rx()
1266 txd = device->device_prep_dma_memcpy(chan, unmap->addr[1], in ntb_async_rx()
1267 unmap->addr[0], len, in ntb_async_rx()
1274 dma_set_unmap(txd, unmap); in ntb_async_rx()
1280 dmaengine_unmap_put(unmap); in ntb_async_rx()
1289 dmaengine_unmap_put(unmap); in ntb_async_rx()
1291 dmaengine_unmap_put(unmap); in ntb_async_rx()
1457 struct dmaengine_unmap_data *unmap; in ntb_async_tx() local
1485 unmap = dmaengine_get_unmap_data(device->dev, 1, GFP_NOWAIT); in ntb_async_tx()
1486 if (!unmap) in ntb_async_tx()
1489 unmap->len = len; in ntb_async_tx()
1490 unmap->addr[0] = dma_map_page(device->dev, virt_to_page(buf), in ntb_async_tx()
1492 if (dma_mapping_error(device->dev, unmap->addr[0])) in ntb_async_tx()
1495 unmap->to_cnt = 1; in ntb_async_tx()
1497 txd = device->device_prep_dma_memcpy(chan, dest, unmap->addr[0], len, in ntb_async_tx()
1504 dma_set_unmap(txd, unmap); in ntb_async_tx()
1510 dmaengine_unmap_put(unmap); in ntb_async_tx()
1517 dmaengine_unmap_put(unmap); in ntb_async_tx()
1519 dmaengine_unmap_put(unmap); in ntb_async_tx()