/kernel/linux/linux-6.6/drivers/net/wireless/intel/iwlwifi/ |
H A D | iwl-trans.c | 46 trans->txqs.tfd.addr_size = 64; in iwl_trans_alloc() 47 trans->txqs.tfd.max_tbs = IWL_TFH_NUM_TBS; in iwl_trans_alloc() 48 trans->txqs.tfd.size = sizeof(struct iwl_tfh_tfd); in iwl_trans_alloc() 50 trans->txqs.tfd.addr_size = 36; in iwl_trans_alloc() 51 trans->txqs.tfd.max_tbs = IWL_NUM_OF_TBS; in iwl_trans_alloc() 52 trans->txqs.tfd.size = sizeof(struct iwl_tfd); in iwl_trans_alloc() 82 trans->txqs.bc_tbl_size = in iwl_trans_init() 85 trans->txqs.bc_tbl_size = in iwl_trans_init() 88 trans->txqs.bc_tbl_size = sizeof(struct iwlagn_scd_bc_tbl); in iwl_trans_init() 95 trans->txqs in iwl_trans_init() [all...] |
H A D | iwl-trans.h | 174 #define IWL_TRANS_MAX_FRAGS(trans) ((trans)->txqs.tfd.max_tbs - 3) 613 void (*freeze_txq_timer)(struct iwl_trans *trans, unsigned long txqs, 1135 struct iwl_trans_txqs txqs; member 1397 unsigned long txqs, in iwl_trans_freeze_txq_timer() 1406 trans->ops->freeze_txq_timer(trans, txqs, freeze); in iwl_trans_freeze_txq_timer() 1422 u32 txqs) in iwl_trans_wait_tx_queues_empty() 1433 return trans->ops->wait_tx_queues_empty(trans, txqs); in iwl_trans_wait_tx_queues_empty() 1396 iwl_trans_freeze_txq_timer(struct iwl_trans *trans, unsigned long txqs, bool freeze) iwl_trans_freeze_txq_timer() argument 1421 iwl_trans_wait_tx_queues_empty(struct iwl_trans *trans, u32 txqs) iwl_trans_wait_tx_queues_empty() argument
|
/kernel/linux/linux-5.10/drivers/net/wireless/intel/iwlwifi/ |
H A D | iwl-trans.c | 116 trans->txqs.bc_tbl_size = sizeof(struct iwl_gen3_bc_tbl); in iwl_trans_alloc() 118 trans->txqs.bc_tbl_size = sizeof(struct iwlagn_scd_bc_tbl); in iwl_trans_alloc() 125 trans->txqs.bc_pool = dmam_pool_create("iwlwifi:bc", dev, in iwl_trans_alloc() 126 trans->txqs.bc_tbl_size, in iwl_trans_alloc() 128 if (!trans->txqs.bc_pool) in iwl_trans_alloc() 133 trans->txqs.tfd.addr_size = 64; in iwl_trans_alloc() 134 trans->txqs.tfd.max_tbs = IWL_TFH_NUM_TBS; in iwl_trans_alloc() 135 trans->txqs.tfd.size = sizeof(struct iwl_tfh_tfd); in iwl_trans_alloc() 137 trans->txqs.tfd.addr_size = 36; in iwl_trans_alloc() 138 trans->txqs in iwl_trans_alloc() [all...] |
H A D | iwl-trans.h | 223 #define IWL_TRANS_MAX_FRAGS(trans) ((trans)->txqs.tfd.max_tbs - 3) 616 void (*freeze_txq_timer)(struct iwl_trans *trans, unsigned long txqs, 1036 struct iwl_trans_txqs txqs; member 1297 unsigned long txqs, in iwl_trans_freeze_txq_timer() 1306 trans->ops->freeze_txq_timer(trans, txqs, freeze); in iwl_trans_freeze_txq_timer() 1322 u32 txqs) in iwl_trans_wait_tx_queues_empty() 1332 return trans->ops->wait_tx_queues_empty(trans, txqs); in iwl_trans_wait_tx_queues_empty() 1296 iwl_trans_freeze_txq_timer(struct iwl_trans *trans, unsigned long txqs, bool freeze) iwl_trans_freeze_txq_timer() argument 1321 iwl_trans_wait_tx_queues_empty(struct iwl_trans *trans, u32 txqs) iwl_trans_wait_tx_queues_empty() argument
|
/kernel/linux/linux-5.10/drivers/net/wireless/intel/iwlwifi/queue/ |
H A D | tx.c | 74 memset(trans->txqs.queue_stopped, 0, in iwl_txq_gen2_tx_stop() 75 sizeof(trans->txqs.queue_stopped)); in iwl_txq_gen2_tx_stop() 76 memset(trans->txqs.queue_used, 0, sizeof(trans->txqs.queue_used)); in iwl_txq_gen2_tx_stop() 79 for (txq_id = 0; txq_id < ARRAY_SIZE(trans->txqs.txq); txq_id++) { in iwl_txq_gen2_tx_stop() 80 if (!trans->txqs.txq[txq_id]) in iwl_txq_gen2_tx_stop() 117 WARN_ON(trans->txqs.bc_table_dword); in iwl_pcie_gen2_update_byte_tbl() 125 WARN_ON(!trans->txqs.bc_table_dword); in iwl_pcie_gen2_update_byte_tbl() 163 if (num_tbs > trans->txqs.tfd.max_tbs) { in iwl_txq_gen2_tfd_unmap() 236 if (le16_to_cpu(tfd->num_tbs) >= trans->txqs in iwl_txq_gen2_set_tb() [all...] |
H A D | tx.h | 85 if (test_and_clear_bit(txq->id, trans->txqs.queue_stopped)) { in iwl_wake_queue() 97 return txq->tfds + trans->txqs.tfd.size * idx; in iwl_txq_get_tfd() 116 if (!test_and_set_bit(txq->id, trans->txqs.queue_stopped)) { in iwl_txq_stop()
|
/kernel/linux/linux-5.10/drivers/net/wireless/intel/iwlwifi/pcie/ |
H A D | tx.c | 144 txq_id != trans->txqs.cmd.q_id && in iwl_pcie_txq_inc_wr_ptr() 178 struct iwl_txq *txq = trans->txqs.txq[i]; in iwl_pcie_txq_check_wrptrs() 180 if (!test_bit(i, trans->txqs.queue_used)) in iwl_pcie_txq_check_wrptrs() 255 tfd = txq->tfds + trans->txqs.tfd.size * txq->write_ptr; in iwl_pcie_txq_build_tfd() 258 memset(tfd, 0, trans->txqs.tfd.size); in iwl_pcie_txq_build_tfd() 263 if (num_tbs >= trans->txqs.tfd.max_tbs) { in iwl_pcie_txq_build_tfd() 265 trans->txqs.tfd.max_tbs); in iwl_pcie_txq_build_tfd() 300 struct iwl_txq *txq = trans->txqs.txq[txq_id]; in iwl_pcie_txq_unmap() 312 if (txq_id != trans->txqs.cmd.q_id) { in iwl_pcie_txq_unmap() 325 if (txq_id == trans->txqs in iwl_pcie_txq_unmap() [all...] |
H A D | trans-gen2.c | 248 if (iwl_txq_gen2_init(trans, trans->txqs.cmd.q_id, queue_size)) in iwl_pcie_gen2_nic_init() 265 memset(trans->txqs.queue_stopped, 0, in iwl_trans_pcie_gen2_fw_alive() 266 sizeof(trans->txqs.queue_stopped)); in iwl_trans_pcie_gen2_fw_alive() 267 memset(trans->txqs.queue_used, 0, sizeof(trans->txqs.queue_used)); in iwl_trans_pcie_gen2_fw_alive()
|
H A D | tx-gen2.c | 78 struct iwl_txq *txq = trans->txqs.txq[trans->txqs.cmd.q_id]; in iwl_pcie_gen2_enqueue_hcmd() 190 cpu_to_le16(QUEUE_TO_SEQ(trans->txqs.cmd.q_id) | in iwl_pcie_gen2_enqueue_hcmd() 238 cmd_size, txq->write_ptr, idx, trans->txqs.cmd.q_id); in iwl_pcie_gen2_enqueue_hcmd() 315 struct iwl_txq *txq = trans->txqs.txq[trans->txqs.cmd.q_id]; in iwl_pcie_gen2_send_hcmd_sync()
|
H A D | trans.c | 1915 trans->txqs.cmd.q_id = trans_cfg->cmd_queue; in iwl_trans_pcie_configure() 1916 trans->txqs.cmd.fifo = trans_cfg->cmd_fifo; in iwl_trans_pcie_configure() 1917 trans->txqs.cmd.wdg_timeout = trans_cfg->cmd_q_wdg_timeout; in iwl_trans_pcie_configure() 1918 trans->txqs.page_offs = trans_cfg->cb_data_offs; in iwl_trans_pcie_configure() 1919 trans->txqs.dev_cmd_offs = trans_cfg->cb_data_offs + sizeof(void *); in iwl_trans_pcie_configure() 1938 trans->txqs.bc_table_dword = trans_cfg->bc_table_dword; in iwl_trans_pcie_configure() 2223 unsigned long txqs, in iwl_trans_pcie_freeze_txq_timer() 2228 for_each_set_bit(queue, &txqs, BITS_PER_LONG) { in iwl_trans_pcie_freeze_txq_timer() 2229 struct iwl_txq *txq = trans->txqs.txq[queue]; in iwl_trans_pcie_freeze_txq_timer() 2280 struct iwl_txq *txq = trans->txqs in iwl_trans_pcie_block_txq_ptrs() 2222 iwl_trans_pcie_freeze_txq_timer(struct iwl_trans *trans, unsigned long txqs, bool freeze) iwl_trans_pcie_freeze_txq_timer() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/wireless/intel/iwlwifi/pcie/ |
H A D | tx.c | 87 txq_id != trans->txqs.cmd.q_id && in iwl_pcie_txq_inc_wr_ptr() 121 struct iwl_txq *txq = trans->txqs.txq[i]; in iwl_pcie_txq_check_wrptrs() 123 if (!test_bit(i, trans->txqs.queue_used)) in iwl_pcie_txq_check_wrptrs() 141 tfd = (u8 *)txq->tfds + trans->txqs.tfd.size * txq->write_ptr; in iwl_pcie_txq_build_tfd() 144 memset(tfd, 0, trans->txqs.tfd.size); in iwl_pcie_txq_build_tfd() 149 if (num_tbs >= trans->txqs.tfd.max_tbs) { in iwl_pcie_txq_build_tfd() 151 trans->txqs.tfd.max_tbs); in iwl_pcie_txq_build_tfd() 189 struct iwl_txq *txq = trans->txqs.txq[txq_id]; in iwl_pcie_txq_unmap() 201 if (txq_id != trans->txqs.cmd.q_id) { in iwl_pcie_txq_unmap() 213 txq_id == trans->txqs in iwl_pcie_txq_unmap() [all...] |
H A D | tx-gen2.c | 31 struct iwl_txq *txq = trans->txqs.txq[trans->txqs.cmd.q_id]; in iwl_pcie_gen2_enqueue_hcmd() 143 cpu_to_le16(QUEUE_TO_SEQ(trans->txqs.cmd.q_id) | in iwl_pcie_gen2_enqueue_hcmd() 191 cmd_size, txq->write_ptr, idx, trans->txqs.cmd.q_id); in iwl_pcie_gen2_enqueue_hcmd()
|
H A D | trans-gen2.c | 247 if (iwl_txq_gen2_init(trans, trans->txqs.cmd.q_id, queue_size)) in iwl_pcie_gen2_nic_init() 336 memset(trans->txqs.queue_stopped, 0, in iwl_trans_pcie_gen2_fw_alive() 337 sizeof(trans->txqs.queue_stopped)); in iwl_trans_pcie_gen2_fw_alive() 338 memset(trans->txqs.queue_used, 0, sizeof(trans->txqs.queue_used)); in iwl_trans_pcie_gen2_fw_alive()
|
/kernel/linux/linux-6.6/drivers/net/wireless/intel/iwlwifi/queue/ |
H A D | tx.c | 50 WARN_ON(trans->txqs.bc_table_dword); in iwl_pcie_gen2_update_byte_tbl() 58 WARN_ON(!trans->txqs.bc_table_dword); in iwl_pcie_gen2_update_byte_tbl() 109 if (le16_to_cpu(tfd->num_tbs) >= trans->txqs.tfd.max_tbs) { in iwl_txq_gen2_set_tb() 111 trans->txqs.tfd.max_tbs); in iwl_txq_gen2_set_tb() 140 if (num_tbs > trans->txqs.tfd.max_tbs) { in iwl_txq_gen2_tfd_unmap() 196 page_ptr = (void *)((u8 *)skb->cb + trans->txqs.page_offs); in get_workaround_page() 294 struct iwl_tso_hdr_page *p = this_cpu_ptr(trans->txqs.tso_hdr_page); in get_page_hdr() 297 page_ptr = (void *)((u8 *)skb->cb + trans->txqs.page_offs); in get_page_hdr() 726 struct iwl_txq *txq = trans->txqs.txq[txq_id]; in iwl_txq_gen2_tx() 735 if (WARN_ONCE(!test_bit(txq_id, trans->txqs in iwl_txq_gen2_tx() 1715 iwl_trans_txq_freeze_timer(struct iwl_trans *trans, unsigned long txqs, bool freeze) iwl_trans_txq_freeze_timer() argument [all...] |
H A D | tx.h | 32 if (test_and_clear_bit(txq->id, trans->txqs.queue_stopped)) { in iwl_wake_queue() 44 return (u8 *)txq->tfds + trans->txqs.tfd.size * idx; in iwl_txq_get_tfd() 63 if (!test_and_set_bit(txq->id, trans->txqs.queue_stopped)) { in iwl_txq_stop() 184 void iwl_trans_txq_freeze_timer(struct iwl_trans *trans, unsigned long txqs,
|
/kernel/linux/linux-6.6/drivers/net/ethernet/fungible/funeth/ |
H A D | funeth_main.c | 350 static void free_txqs(struct funeth_txq **txqs, unsigned int nqs, in free_txqs() argument 355 for (i = start; i < nqs && txqs[i]; i++) in free_txqs() 356 txqs[i] = funeth_txq_free(txqs[i], state); in free_txqs() 359 static int alloc_txqs(struct net_device *dev, struct funeth_txq **txqs, in alloc_txqs() argument 369 state, &txqs[i]); in alloc_txqs() 371 free_txqs(txqs, nqs, start, FUN_QSTATE_DESTROYED); in alloc_txqs() 453 qset->txqs = fp->txqs; in fun_free_rings() 465 fp->txqs in fun_free_rings() 481 struct funeth_txq **xdpqs = NULL, **txqs; fun_alloc_rings() local [all...] |
H A D | funeth.h | 67 struct funeth_txq **txqs; member 88 struct funeth_txq **txqs; member
|
/kernel/linux/linux-5.10/drivers/net/ethernet/huawei/hinic/ |
H A D | hinic_main.c | 120 gather_tx_stats(nic_tx_stats, &nic_dev->txqs[i]); in gather_nic_stats() 134 if (nic_dev->txqs) in create_txqs() 137 nic_dev->txqs = devm_kcalloc(&netdev->dev, num_txqs, in create_txqs() 138 sizeof(*nic_dev->txqs), GFP_KERNEL); in create_txqs() 139 if (!nic_dev->txqs) in create_txqs() 147 err = hinic_init_txq(&nic_dev->txqs[i], sq, netdev); in create_txqs() 166 hinic_clean_txq(&nic_dev->txqs[i]); in create_txqs() 169 hinic_sq_debug_rem(nic_dev->txqs[j].sq); in create_txqs() 170 hinic_clean_txq(&nic_dev->txqs[j]); in create_txqs() 175 devm_kfree(&netdev->dev, nic_dev->txqs); in create_txqs() [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/huawei/hinic/ |
H A D | hinic_main.c | 120 gather_tx_stats(nic_tx_stats, &nic_dev->txqs[i]); in gather_nic_stats() 134 if (nic_dev->txqs) in create_txqs() 137 nic_dev->txqs = devm_kcalloc(&netdev->dev, num_txqs, in create_txqs() 138 sizeof(*nic_dev->txqs), GFP_KERNEL); in create_txqs() 139 if (!nic_dev->txqs) in create_txqs() 147 err = hinic_init_txq(&nic_dev->txqs[i], sq, netdev); in create_txqs() 165 hinic_clean_txq(&nic_dev->txqs[i]); in create_txqs() 168 hinic_sq_debug_rem(nic_dev->txqs[j].sq); in create_txqs() 169 hinic_clean_txq(&nic_dev->txqs[j]); in create_txqs() 174 devm_kfree(&netdev->dev, nic_dev->txqs); in create_txqs() [all...] |
/kernel/linux/linux-5.10/drivers/net/wireless/ath/ath5k/ |
H A D | mac80211-ops.c | 69 ath5k_tx_queue(hw, skb, &ah->txqs[qnum], control); in ath5k_tx() 744 *tx = ah->txqs[AR5K_TX_QUEUE_ID_DATA_MIN].txq_max; in ath5k_get_ringparam() 764 for (qnum = 0; qnum < ARRAY_SIZE(ah->txqs); qnum++) { in ath5k_set_ringparam() 765 if (!ah->txqs[qnum].setup) in ath5k_set_ringparam() 767 if (ah->txqs[qnum].qnum < AR5K_TX_QUEUE_ID_DATA_MIN || in ath5k_set_ringparam() 768 ah->txqs[qnum].qnum > AR5K_TX_QUEUE_ID_DATA_MAX) in ath5k_set_ringparam() 771 ah->txqs[qnum].txq_max = tx; in ath5k_set_ringparam() 772 if (ah->txqs[qnum].txq_len >= ah->txqs[qnum].txq_max) in ath5k_set_ringparam() 773 ieee80211_stop_queue(hw, ah->txqs[qnu in ath5k_set_ringparam() [all...] |
/kernel/linux/linux-6.6/drivers/net/wireless/ath/ath5k/ |
H A D | mac80211-ops.c | 69 ath5k_tx_queue(hw, skb, &ah->txqs[qnum], control); in ath5k_tx() 745 *tx = ah->txqs[AR5K_TX_QUEUE_ID_DATA_MIN].txq_max; in ath5k_get_ringparam() 765 for (qnum = 0; qnum < ARRAY_SIZE(ah->txqs); qnum++) { in ath5k_set_ringparam() 766 if (!ah->txqs[qnum].setup) in ath5k_set_ringparam() 768 if (ah->txqs[qnum].qnum < AR5K_TX_QUEUE_ID_DATA_MIN || in ath5k_set_ringparam() 769 ah->txqs[qnum].qnum > AR5K_TX_QUEUE_ID_DATA_MAX) in ath5k_set_ringparam() 772 ah->txqs[qnum].txq_max = tx; in ath5k_set_ringparam() 773 if (ah->txqs[qnum].txq_len >= ah->txqs[qnum].txq_max) in ath5k_set_ringparam() 774 ieee80211_stop_queue(hw, ah->txqs[qnu in ath5k_set_ringparam() [all...] |
/kernel/linux/linux-5.10/drivers/infiniband/hw/hfi1/ |
H A D | ipoib_tx.c | 184 struct hfi1_ipoib_txq *txq = &priv->txqs[napi - priv->tx_napis]; in hfi1_ipoib_process_tx_ring() 607 txp.txq = &priv->txqs[skb_get_queue_mapping(skb)]; in hfi1_ipoib_send_dma() 723 priv->txqs = kcalloc_node(dev->num_tx_queues, in hfi1_ipoib_txreq_init() 727 if (!priv->txqs) in hfi1_ipoib_txreq_init() 731 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_init() 777 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_init() 783 kfree(priv->txqs); in hfi1_ipoib_txreq_init() 784 priv->txqs = NULL; in hfi1_ipoib_txreq_init() 826 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_deinit() 836 kfree(priv->txqs); in hfi1_ipoib_txreq_deinit() [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/hw/hfi1/ |
H A D | ipoib_tx.c | 593 txp.txq = &priv->txqs[skb_get_queue_mapping(skb)]; in hfi1_ipoib_send() 697 priv->txqs = kcalloc_node(dev->num_tx_queues, in hfi1_ipoib_txreq_init() 701 if (!priv->txqs) in hfi1_ipoib_txreq_init() 705 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_init() 756 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_init() 765 kfree(priv->txqs); in hfi1_ipoib_txreq_init() 766 priv->txqs = NULL; in hfi1_ipoib_txreq_init() 799 struct hfi1_ipoib_txq *txq = &priv->txqs[i]; in hfi1_ipoib_txreq_deinit() 812 kfree(priv->txqs); in hfi1_ipoib_txreq_deinit() 813 priv->txqs in hfi1_ipoib_txreq_deinit() [all...] |
/kernel/linux/linux-5.10/net/ |
H A D | devres.c | 22 unsigned int txqs, unsigned int rxqs) in devm_alloc_etherdev_mqs() 30 dr->ndev = alloc_etherdev_mqs(sizeof_priv, txqs, rxqs); in devm_alloc_etherdev_mqs() 21 devm_alloc_etherdev_mqs(struct device *dev, int sizeof_priv, unsigned int txqs, unsigned int rxqs) devm_alloc_etherdev_mqs() argument
|
/kernel/linux/linux-6.6/net/ |
H A D | devres.c | 22 unsigned int txqs, unsigned int rxqs) in devm_alloc_etherdev_mqs() 30 dr->ndev = alloc_etherdev_mqs(sizeof_priv, txqs, rxqs); in devm_alloc_etherdev_mqs() 21 devm_alloc_etherdev_mqs(struct device *dev, int sizeof_priv, unsigned int txqs, unsigned int rxqs) devm_alloc_etherdev_mqs() argument
|