Lines Matching refs:sge
670 struct ipath_sge *sge; in ipath_sdma_verbs_send() local
729 sge = &ss->sge; in ipath_sdma_verbs_send()
735 if (len > sge->length) in ipath_sdma_verbs_send()
736 len = sge->length; in ipath_sdma_verbs_send()
737 if (len > sge->sge_length) in ipath_sdma_verbs_send()
738 len = sge->sge_length; in ipath_sdma_verbs_send()
741 addr = dma_map_single(&dd->pcidev->dev, sge->vaddr, dw << 2, in ipath_sdma_verbs_send()
759 sge->vaddr += len; in ipath_sdma_verbs_send()
760 sge->length -= len; in ipath_sdma_verbs_send()
761 sge->sge_length -= len; in ipath_sdma_verbs_send()
762 if (sge->sge_length == 0) { in ipath_sdma_verbs_send()
764 *sge = *ss->sg_list++; in ipath_sdma_verbs_send()
765 } else if (sge->length == 0 && sge->mr != NULL) { in ipath_sdma_verbs_send()
766 if (++sge->n >= IPATH_SEGSZ) { in ipath_sdma_verbs_send()
767 if (++sge->m >= sge->mr->mapsz) in ipath_sdma_verbs_send()
769 sge->n = 0; in ipath_sdma_verbs_send()
771 sge->vaddr = in ipath_sdma_verbs_send()
772 sge->mr->map[sge->m]->segs[sge->n].vaddr; in ipath_sdma_verbs_send()
773 sge->length = in ipath_sdma_verbs_send()
774 sge->mr->map[sge->m]->segs[sge->n].length; in ipath_sdma_verbs_send()