Lines Matching refs:urb_p
66 struct urbp *urb_p;
69 list_for_each_entry(urb_p, &udc->urb_queue, urb_entry) {
70 if (urb_p->seqnum != pdu->u.cmd_unlink.seqnum)
72 urb_p->urb->unlinked = -ECONNRESET;
73 urb_p->seqnum = pdu->base.seqnum;
92 struct urbp *urb_p;
96 urb_p = alloc_urbp();
97 if (!urb_p) {
108 urb_p->ep = vudc_find_endpoint(udc, address);
109 if (!urb_p->ep) {
117 urb_p->type = urb_p->ep->type;
120 urb_p->new = 1;
121 urb_p->seqnum = pdu->base.seqnum;
123 if (urb_p->ep->type == USB_ENDPOINT_XFER_ISOC) {
127 maxp = usb_endpoint_maxp(urb_p->ep->desc);
128 maxp *= usb_endpoint_maxp_mult(urb_p->ep->desc);
142 ret = alloc_urb_from_cmd(&urb_p->urb, pdu, urb_p->ep->type);
149 urb_p->urb->status = -EINPROGRESS;
152 urb_p->urb->pipe &= ~(3 << 30);
153 switch (urb_p->ep->type) {
155 urb_p->urb->pipe |= (PIPE_BULK << 30);
158 urb_p->urb->pipe |= (PIPE_INTERRUPT << 30);
161 urb_p->urb->pipe |= (PIPE_CONTROL << 30);
164 urb_p->urb->pipe |= (PIPE_ISOCHRONOUS << 30);
167 ret = usbip_recv_xbuff(&udc->ud, urb_p->urb);
171 ret = usbip_recv_iso(&udc->ud, urb_p->urb);
177 list_add_tail(&urb_p->urb_entry, &udc->urb_queue);
183 free_urbp_and_urb(urb_p);