Lines Matching refs:urb
56 struct urb *tx_urb;
161 static void atusb_in(struct urb *urb);
163 static int atusb_submit_rx_urb(struct atusb *atusb, struct urb *urb) in atusb_submit_rx_urb() argument
166 struct sk_buff *skb = urb->context; in atusb_submit_rx_urb()
180 usb_fill_bulk_urb(urb, usb_dev, usb_rcvbulkpipe(usb_dev, 1), in atusb_submit_rx_urb()
182 usb_anchor_urb(urb, &atusb->rx_urbs); in atusb_submit_rx_urb()
184 ret = usb_submit_urb(urb, GFP_KERNEL); in atusb_submit_rx_urb()
186 usb_unanchor_urb(urb); in atusb_submit_rx_urb()
188 urb->context = NULL; in atusb_submit_rx_urb()
198 struct urb *urb; in atusb_work_urbs() local
205 urb = usb_get_from_anchor(&atusb->idle_urbs); in atusb_work_urbs()
206 if (!urb) in atusb_work_urbs()
208 ret = atusb_submit_rx_urb(atusb, urb); in atusb_work_urbs()
211 usb_anchor_urb(urb, &atusb->idle_urbs); in atusb_work_urbs()
241 static void atusb_in_good(struct urb *urb) in atusb_in_good() argument
243 struct usb_device *usb_dev = urb->dev; in atusb_in_good()
244 struct sk_buff *skb = urb->context; in atusb_in_good()
248 if (!urb->actual_length) { in atusb_in_good()
255 if (urb->actual_length == 1) { in atusb_in_good()
260 if (len + 1 > urb->actual_length - 1) { in atusb_in_good()
262 len, urb->actual_length); in atusb_in_good()
276 urb->context = NULL; /* skb is gone */ in atusb_in_good()
279 static void atusb_in(struct urb *urb) in atusb_in() argument
281 struct usb_device *usb_dev = urb->dev; in atusb_in()
282 struct sk_buff *skb = urb->context; in atusb_in()
286 urb->status, urb->actual_length); in atusb_in()
287 if (urb->status) { in atusb_in()
288 if (urb->status == -ENOENT) { /* being killed */ in atusb_in()
290 urb->context = NULL; in atusb_in()
293 dev_dbg(&usb_dev->dev, "atusb_in: URB error %d\n", urb->status); in atusb_in()
295 atusb_in_good(urb); in atusb_in()
298 usb_anchor_urb(urb, &atusb->idle_urbs); in atusb_in()
307 struct urb *urb; in atusb_free_urbs() local
310 urb = usb_get_from_anchor(&atusb->idle_urbs); in atusb_free_urbs()
311 if (!urb) in atusb_free_urbs()
313 if (urb->context) in atusb_free_urbs()
314 kfree_skb(urb->context); in atusb_free_urbs()
315 usb_free_urb(urb); in atusb_free_urbs()
321 struct urb *urb; in atusb_alloc_urbs() local
324 urb = usb_alloc_urb(0, GFP_KERNEL); in atusb_alloc_urbs()
325 if (!urb) { in atusb_alloc_urbs()
329 usb_anchor_urb(urb, &atusb->idle_urbs); in atusb_alloc_urbs()
337 static void atusb_xmit_complete(struct urb *urb) in atusb_xmit_complete() argument
339 dev_dbg(&urb->dev->dev, "atusb_xmit urb completed"); in atusb_xmit_complete()