Lines Matching full:udc
62 static int v_recv_cmd_unlink(struct vudc *udc, in v_recv_cmd_unlink() argument
68 spin_lock_irqsave(&udc->lock, flags); in v_recv_cmd_unlink()
69 list_for_each_entry(urb_p, &udc->urb_queue, urb_entry) { in v_recv_cmd_unlink()
74 v_kick_timer(udc, jiffies); in v_recv_cmd_unlink()
75 spin_unlock_irqrestore(&udc->lock, flags); in v_recv_cmd_unlink()
79 spin_lock(&udc->lock_tx); in v_recv_cmd_unlink()
80 v_enqueue_ret_unlink(udc, pdu->base.seqnum, 0); in v_recv_cmd_unlink()
81 wake_up(&udc->tx_waitq); in v_recv_cmd_unlink()
82 spin_unlock(&udc->lock_tx); in v_recv_cmd_unlink()
83 spin_unlock_irqrestore(&udc->lock, flags); in v_recv_cmd_unlink()
88 static int v_recv_cmd_submit(struct vudc *udc, in v_recv_cmd_submit() argument
98 usbip_event_add(&udc->ud, VUDC_EVENT_ERROR_MALLOC); in v_recv_cmd_submit()
107 spin_lock_irqsave(&udc->lock, flags); in v_recv_cmd_submit()
108 urb_p->ep = vudc_find_endpoint(udc, address); in v_recv_cmd_submit()
111 dev_err(&udc->pdev->dev, "request to nonexistent endpoint"); in v_recv_cmd_submit()
112 spin_unlock_irqrestore(&udc->lock, flags); in v_recv_cmd_submit()
113 usbip_event_add(&udc->ud, VUDC_EVENT_ERROR_TCP); in v_recv_cmd_submit()
118 spin_unlock_irqrestore(&udc->lock, flags); in v_recv_cmd_submit()
134 dev_err(&udc->gadget.dev, in v_recv_cmd_submit()
144 usbip_event_add(&udc->ud, VUDC_EVENT_ERROR_MALLOC); in v_recv_cmd_submit()
169 ret = usbip_recv_xbuff(&udc->ud, urb_p->urb); in v_recv_cmd_submit()
173 ret = usbip_recv_iso(&udc->ud, urb_p->urb); in v_recv_cmd_submit()
177 spin_lock_irqsave(&udc->lock, flags); in v_recv_cmd_submit()
178 v_kick_timer(udc, jiffies); in v_recv_cmd_submit()
179 list_add_tail(&urb_p->urb_entry, &udc->urb_queue); in v_recv_cmd_submit()
180 spin_unlock_irqrestore(&udc->lock, flags); in v_recv_cmd_submit()
193 struct vudc *udc = container_of(ud, struct vudc, ud); in v_rx_pdu() local
215 ret = v_recv_cmd_unlink(udc, &pdu); in v_rx_pdu()
218 ret = v_recv_cmd_submit(udc, &pdu); in v_rx_pdu()