Lines Matching refs:desc

133     struct vring_desc *desc;  member
147 vr->desc = (struct vring_desc *)p; in vring_init()
201 vq->first_unused = vq->vring.desc[idx].next; in get_unused_desc()
212 while (vq->vring.desc[idx].flags & VIRTQ_DESC_F_NEXT) { in put_unused_desc_chain()
213 idx = vq->vring.desc[idx].next; in put_unused_desc_chain()
217 vq->vring.desc[idx].flags = VIRTQ_DESC_F_NEXT; in put_unused_desc_chain()
218 vq->vring.desc[idx].next = vq->first_unused; in put_unused_desc_chain()
241 struct vring_desc *desc = (struct vring_desc *)va_indirect; in virtqueue_add_buf_split() local
244 desc[i].flags = (i < out ? 0 : VIRTQ_DESC_F_WRITE); in virtqueue_add_buf_split()
245 desc[i].flags |= VIRTQ_DESC_F_NEXT; in virtqueue_add_buf_split()
246 desc[i].addr = sg[i].physAddr.QuadPart; in virtqueue_add_buf_split()
247 desc[i].len = sg[i].length; in virtqueue_add_buf_split()
248 desc[i].next = (u16)i + 1; in virtqueue_add_buf_split()
250 desc[i - 1].flags &= ~VIRTQ_DESC_F_NEXT; in virtqueue_add_buf_split()
253 vq->vring.desc[idx].flags = VIRTQ_DESC_F_INDIRECT; in virtqueue_add_buf_split()
254 vq->vring.desc[idx].addr = phys_indirect; in virtqueue_add_buf_split()
255 vq->vring.desc[idx].len = i * sizeof(struct vring_desc); in virtqueue_add_buf_split()
270 vring->desc[idx].addr = sg[0].physAddr.QuadPart; in virtqueue_add_buf_split()
271 vring->desc[idx].len = sg[0].length; in virtqueue_add_buf_split()
272 vring->desc[idx].flags = VIRTQ_DESC_F_NEXT; in virtqueue_add_buf_split()
274 vring->desc[idx].flags |= VIRTQ_DESC_F_WRITE; in virtqueue_add_buf_split()
276 vring->desc[idx].next = vq->first_unused; in virtqueue_add_buf_split()
282 vring->desc[last_idx].addr = sg[i].physAddr.QuadPart; in virtqueue_add_buf_split()
283 vring->desc[last_idx].len = sg[i].length; in virtqueue_add_buf_split()
284 vring->desc[last_idx].flags = VIRTQ_DESC_F_NEXT; in virtqueue_add_buf_split()
286 vring->desc[last_idx].flags |= VIRTQ_DESC_F_WRITE; in virtqueue_add_buf_split()
288 vring->desc[last_idx].next = vq->first_unused; in virtqueue_add_buf_split()
290 vring->desc[last_idx].flags &= ~VIRTQ_DESC_F_NEXT; in virtqueue_add_buf_split()
439 void *pages = vq->vring.desc; in virtqueue_shutdown_split()
514 vq->vring.desc[i].flags = VIRTQ_DESC_F_NEXT; in vring_new_virtqueue_split()
515 vq->vring.desc[i].next = i + 1; in vring_new_virtqueue_split()