Lines Matching refs:tfd
82 struct iwl_tfh_tfd *tfd) in iwl_txq_gen2_get_num_tbs() argument
84 return le16_to_cpu(tfd->num_tbs) & 0x1f; in iwl_txq_gen2_get_num_tbs()
88 struct iwl_tfh_tfd *tfd) in iwl_txq_gen2_tfd_unmap() argument
93 num_tbs = iwl_txq_gen2_get_num_tbs(trans, tfd); in iwl_txq_gen2_tfd_unmap()
95 if (num_tbs > trans->txqs.tfd.max_tbs) { in iwl_txq_gen2_tfd_unmap()
104 le64_to_cpu(tfd->tbs[i].addr), in iwl_txq_gen2_tfd_unmap()
105 le16_to_cpu(tfd->tbs[i].tb_len), in iwl_txq_gen2_tfd_unmap()
109 le64_to_cpu(tfd->tbs[i].addr), in iwl_txq_gen2_tfd_unmap()
110 le16_to_cpu(tfd->tbs[i].tb_len), in iwl_txq_gen2_tfd_unmap()
114 tfd->num_tbs = 0; in iwl_txq_gen2_tfd_unmap()
145 int iwl_txq_gen2_set_tb(struct iwl_trans *trans, struct iwl_tfh_tfd *tfd, in iwl_txq_gen2_set_tb() argument
148 int idx = iwl_txq_gen2_get_num_tbs(trans, tfd); in iwl_txq_gen2_set_tb()
164 tb = &tfd->tbs[idx]; in iwl_txq_gen2_set_tb()
167 if (le16_to_cpu(tfd->num_tbs) >= trans->txqs.tfd.max_tbs) { in iwl_txq_gen2_set_tb()
169 trans->txqs.tfd.max_tbs); in iwl_txq_gen2_set_tb()
176 tfd->num_tbs = cpu_to_le16(idx + 1); in iwl_txq_gen2_set_tb()
208 struct iwl_tfh_tfd *tfd, in iwl_txq_gen2_set_tb_with_wa() argument
220 ret = iwl_txq_gen2_set_tb(trans, tfd, phys, len); in iwl_txq_gen2_set_tb_with_wa()
258 ret = iwl_txq_gen2_set_tb(trans, tfd, phys, len); in iwl_txq_gen2_set_tb_with_wa()
329 struct iwl_tfh_tfd *tfd, int start_len, in iwl_txq_gen2_build_amsdu() argument
343 trace_iwlwifi_dev_tx(trans->dev, skb, tfd, sizeof(*tfd), in iwl_txq_gen2_build_amsdu()
417 iwl_txq_gen2_set_tb(trans, tfd, tb_phys, tb_len); in iwl_txq_gen2_build_amsdu()
433 ret = iwl_txq_gen2_set_tb_with_wa(trans, skb, tfd, in iwl_txq_gen2_build_amsdu()
464 struct iwl_tfh_tfd *tfd = iwl_txq_get_tfd(trans, txq, idx); in iwl_txq_gen2_build_tx_amsdu() local
476 iwl_txq_gen2_set_tb(trans, tfd, tb_phys, IWL_FIRST_TB_SIZE); in iwl_txq_gen2_build_tx_amsdu()
498 iwl_txq_gen2_set_tb(trans, tfd, tb_phys, len); in iwl_txq_gen2_build_tx_amsdu()
500 if (iwl_txq_gen2_build_amsdu(trans, skb, tfd, len + IWL_FIRST_TB_SIZE, in iwl_txq_gen2_build_tx_amsdu()
506 return tfd; in iwl_txq_gen2_build_tx_amsdu()
509 iwl_txq_gen2_tfd_unmap(trans, out_meta, tfd); in iwl_txq_gen2_build_tx_amsdu()
515 struct iwl_tfh_tfd *tfd, in iwl_txq_gen2_tx_add_frags() argument
531 ret = iwl_txq_gen2_set_tb_with_wa(trans, skb, tfd, tb_phys, in iwl_txq_gen2_tx_add_frags()
552 struct iwl_tfh_tfd *tfd = iwl_txq_get_tfd(trans, txq, idx); in iwl_txq_gen2_build_tx() local
568 iwl_txq_gen2_set_tb(trans, tfd, tb_phys, IWL_FIRST_TB_SIZE); in iwl_txq_gen2_build_tx()
593 iwl_txq_gen2_set_tb(trans, tfd, tb_phys, tb1_len); in iwl_txq_gen2_build_tx()
594 trace_iwlwifi_dev_tx(trans->dev, skb, tfd, sizeof(*tfd), &dev_cmd->hdr, in iwl_txq_gen2_build_tx()
605 ret = iwl_txq_gen2_set_tb_with_wa(trans, skb, tfd, tb_phys, in iwl_txq_gen2_build_tx()
612 if (iwl_txq_gen2_tx_add_frags(trans, skb, tfd, out_meta)) in iwl_txq_gen2_build_tx()
620 ret = iwl_txq_gen2_set_tb_with_wa(trans, skb, tfd, tb_phys, in iwl_txq_gen2_build_tx()
625 if (iwl_txq_gen2_tx_add_frags(trans, frag, tfd, out_meta)) in iwl_txq_gen2_build_tx()
629 return tfd; in iwl_txq_gen2_build_tx()
632 iwl_txq_gen2_tfd_unmap(trans, out_meta, tfd); in iwl_txq_gen2_build_tx()
645 struct iwl_tfh_tfd *tfd = iwl_txq_get_tfd(trans, txq, idx); in iwl_txq_gen2_build_tfd() local
652 memset(tfd, 0, sizeof(*tfd)); in iwl_txq_gen2_build_tfd()
713 void *tfd; in iwl_txq_gen2_tx() local
761 tfd = iwl_txq_gen2_build_tfd(trans, txq, dev_cmd, skb, out_meta); in iwl_txq_gen2_tx()
762 if (!tfd) { in iwl_txq_gen2_tx()
781 iwl_txq_gen2_get_num_tbs(trans, tfd)); in iwl_txq_gen2_tx()
843 trans->txqs.tfd.size * txq->n_window, in iwl_txq_gen2_free_memory()
1025 size_t tfd_sz = trans->txqs.tfd.size * in iwl_txq_alloc()
1034 tfd_sz = trans->txqs.tfd.size * slots_num; in iwl_txq_alloc()
1335 struct iwl_tfd *tfd; in iwl_txq_gen1_tfd_tb_get_addr() local
1347 tfd = _tfd; in iwl_txq_gen1_tfd_tb_get_addr()
1348 tb = &tfd->tbs[idx]; in iwl_txq_gen1_tfd_tb_get_addr()
1369 void *tfd = iwl_txq_get_tfd(trans, txq, index); in iwl_txq_gen1_tfd_unmap() local
1372 num_tbs = iwl_txq_gen1_tfd_get_num_tbs(trans, tfd); in iwl_txq_gen1_tfd_unmap()
1374 if (num_tbs > trans->txqs.tfd.max_tbs) { in iwl_txq_gen1_tfd_unmap()
1386 tfd, i), in iwl_txq_gen1_tfd_unmap()
1388 tfd, i), in iwl_txq_gen1_tfd_unmap()
1393 tfd, i), in iwl_txq_gen1_tfd_unmap()
1395 tfd, i), in iwl_txq_gen1_tfd_unmap()
1402 struct iwl_tfh_tfd *tfd_fh = (void *)tfd; in iwl_txq_gen1_tfd_unmap()
1406 struct iwl_tfd *tfd_fh = (void *)tfd; in iwl_txq_gen1_tfd_unmap()