Lines Matching refs:urb

65 	struct urb		*urb;
156 struct urb *urb,
166 ureq->urb = urb;
167 usbhsh_urb_to_ureq(urb) = ureq;
175 usbhsh_urb_to_ureq(ureq->urb) = NULL;
176 ureq->urb = NULL;
200 struct urb *urb,
203 int len = urb->actual_length;
204 int maxp = usb_endpoint_maxp(&urb->ep->desc);
208 if (usb_pipecontrol(urb->pipe))
236 usb_dotoggle(urb->dev,
237 usb_pipeendpoint(urb->pipe),
238 usb_pipeout(urb->pipe));
242 struct urb *urb);
245 struct urb *urb)
248 struct usbhsh_ep *uep = usbhsh_ep_to_uep(urb->ep);
249 struct usbhsh_device *udev = usbhsh_device_get(hpriv, urb);
251 struct usb_endpoint_descriptor *desc = &urb->ep->desc;
254 int dir_in_req = !!usb_pipein(urb->pipe);
366 struct urb *urb,
370 struct usbhsh_device *udev = usbhsh_device_get(hpriv, urb);
371 struct usb_host_endpoint *ep = urb->ep;
465 struct urb *urb)
467 struct usb_device *usbv = usbhsh_urb_to_usbv(urb);
475 if (0 == usb_pipedevice(urb->pipe))
483 struct urb *urb)
490 struct usb_device *usbv = usbhsh_urb_to_usbv(urb);
497 * This function should be called only while urb is pointing to device0.
498 * It will attach unused usbhsh_device to urb (usbv),
503 if (0 != usb_pipedevice(urb->pipe)) {
504 dev_err(dev, "%s fail: urb isn't pointing device0\n", __func__);
634 struct urb *urb = ureq->urb;
640 if (!urb) {
641 dev_warn(dev, "pkt doesn't have urb\n");
648 urb->actual_length = pkt->actual;
650 usbhsh_endpoint_sequence_save(hpriv, urb, pkt);
653 usbhsh_pipe_detach(hpriv, usbhsh_ep_to_uep(urb->ep));
655 usb_hcd_unlink_urb_from_ep(hcd, urb);
656 usb_hcd_giveback_urb(hcd, urb, status);
660 struct urb *urb,
664 struct usbhsh_ep *uep = usbhsh_ep_to_uep(urb->ep);
671 if (usb_pipeisoc(urb->pipe)) {
677 ureq = usbhsh_ureq_alloc(hpriv, urb, mem_flags);
683 if (usb_pipein(urb->pipe))
688 buf = (void *)(urb->transfer_buffer + urb->actual_length);
689 len = urb->transfer_buffer_length - urb->actual_length;
691 sequence = usb_gettoggle(urb->dev,
692 usb_pipeendpoint(urb->pipe),
693 usb_pipeout(urb->pipe));
697 buf, len, (urb->transfer_flags & URB_ZERO_PACKET),
736 static int usbhsh_is_request_address(struct urb *urb)
740 req = (struct usb_ctrlrequest *)urb->setup_packet;
750 struct urb *urb,
766 memcpy(&req, urb->setup_packet, sizeof(struct usb_ctrlrequest));
774 if (usbhsh_is_request_address(urb)) {
775 struct usb_device *usbv = usbhsh_urb_to_usbv(urb);
803 /* this ureq was connected to urb when usbhsh_urb_enqueue() */
809 struct urb *urb,
817 ureq = usbhsh_ureq_alloc(hpriv, urb, mem_flags);
821 if (usb_pipein(urb->pipe))
828 urb->transfer_buffer,
829 urb->transfer_buffer_length,
830 (urb->transfer_flags & URB_ZERO_PACKET),
840 struct urb *urb,
847 ureq = usbhsh_ureq_alloc(hpriv, urb, mem_flags);
851 if (usb_pipein(urb->pipe))
859 urb->transfer_buffer_length,
866 struct urb *urb,
870 struct usbhsh_ep *uep = usbhsh_ep_to_uep(urb->ep);
882 usbhsh_setup_stage_packet_push(hpriv, urb, pipe);
887 * It is pushed only when urb has buffer.
889 if (urb->transfer_buffer_length) {
890 ret = usbhsh_data_stage_packet_push(hpriv, urb, pipe, mflags);
900 ret = usbhsh_status_stage_packet_push(hpriv, urb, pipe, mflags);
922 struct urb *urb = ureq->urb;
925 if (urb->num_sgs)
928 pkt->dma = urb->transfer_dma;
949 struct urb *urb,
955 struct usb_host_endpoint *ep = urb->ep;
957 int is_dir_in = usb_pipein(urb->pipe);
968 ret = usb_hcd_link_urb_to_ep(hcd, urb);
970 dev_err(dev, "urb link failed\n");
978 if (!usbhsh_device_get(hpriv, urb)) {
979 new_udev = usbhsh_device_attach(hpriv, urb);
992 ret = usbhsh_endpoint_attach(hpriv, urb, mem_flags);
1003 ret = usbhsh_pipe_attach(hpriv, urb);
1012 if (usb_pipecontrol(urb->pipe))
1013 ret = usbhsh_dcp_queue_push(hcd, urb, mem_flags);
1015 ret = usbhsh_queue_push(hcd, urb, mem_flags);
1031 static int usbhsh_urb_dequeue(struct usb_hcd *hcd, struct urb *urb, int status)
1034 struct usbhsh_request *ureq = usbhsh_urb_to_ureq(urb);