Lines Matching refs:sglist
3150 struct scatterlist *sglist; in pmcraid_build_ioadl() local
3182 scsi_for_each_sg(scsi_cmd, sglist, nseg, i) { in pmcraid_build_ioadl()
3183 ioadl[i].data_len = cpu_to_le32(sg_dma_len(sglist)); in pmcraid_build_ioadl()
3184 ioadl[i].address = cpu_to_le64(sg_dma_address(sglist)); in pmcraid_build_ioadl()
3202 static void pmcraid_free_sglist(struct pmcraid_sglist *sglist) in pmcraid_free_sglist() argument
3204 sgl_free_order(sglist->scatterlist, sglist->order); in pmcraid_free_sglist()
3205 kfree(sglist); in pmcraid_free_sglist()
3220 struct pmcraid_sglist *sglist; in pmcraid_alloc_sglist() local
3228 sglist = kzalloc(sizeof(struct pmcraid_sglist), GFP_KERNEL); in pmcraid_alloc_sglist()
3229 if (sglist == NULL) in pmcraid_alloc_sglist()
3232 sglist->order = order; in pmcraid_alloc_sglist()
3234 GFP_KERNEL | GFP_DMA | __GFP_ZERO, &sglist->num_sg); in pmcraid_alloc_sglist()
3236 return sglist; in pmcraid_alloc_sglist()
3252 struct pmcraid_sglist *sglist, in pmcraid_copy_sglist() argument
3265 bsize_elem = PAGE_SIZE * (1 << sglist->order); in pmcraid_copy_sglist()
3267 sg = sglist->scatterlist; in pmcraid_copy_sglist()
3489 struct pmcraid_sglist *sglist = NULL; in pmcraid_build_passthrough_ioadls() local
3495 sglist = pmcraid_alloc_sglist(buflen); in pmcraid_build_passthrough_ioadls()
3497 if (!sglist) { in pmcraid_build_passthrough_ioadls()
3502 sglist->num_dma_sg = dma_map_sg(&cmd->drv_inst->pdev->dev, in pmcraid_build_passthrough_ioadls()
3503 sglist->scatterlist, in pmcraid_build_passthrough_ioadls()
3504 sglist->num_sg, direction); in pmcraid_build_passthrough_ioadls()
3506 if (!sglist->num_dma_sg || sglist->num_dma_sg > PMCRAID_MAX_IOADLS) { in pmcraid_build_passthrough_ioadls()
3509 pmcraid_free_sglist(sglist); in pmcraid_build_passthrough_ioadls()
3513 cmd->sglist = sglist; in pmcraid_build_passthrough_ioadls()
3516 ioadl = pmcraid_init_ioadls(cmd, sglist->num_dma_sg); in pmcraid_build_passthrough_ioadls()
3519 for_each_sg(sglist->scatterlist, sg, sglist->num_dma_sg, i) { in pmcraid_build_passthrough_ioadls()
3548 struct pmcraid_sglist *sglist = cmd->sglist; in pmcraid_release_passthrough_ioadls() local
3552 sglist->scatterlist, in pmcraid_release_passthrough_ioadls()
3553 sglist->num_sg, in pmcraid_release_passthrough_ioadls()
3555 pmcraid_free_sglist(sglist); in pmcraid_release_passthrough_ioadls()
3556 cmd->sglist = NULL; in pmcraid_release_passthrough_ioadls()
3706 rc = pmcraid_copy_sglist(cmd->sglist, in pmcraid_ioctl_passthrough()
3804 rc = pmcraid_copy_sglist(cmd->sglist, in pmcraid_ioctl_passthrough()