Lines Matching defs:qsz
56 unsigned VirtqSize(uint16_t qsz)
60 ALIGN(sizeof(struct VirtqDesc) * qsz, VIRTQ_ALIGN_AVAIL) +
61 ALIGN(sizeof(struct VirtqAvail) + sizeof(uint16_t) * qsz, VIRTQ_ALIGN_USED) +
62 sizeof(struct VirtqUsed) + sizeof(struct VirtqUsedElem) * qsz;
149 if (num < q->qsz) {
150 PRINT_ERR("queue %u not available: max qsz=%u, requested=%u\n", queue, num, q->qsz);
154 WRITE_UINT32(q->qsz, dev->base + VIRTMMIO_REG_QUEUENUM);
163 static VADDR_T CalculateQueueAddr(VADDR_T base, uint16_t qsz, struct Virtq *q)
167 q->qsz = qsz;
168 base = ALIGN(base + sizeof(struct VirtqDesc) * qsz, VIRTQ_ALIGN_AVAIL);
170 base = ALIGN(base + sizeof(struct VirtqAvail) + sizeof(uint16_t) * qsz, VIRTQ_ALIGN_USED);
173 return base + sizeof(struct VirtqUsed) + sizeof(struct VirtqUsedElem) * qsz;
176 VADDR_T VirtmmioConfigQueue(struct VirtmmioDev *dev, VADDR_T base, uint16_t qsz[], int num)
181 base = CalculateQueueAddr(base, qsz[i], &dev->vq[i]);