Lines Matching refs:desc
169 fRing.desc[i].next = i + 1;
170 fRing.desc[fRingSize - 1].next = UINT16_MAX;
186 physAddr + ((addr_t)fRing.avail - (addr_t)fRing.desc),
187 physAddr + ((addr_t)fRing.used - (addr_t)fRing.desc));
277 if ((fRing.desc[index].flags & VRING_DESC_F_INDIRECT) == 0) {
278 while ((fRing.desc[index].flags & VRING_DESC_F_NEXT) != 0) {
279 index = fRing.desc[index].next;
287 fRing.desc[index].next = fRingHeadIndex;
315 uint16 index = QueueVector(insertIndex, fRing.desc, vector,
346 fRing.desc[insertIndex].addr = fDescriptors[insertIndex]->PhysAddr();
347 fRing.desc[insertIndex].len = index * sizeof(struct vring_desc);
348 fRing.desc[insertIndex].flags = VRING_DESC_F_INDIRECT;
349 fRingHeadIndex = fRing.desc[insertIndex].next;
371 VirtioQueue::QueueVector(uint16 insertIndex, struct vring_desc *desc,
378 for (size_t i = 0; i < total; i++, index = desc[index].next) {
379 desc[index].addr = vector[i].address;
380 desc[index].len = vector[i].size;
381 desc[index].flags = 0;
383 desc[index].flags |= VRING_DESC_F_NEXT;
385 desc[index].flags |= VRING_DESC_F_WRITE;