Home | History | Annotate | Download | only in usb

Lines Matching defs:vxfer

131  * Each xfer from the point of view of the USB stack is a vxfer from the point
134 * A vxfer has a linked list containing a maximum of two packets: a request
137 * vxfer and a port.
184 struct vhci_xfer *vxfer;
280 vhci_xfer_t *vxfer = (vhci_xfer_t *)xfer;
288 req->vxfer = vxfer;
292 req->buf = (uint8_t *)&vxfer->reqbuf;
293 req->size = sizeof(vxfer->reqbuf);
298 memset(&vxfer->reqbuf, 0, sizeof(vxfer->reqbuf));
299 vxfer->reqbuf.type = VHCI_REQ_CTRL;
300 memcpy(&vxfer->reqbuf.u.ctrl, &xfer->ux_request,
307 res->vxfer = vxfer;
311 res->buf = (uint8_t *)&vxfer->resbuf;
312 res->size = sizeof(vxfer->resbuf);
325 dat->vxfer = vxfer;
336 vxfer->port = port;
337 vxfer->npkts = npkts;
338 TAILQ_INIT(&vxfer->pkts);
339 TAILQ_INSERT_TAIL(&vxfer->pkts, req, xferlist);
341 TAILQ_INSERT_TAIL(&vxfer->pkts, res, xferlist);
343 TAILQ_INSERT_TAIL(&vxfer->pkts, dat, xferlist);
357 vhci_xfer_t *vxfer = pkt->vxfer;
358 vhci_port_t *port = vxfer->port;
372 TAILQ_REMOVE(&vxfer->pkts, pkt, xferlist);
376 KASSERT(vxfer->npkts > 0);
377 vxfer->npkts--;
378 if (vxfer->npkts > 0)
380 KASSERT(TAILQ_FIRST(&vxfer->pkts) == NULL);
441 vhci_xfer_t *vxfer;
443 vxfer = kmem_zalloc(sizeof(*vxfer), KM_SLEEP);
445 vxfer->xfer.ux_state = XFER_BUSY;
447 return (struct usbd_xfer *)vxfer;
453 vhci_xfer_t *vxfer = (vhci_xfer_t *)xfer;
455 KASSERT(vxfer->npkts == 0);
456 KASSERT(TAILQ_FIRST(&vxfer->pkts) == NULL);
459 vxfer->xfer.ux_state = XFER_FREE;
461 kmem_free(vxfer, sizeof(*vxfer));
643 vhci_xfer_t *vxfer = (vhci_xfer_t *)xfer;
645 vhci_port_t *port = vxfer->port;
660 while (vxfer->npkts > 0) {
661 pkt = TAILQ_FIRST(&vxfer->pkts);
665 KASSERT(TAILQ_FIRST(&vxfer->pkts) == NULL);
830 vhci_xfer_t *vxfer;
842 vxfer = pkt->vxfer;
843 KASSERT(vxfer->xfer.ux_status == USBD_IN_PROGRESS);
845 if (vxfer->npkts == 0)
846 TAILQ_INSERT_TAIL(&vxferlist, vxfer, freelist);
853 vxfer = pkt->vxfer;
854 KASSERT(vxfer->xfer.ux_status == USBD_IN_PROGRESS);
856 if (vxfer->npkts == 0)
857 TAILQ_INSERT_TAIL(&vxferlist, vxfer, freelist);
862 while ((vxfer = TAILQ_FIRST(&vxferlist)) != NULL) {
863 struct usbd_xfer *xfer = &vxfer->xfer;
864 TAILQ_REMOVE(&vxferlist, vxfer, freelist);
1039 vhci_xfer_t *vxfer;
1060 vxfer = pkt->vxfer;
1066 KASSERT(vxfer->xfer.ux_status == USBD_IN_PROGRESS);
1078 if (vxfer->npkts == 0) {
1079 TAILQ_INSERT_TAIL(&vxferlist, vxfer, freelist);
1090 while ((vxfer = TAILQ_FIRST(&vxferlist)) != NULL) {
1091 struct usbd_xfer *xfer = &vxfer->xfer;
1092 TAILQ_REMOVE(&vxferlist, vxfer, freelist);
1113 vhci_xfer_t *vxfer;
1134 vxfer = pkt->vxfer;
1139 pktsize = ulmin(vxfer->resbuf.size, pktsize);
1144 KASSERT(vxfer->xfer.ux_status == USBD_IN_PROGRESS);
1156 if (vxfer->npkts == 0) {
1157 TAILQ_INSERT_TAIL(&vxferlist, vxfer, freelist);
1168 while ((vxfer = TAILQ_FIRST(&vxferlist)) != NULL) {
1169 struct usbd_xfer *xfer = &vxfer->xfer;
1170 TAILQ_REMOVE(&vxferlist, vxfer, freelist);
1173 xfer->ux_actlen = ulmin(vxfer->resbuf.size, xfer->ux_length);