Lines Matching refs:req

106 	struct usb_request	*req;		/* for control responses */  member
1127 static void eth_status_complete(struct usb_ep *ep, struct usb_request *req) in eth_status_complete() argument
1129 struct usb_cdc_notification *event = req->buf; in eth_status_complete()
1130 int value = req->status; in eth_status_complete()
1136 __le32 *data = req->buf + sizeof *event; in eth_status_complete()
1147 req->length = STATUS_BYTECOUNT; in eth_status_complete()
1148 value = usb_ep_queue(ep, req, GFP_ATOMIC); in eth_status_complete()
1161 req->context = NULL; in eth_status_complete()
1166 struct usb_request *req = dev->stat_req; in issue_start_status() local
1187 event = req->buf; in issue_start_status()
1194 req->length = sizeof *event; in issue_start_status()
1195 req->complete = eth_status_complete; in issue_start_status()
1196 req->context = dev; in issue_start_status()
1198 value = usb_ep_queue(dev->status_ep, req, GFP_ATOMIC); in issue_start_status()
1207 static void eth_setup_complete(struct usb_ep *ep, struct usb_request *req) in eth_setup_complete() argument
1209 if (req->status || req->actual != req->length) in eth_setup_complete()
1211 req->status, req->actual, req->length); in eth_setup_complete()
1216 static void rndis_response_complete(struct usb_ep *ep, struct usb_request *req) in rndis_response_complete() argument
1218 if (req->status || req->actual != req->length) in rndis_response_complete()
1220 req->status, req->actual, req->length); in rndis_response_complete()
1225 static void rndis_command_complete(struct usb_ep *ep, struct usb_request *req) in rndis_command_complete() argument
1231 status = rndis_msg_parser(dev->rndis_config, (u8 *) req->buf); in rndis_command_complete()
1251 struct usb_request *req = dev->req; in eth_setup() local
1264 req->complete = eth_setup_complete; in eth_setup()
1275 memcpy(req->buf, &device_desc, value); in eth_setup()
1281 memcpy(req->buf, &dev_qualifier, value); in eth_setup()
1289 value = config_buf(gadget, req->buf, in eth_setup()
1299 wValue & 0xff, req->buf); in eth_setup()
1320 *(u8 *)req->buf = dev->config; in eth_setup()
1406 *(u8 *)req->buf = 0; in eth_setup()
1410 *(u8 *)req->buf = 1 ; in eth_setup()
1456 req->complete = rndis_command_complete; in eth_setup()
1474 memcpy(req->buf, buf, n); in eth_setup()
1475 req->complete = rndis_response_complete; in eth_setup()
1493 req->length = value; in eth_setup()
1494 req->zero = value < wLength in eth_setup()
1496 value = usb_ep_queue(gadget->ep0, req, GFP_ATOMIC); in eth_setup()
1499 req->status = 0; in eth_setup()
1500 eth_setup_complete(gadget->ep0, req); in eth_setup()
1510 static void rx_complete(struct usb_ep *ep, struct usb_request *req);
1512 static int rx_submit(struct eth_dev *dev, struct usb_request *req, in rx_submit() argument
1532 if (!req) in rx_submit()
1547 req->buf = (u8 *)net_rx_packets[0]; in rx_submit()
1548 req->length = size; in rx_submit()
1549 req->complete = rx_complete; in rx_submit()
1551 retval = usb_ep_queue(dev->out_ep, req, gfp_flags); in rx_submit()
1559 static void rx_complete(struct usb_ep *ep, struct usb_request *req) in rx_complete() argument
1563 debug("%s: status %d\n", __func__, req->status); in rx_complete()
1564 switch (req->status) { in rx_complete()
1569 int length = rndis_rm_hdr(req->buf, req->actual); in rx_complete()
1572 req->length -= length; in rx_complete()
1573 req->actual -= length; in rx_complete()
1575 if (req->actual < ETH_HLEN || ETH_FRAME_LEN < req->actual) { in rx_complete()
1579 debug("rx length %d\n", req->length); in rx_complete()
1584 dev->stats.rx_bytes += req->length; in rx_complete()
1628 static void tx_complete(struct usb_ep *ep, struct usb_request *req) in tx_complete() argument
1632 debug("%s: status %s\n", __func__, (req->status) ? "failed" : "ok"); in tx_complete()
1633 switch (req->status) { in tx_complete()
1636 debug("tx err %d\n", req->status); in tx_complete()
1642 dev->stats.tx_bytes += req->length; in tx_complete()
1663 struct usb_request *req = NULL;
1699 req = container_of (dev->tx_reqs.next, struct usb_request, list);
1700 list_del (&req->list);
1724 req->buf = skb->data;
1725 req->context = skb;
1726 req->complete = tx_complete;
1732 req->zero = 1;
1736 req->length = length;
1740 req->no_interrupt = (dev->gadget->speed == USB_SPEED_HIGH)
1744 retval = usb_ep_queue (dev->in_ep, req, GFP_ATOMIC);
1761 list_add (&req->list, &dev->tx_reqs);
1779 if (dev->req) { in eth_unbind()
1780 usb_ep_free_request(gadget->ep0, dev->req); in eth_unbind()
1781 dev->req = NULL; in eth_unbind()
1836 struct usb_request *req) in rndis_control_ack_complete() argument
1841 if (req->status || req->actual != req->length) in rndis_control_ack_complete()
1843 req->status, req->actual, req->length); in rndis_control_ack_complete()
1853 req->context = NULL; in rndis_control_ack_complete()
1855 if (req != dev->stat_req) in rndis_control_ack_complete()
1856 usb_ep_free_request(ep, req); in rndis_control_ack_complete()
2256 dev->req = usb_ep_alloc_request(gadget->ep0, GFP_KERNEL); in eth_bind()
2257 if (!dev->req) in eth_bind()
2259 dev->req->buf = control_req; in eth_bind()
2260 dev->req->complete = eth_setup_complete; in eth_bind()
2268 usb_ep_free_request(dev->status_ep, dev->req); in eth_bind()
2425 struct usb_request *req = dev->tx_req; in _usb_eth_send() local
2445 req->buf = packet; in _usb_eth_send()
2446 req->context = NULL; in _usb_eth_send()
2447 req->complete = tx_complete; in _usb_eth_send()
2454 req->zero = 1; in _usb_eth_send()
2458 req->length = length; in _usb_eth_send()
2462 req->no_interrupt = (dev->gadget->speed == USB_SPEED_HIGH) in _usb_eth_send()
2469 retval = usb_ep_queue(dev->in_ep, req, GFP_ATOMIC); in _usb_eth_send()