Lines Matching refs:req

61 static void fotg210_done(struct fotg210_ep *ep, struct fotg210_request *req,  in fotg210_done()  argument
64 list_del_init(&req->queue); in fotg210_done()
68 req->req.status = -ESHUTDOWN; in fotg210_done()
70 req->req.status = status; in fotg210_done()
73 usb_gadget_giveback_request(&ep->ep, &req->req); in fotg210_done()
215 struct fotg210_request *req; in fotg210_ep_disable() local
223 req = list_entry(ep->queue.next, in fotg210_ep_disable()
226 fotg210_done(ep, req, -ECONNRESET); in fotg210_ep_disable()
236 struct fotg210_request *req; in fotg210_ep_alloc_request() local
238 req = kzalloc(sizeof(struct fotg210_request), gfp_flags); in fotg210_ep_alloc_request()
239 if (!req) in fotg210_ep_alloc_request()
242 INIT_LIST_HEAD(&req->queue); in fotg210_ep_alloc_request()
244 return &req->req; in fotg210_ep_alloc_request()
250 struct fotg210_request *req; in fotg210_ep_free_request() local
252 req = container_of(_req, struct fotg210_request, req); in fotg210_ep_free_request()
253 kfree(req); in fotg210_ep_free_request()
330 struct fotg210_request *req) in fotg210_start_dma() argument
338 buffer = req->req.buf; in fotg210_start_dma()
339 length = req->req.length; in fotg210_start_dma()
341 buffer = req->req.buf + req->req.actual; in fotg210_start_dma()
347 buffer = req->req.buf + req->req.actual; in fotg210_start_dma()
348 if (req->req.length - req->req.actual > ep->ep.maxpacket) in fotg210_start_dma()
351 length = req->req.length; in fotg210_start_dma()
374 req->req.actual += length; in fotg210_start_dma()
380 struct fotg210_request *req) in fotg210_ep0_queue() argument
382 if (!req->req.length) { in fotg210_ep0_queue()
383 fotg210_done(ep, req, 0); in fotg210_ep0_queue()
387 fotg210_start_dma(ep, req); in fotg210_ep0_queue()
388 if ((req->req.length == req->req.actual) || in fotg210_ep0_queue()
389 (req->req.actual < ep->ep.maxpacket)) in fotg210_ep0_queue()
390 fotg210_done(ep, req, 0); in fotg210_ep0_queue()
403 struct fotg210_request *req; in fotg210_ep_queue() local
408 req = container_of(_req, struct fotg210_request, req); in fotg210_ep_queue()
418 list_add_tail(&req->queue, &ep->queue); in fotg210_ep_queue()
420 req->req.actual = 0; in fotg210_ep_queue()
421 req->req.status = -EINPROGRESS; in fotg210_ep_queue()
424 fotg210_ep0_queue(ep, req); in fotg210_ep_queue()
436 struct fotg210_request *req; in fotg210_ep_dequeue() local
440 req = container_of(_req, struct fotg210_request, req); in fotg210_ep_dequeue()
444 fotg210_done(ep, req, -ECONNRESET); in fotg210_ep_dequeue()
802 struct fotg210_request *req; in fotg210_ep0out() local
804 req = list_first_entry(&ep->queue, in fotg210_ep0out()
807 if (req->req.length) in fotg210_ep0out()
808 fotg210_start_dma(ep, req); in fotg210_ep0out()
810 if ((req->req.length - req->req.actual) < ep->ep.maxpacket) in fotg210_ep0out()
811 fotg210_done(ep, req, 0); in fotg210_ep0out()
822 struct fotg210_request *req; in fotg210_ep0in() local
824 req = list_entry(ep->queue.next, in fotg210_ep0in()
827 if (req->req.length) in fotg210_ep0in()
828 fotg210_start_dma(ep, req); in fotg210_ep0in()
830 if ((req->req.length - req->req.actual) < ep->ep.maxpacket) in fotg210_ep0in()
831 fotg210_done(ep, req, 0); in fotg210_ep0in()
847 struct fotg210_request *req = list_entry(ep->queue.next, in fotg210_in_fifo_handler() local
850 if (req->req.length) in fotg210_in_fifo_handler()
851 fotg210_start_dma(ep, req); in fotg210_in_fifo_handler()
852 fotg210_done(ep, req, 0); in fotg210_in_fifo_handler()
857 struct fotg210_request *req = list_entry(ep->queue.next, in fotg210_out_fifo_handler() local
860 fotg210_start_dma(ep, req); in fotg210_out_fifo_handler()
863 if (req->req.length == req->req.actual || in fotg210_out_fifo_handler()
864 req->req.actual < ep->ep.maxpacket) in fotg210_out_fifo_handler()
865 fotg210_done(ep, req, 0); in fotg210_out_fifo_handler()