Lines Matching refs:req

140 	struct usb_request		*req;
196 /* must hold dev->lock before accessing ep or req */
198 struct usb_request *req;
274 static void epio_complete (struct usb_ep *ep, struct usb_request *req)
278 if (!req->context)
280 if (req->status)
281 epdata->status = req->status;
283 epdata->status = req->actual;
284 complete ((struct completion *)req->context);
338 struct usb_request *req = epdata->req;
340 req->context = &done;
341 req->complete = epio_complete;
342 req->buf = buf;
343 req->length = len;
344 value = usb_ep_queue (epdata->ep, req, GFP_ATOMIC);
356 usb_ep_dequeue (epdata->ep, epdata->req);
432 struct usb_request *req;
452 if (likely(epdata && epdata->ep && priv->req))
453 value = usb_ep_dequeue (epdata->ep, priv->req);
483 static void ep_aio_complete(struct usb_ep *ep, struct usb_request *req)
485 struct kiocb *iocb = req->context;
491 priv->req = NULL;
498 if (priv->to_free == NULL || unlikely(req->actual == 0)) {
499 kfree(req->buf);
505 iocb->ki_complete(iocb, req->actual ? req->actual : req->status,
506 req->status);
509 if (unlikely(0 != req->status))
511 ep->name, req->status, req->actual);
513 priv->buf = req->buf;
514 priv->actual = req->actual;
519 usb_ep_free_request(ep, req);
530 struct usb_request *req;
550 req = usb_ep_alloc_request(epdata->ep, GFP_ATOMIC);
552 if (unlikely(!req))
555 priv->req = req;
556 req->buf = buf;
557 req->length = len;
558 req->complete = ep_aio_complete;
559 req->context = iocb;
560 value = usb_ep_queue(epdata->ep, req, GFP_ATOMIC);
562 usb_ep_free_request(epdata->ep, req);
855 static void clean_req (struct usb_ep *ep, struct usb_request *req)
859 if (req->buf != dev->rbuf) {
860 kfree(req->buf);
861 req->buf = dev->rbuf;
863 req->complete = epio_complete;
867 static void ep0_complete (struct usb_ep *ep, struct usb_request *req)
876 dev->setup_out_error = (req->status != 0);
884 if (free && req->buf != &dev->rbuf)
885 clean_req (ep, req);
886 req->complete = epio_complete;
890 static int setup_req (struct usb_ep *ep, struct usb_request *req, u16 len)
899 req->buf = kmalloc(len, GFP_ATOMIC);
900 if (req->buf == NULL) {
901 req->buf = dev->rbuf;
904 req->complete = ep0_complete;
905 req->length = len;
906 req->zero = 0;
941 struct usb_request *req = dev->req;
943 if ((retval = setup_req (ep, req, 0)) == 0) {
946 retval = usb_ep_queue (ep, req, GFP_KERNEL);
989 len = min (len, (size_t)dev->req->actual);
992 if (copy_to_user (buf, dev->req->buf, len))
998 clean_req (dev->gadget->ep0, dev->req);
1138 retval = setup_req (dev->gadget->ep0, dev->req, len);
1143 if (copy_from_user (dev->req->buf, buf, len))
1147 dev->req->zero = 1;
1149 dev->gadget->ep0, dev->req,
1155 clean_req (dev->gadget->ep0, dev->req);
1320 dev->req->buf = dev->hs_config;
1323 dev->req->buf = dev->config;
1326 ((u8 *)dev->req->buf) [1] = type;
1334 struct usb_request *req = dev->req;
1378 req->buf = dev->rbuf;
1379 req->context = NULL;
1390 req->buf = dev->dev;
1467 *(u8 *)req->buf = dev->current_config;
1474 VDEBUG (dev, "%s req%02x.%02x v%04x i%04x l%d\n",
1491 value = setup_req (gadget->ep0, dev->req,
1498 value = usb_ep_queue (gadget->ep0, dev->req,
1503 clean_req (gadget->ep0, dev->req);
1522 req->length = value;
1523 req->zero = value < w_length;
1527 value = usb_ep_queue (gadget->ep0, req, GFP_KERNEL);
1533 req->status = 0;
1568 usb_ep_free_request (ep->ep, ep->req);
1613 data->req = usb_ep_alloc_request (ep, GFP_KERNEL);
1614 if (!data->req)
1626 usb_ep_free_request (ep, data->req);
1657 if (dev->req)
1658 usb_ep_free_request (gadget->ep0, dev->req);
1683 dev->req = usb_ep_alloc_request (gadget->ep0, GFP_KERNEL);
1684 if (!dev->req)
1686 dev->req->context = NULL;
1687 dev->req->complete = epio_complete;