Lines Matching refs:pdu
205 struct usbip_header *pdu) in stub_recv_cmd_unlink() argument
214 if (priv->seqnum != pdu->u.cmd_unlink.seqnum) in stub_recv_cmd_unlink()
233 priv->seqnum = pdu->base.seqnum; in stub_recv_cmd_unlink()
264 pdu->u.cmd_unlink.seqnum); in stub_recv_cmd_unlink()
272 stub_enqueue_ret_unlink(sdev, pdu->base.seqnum, 0); in stub_recv_cmd_unlink()
279 static int valid_request(struct stub_device *sdev, struct usbip_header *pdu) in valid_request() argument
284 if (pdu->base.devid == sdev->devid) { in valid_request()
297 struct usbip_header *pdu) in stub_priv_alloc() argument
313 priv->seqnum = pdu->base.seqnum; in stub_priv_alloc()
327 static int get_pipe(struct stub_device *sdev, struct usbip_header *pdu) in get_pipe() argument
332 int epnum = pdu->base.ep; in get_pipe()
333 int dir = pdu->base.direction; in get_pipe()
370 if (pdu->u.cmd_submit.number_of_packets < 0 || in get_pipe()
371 pdu->u.cmd_submit.number_of_packets > in get_pipe()
375 pdu->u.cmd_submit.number_of_packets); in get_pipe()
456 struct usbip_header *pdu) in stub_recv_cmd_submit() argument
466 int pipe = get_pipe(sdev, pdu); in stub_recv_cmd_submit()
467 int use_sg = pdu->u.cmd_submit.transfer_flags & USBIP_URB_DMA_MAP_SG; in stub_recv_cmd_submit()
480 priv = stub_priv_alloc(sdev, pdu); in stub_recv_cmd_submit()
484 buf_len = (unsigned long long)pdu->u.cmd_submit.transfer_buffer_length; in stub_recv_cmd_submit()
516 pdu->u.cmd_submit.transfer_flags &= in stub_recv_cmd_submit()
535 np = pdu->u.cmd_submit.number_of_packets; in stub_recv_cmd_submit()
552 priv->urbs[0]->setup_packet = kmemdup(&pdu->u.cmd_submit.setup, in stub_recv_cmd_submit()
559 usbip_pack_pdu(pdu, priv->urbs[0], USBIP_CMD_SUBMIT, 0); in stub_recv_cmd_submit()
569 usbip_pack_pdu(pdu, priv->urbs[i], USBIP_CMD_SUBMIT, 0); in stub_recv_cmd_submit()
601 pdu->base.seqnum); in stub_recv_cmd_submit()
604 usbip_dump_header(pdu); in stub_recv_cmd_submit()
632 struct usbip_header pdu; in stub_rx_pdu() local
638 memset(&pdu, 0, sizeof(pdu)); in stub_rx_pdu()
641 ret = usbip_recv(ud->tcp_socket, &pdu, sizeof(pdu)); in stub_rx_pdu()
642 if (ret != sizeof(pdu)) { in stub_rx_pdu()
648 usbip_header_correct_endian(&pdu, 0); in stub_rx_pdu()
651 usbip_dump_header(&pdu); in stub_rx_pdu()
653 if (!valid_request(sdev, &pdu)) { in stub_rx_pdu()
659 switch (pdu.base.command) { in stub_rx_pdu()
661 stub_recv_cmd_unlink(sdev, &pdu); in stub_rx_pdu()
665 stub_recv_cmd_submit(sdev, &pdu); in stub_rx_pdu()