Lines Matching refs:urb
72 struct urb *urb; member
75 static void bfusb_tx_complete(struct urb *urb);
76 static void bfusb_rx_complete(struct urb *urb);
78 static struct urb *bfusb_get_completed(struct bfusb_data *data) in bfusb_get_completed()
81 struct urb *urb = NULL; in bfusb_get_completed() local
87 urb = ((struct bfusb_data_scb *) skb->cb)->urb; in bfusb_get_completed()
91 return urb; in bfusb_get_completed()
97 struct urb *urb; in bfusb_unlink_urbs() local
102 urb = ((struct bfusb_data_scb *) skb->cb)->urb; in bfusb_unlink_urbs()
103 usb_kill_urb(urb); in bfusb_unlink_urbs()
107 while ((urb = bfusb_get_completed(data))) in bfusb_unlink_urbs()
108 usb_free_urb(urb); in bfusb_unlink_urbs()
114 struct urb *urb = bfusb_get_completed(data); in bfusb_send_bulk() local
119 if (!urb) { in bfusb_send_bulk()
120 urb = usb_alloc_urb(0, GFP_ATOMIC); in bfusb_send_bulk()
121 if (!urb) in bfusb_send_bulk()
127 usb_fill_bulk_urb(urb, data->udev, pipe, skb->data, skb->len, in bfusb_send_bulk()
130 scb->urb = urb; in bfusb_send_bulk()
134 err = usb_submit_urb(urb, GFP_ATOMIC); in bfusb_send_bulk()
137 urb, err); in bfusb_send_bulk()
139 usb_free_urb(urb); in bfusb_send_bulk()
173 static void bfusb_tx_complete(struct urb *urb) in bfusb_tx_complete() argument
175 struct sk_buff *skb = (struct sk_buff *) urb->context; in bfusb_tx_complete()
178 BT_DBG("bfusb %p urb %p skb %p len %d", data, urb, skb, skb->len); in bfusb_tx_complete()
185 if (!urb->status) in bfusb_tx_complete()
201 static int bfusb_rx_submit(struct bfusb_data *data, struct urb *urb) in bfusb_rx_submit() argument
207 BT_DBG("bfusb %p urb %p", data, urb); in bfusb_rx_submit()
209 if (!urb) { in bfusb_rx_submit()
210 urb = usb_alloc_urb(0, GFP_ATOMIC); in bfusb_rx_submit()
211 if (!urb) in bfusb_rx_submit()
217 usb_free_urb(urb); in bfusb_rx_submit()
224 scb->urb = urb; in bfusb_rx_submit()
228 usb_fill_bulk_urb(urb, data->udev, pipe, skb->data, size, in bfusb_rx_submit()
233 err = usb_submit_urb(urb, GFP_ATOMIC); in bfusb_rx_submit()
236 urb, err); in bfusb_rx_submit()
239 usb_free_urb(urb); in bfusb_rx_submit()
333 static void bfusb_rx_complete(struct urb *urb) in bfusb_rx_complete() argument
335 struct sk_buff *skb = (struct sk_buff *) urb->context; in bfusb_rx_complete()
337 unsigned char *buf = urb->transfer_buffer; in bfusb_rx_complete()
338 int count = urb->actual_length; in bfusb_rx_complete()
341 BT_DBG("bfusb %p urb %p skb %p len %d", data, urb, skb, skb->len); in bfusb_rx_complete()
348 if (urb->status || !count) in bfusb_rx_complete()
381 bfusb_rx_submit(data, urb); in bfusb_rx_complete()
388 urb->dev = data->udev; in bfusb_rx_complete()
390 err = usb_submit_urb(urb, GFP_ATOMIC); in bfusb_rx_complete()
393 urb, err); in bfusb_rx_complete()