Lines Matching refs:tx_buf

255 	struct tx_buf *tx_buf = urb->context;
259 if (!tx_buf || !tx_buf->hif_dev)
262 hif_dev = tx_buf->hif_dev;
280 ath9k_skb_queue_purge(hif_dev, &tx_buf->skb_queue);
291 ath9k_skb_queue_complete(hif_dev, &tx_buf->skb_queue, txok);
294 tx_buf->len = tx_buf->offset = 0;
295 __skb_queue_head_init(&tx_buf->skb_queue);
299 list_move_tail(&tx_buf->list, &hif_dev->tx.tx_buf);
310 struct tx_buf *tx_buf = NULL;
321 if (list_empty(&hif_dev->tx.tx_buf))
324 tx_buf = list_first_entry(&hif_dev->tx.tx_buf, struct tx_buf, list);
325 list_move_tail(&tx_buf->list, &hif_dev->tx.tx_pending);
338 buf = tx_buf->buf;
339 buf += tx_buf->offset;
345 tx_buf->len = nskb->len + 4;
348 tx_buf->offset += (((tx_buf->len - 1) / 4) + 1) * 4;
351 tx_buf->len += tx_buf->offset;
353 __skb_queue_tail(&tx_buf->skb_queue, nskb);
357 usb_fill_bulk_urb(tx_buf->urb, hif_dev->udev,
359 tx_buf->buf, tx_buf->len,
360 hif_usb_tx_cb, tx_buf);
362 ret = usb_submit_urb(tx_buf->urb, GFP_ATOMIC);
364 tx_buf->len = tx_buf->offset = 0;
365 ath9k_skb_queue_complete(hif_dev, &tx_buf->skb_queue, false);
366 __skb_queue_head_init(&tx_buf->skb_queue);
367 list_move_tail(&tx_buf->list, &hif_dev->tx.tx_buf);
439 struct tx_buf *tx_buf = NULL, *tx_buf_tmp = NULL;
450 list_for_each_entry_safe(tx_buf, tx_buf_tmp,
452 usb_get_urb(tx_buf->urb);
454 usb_kill_urb(tx_buf->urb);
455 list_del(&tx_buf->list);
456 usb_free_urb(tx_buf->urb);
457 kfree(tx_buf->buf);
458 kfree(tx_buf);
808 struct tx_buf *tx_buf = NULL, *tx_buf_tmp = NULL;
812 list_for_each_entry_safe(tx_buf, tx_buf_tmp,
813 &hif_dev->tx.tx_buf, list) {
814 list_del(&tx_buf->list);
815 usb_free_urb(tx_buf->urb);
816 kfree(tx_buf->buf);
817 kfree(tx_buf);
826 list_for_each_entry_safe(tx_buf, tx_buf_tmp,
828 usb_get_urb(tx_buf->urb);
830 usb_kill_urb(tx_buf->urb);
831 list_del(&tx_buf->list);
832 usb_free_urb(tx_buf->urb);
833 kfree(tx_buf->buf);
834 kfree(tx_buf);
844 struct tx_buf *tx_buf;
847 INIT_LIST_HEAD(&hif_dev->tx.tx_buf);
854 tx_buf = kzalloc(sizeof(*tx_buf), GFP_KERNEL);
855 if (!tx_buf)
858 tx_buf->buf = kzalloc(MAX_TX_BUF_SIZE, GFP_KERNEL);
859 if (!tx_buf->buf)
862 tx_buf->urb = usb_alloc_urb(0, GFP_KERNEL);
863 if (!tx_buf->urb)
866 tx_buf->hif_dev = hif_dev;
867 __skb_queue_head_init(&tx_buf->skb_queue);
869 list_add_tail(&tx_buf->list, &hif_dev->tx.tx_buf);
876 if (tx_buf) {
877 kfree(tx_buf->buf);
878 kfree(tx_buf);