Lines Matching refs:urb

59 	struct urb *tx_urb;
135 static void atusb_in(struct urb *urb);
137 static int atusb_submit_rx_urb(struct atusb *atusb, struct urb *urb)
140 struct sk_buff *skb = urb->context;
154 usb_fill_bulk_urb(urb, usb_dev, usb_rcvbulkpipe(usb_dev, 1),
156 usb_anchor_urb(urb, &atusb->rx_urbs);
158 ret = usb_submit_urb(urb, GFP_KERNEL);
160 usb_unanchor_urb(urb);
162 urb->context = NULL;
172 struct urb *urb;
179 urb = usb_get_from_anchor(&atusb->idle_urbs);
180 if (!urb)
182 ret = atusb_submit_rx_urb(atusb, urb);
185 usb_anchor_urb(urb, &atusb->idle_urbs);
216 static void atusb_in_good(struct urb *urb)
218 struct usb_device *usb_dev = urb->dev;
219 struct sk_buff *skb = urb->context;
224 if (!urb->actual_length) {
231 switch (urb->actual_length) {
255 if (len + 1 > urb->actual_length - 1) {
257 len, urb->actual_length);
271 urb->context = NULL; /* skb is gone */
274 static void atusb_in(struct urb *urb)
276 struct usb_device *usb_dev = urb->dev;
277 struct sk_buff *skb = urb->context;
281 urb->status, urb->actual_length);
282 if (urb->status) {
283 if (urb->status == -ENOENT) { /* being killed */
285 urb->context = NULL;
288 dev_dbg(&usb_dev->dev, "%s: URB error %d\n", __func__, urb->status);
290 atusb_in_good(urb);
293 usb_anchor_urb(urb, &atusb->idle_urbs);
302 struct urb *urb;
305 urb = usb_get_from_anchor(&atusb->idle_urbs);
306 if (!urb)
308 kfree_skb(urb->context);
309 usb_free_urb(urb);
315 struct urb *urb;
318 urb = usb_alloc_urb(0, GFP_KERNEL);
319 if (!urb) {
323 usb_anchor_urb(urb, &atusb->idle_urbs);
324 usb_free_urb(urb);
332 static void atusb_xmit_complete(struct urb *urb)
334 dev_dbg(&urb->dev->dev, "atusb_xmit urb completed");