Lines Matching refs:lm_file
204 struct pds_vfio_lm_file *lm_file) in pds_vfio_dma_map_lm_file() argument
213 if (!lm_file) in pds_vfio_dma_map_lm_file()
217 err = dma_map_sgtable(dev, &lm_file->sg_table, dir, 0); in pds_vfio_dma_map_lm_file()
221 lm_file->num_sge = lm_file->sg_table.nents; in pds_vfio_dma_map_lm_file()
224 sgl_size = lm_file->num_sge * sizeof(struct pds_lm_sg_elem); in pds_vfio_dma_map_lm_file()
233 for_each_sgtable_dma_sg(&lm_file->sg_table, sg, i) { in pds_vfio_dma_map_lm_file()
246 lm_file->sgl = sgl; in pds_vfio_dma_map_lm_file()
247 lm_file->sgl_addr = sgl_addr; in pds_vfio_dma_map_lm_file()
254 lm_file->num_sge = 0; in pds_vfio_dma_map_lm_file()
255 dma_unmap_sgtable(dev, &lm_file->sg_table, dir, 0); in pds_vfio_dma_map_lm_file()
261 struct pds_vfio_lm_file *lm_file) in pds_vfio_dma_unmap_lm_file() argument
263 if (!lm_file) in pds_vfio_dma_unmap_lm_file()
267 if (lm_file->sgl) { in pds_vfio_dma_unmap_lm_file()
268 dma_unmap_single(dev, lm_file->sgl_addr, in pds_vfio_dma_unmap_lm_file()
269 lm_file->num_sge * sizeof(*lm_file->sgl), in pds_vfio_dma_unmap_lm_file()
271 kfree(lm_file->sgl); in pds_vfio_dma_unmap_lm_file()
272 lm_file->sgl = NULL; in pds_vfio_dma_unmap_lm_file()
273 lm_file->sgl_addr = DMA_MAPPING_ERROR; in pds_vfio_dma_unmap_lm_file()
274 lm_file->num_sge = 0; in pds_vfio_dma_unmap_lm_file()
278 dma_unmap_sgtable(dev, &lm_file->sg_table, dir, 0); in pds_vfio_dma_unmap_lm_file()
292 struct pds_vfio_lm_file *lm_file; in pds_vfio_get_lm_state_cmd() local
297 lm_file = pds_vfio->save_file; in pds_vfio_get_lm_state_cmd()
299 err = pds_vfio_dma_map_lm_file(pdsc_dev, DMA_FROM_DEVICE, lm_file); in pds_vfio_get_lm_state_cmd()
306 cmd.lm_save.sgl_addr = cpu_to_le64(lm_file->sgl_addr); in pds_vfio_get_lm_state_cmd()
307 cmd.lm_save.num_sge = cpu_to_le32(lm_file->num_sge); in pds_vfio_get_lm_state_cmd()
314 pds_vfio_dma_unmap_lm_file(pdsc_dev, DMA_FROM_DEVICE, lm_file); in pds_vfio_get_lm_state_cmd()
330 struct pds_vfio_lm_file *lm_file; in pds_vfio_set_lm_state_cmd() local
335 lm_file = pds_vfio->restore_file; in pds_vfio_set_lm_state_cmd()
337 err = pds_vfio_dma_map_lm_file(pdsc_dev, DMA_TO_DEVICE, lm_file); in pds_vfio_set_lm_state_cmd()
345 cmd.lm_restore.sgl_addr = cpu_to_le64(lm_file->sgl_addr); in pds_vfio_set_lm_state_cmd()
346 cmd.lm_restore.num_sge = cpu_to_le32(lm_file->num_sge); in pds_vfio_set_lm_state_cmd()
353 pds_vfio_dma_unmap_lm_file(pdsc_dev, DMA_TO_DEVICE, lm_file); in pds_vfio_set_lm_state_cmd()