/freebsd/sys/contrib/dev/mediatek/mt76/mt7615/ |
H A D | pci_mac.c | 21 mt7615_write_fw_txp(struct mt7615_dev *dev, struct mt76_tx_info *tx_info, in mt7615_write_fw_txp() argument 24 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)tx_info->skb->data; in mt7615_write_fw_txp() 25 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(tx_info->skb); in mt7615_write_fw_txp() 30 int nbuf = tx_info->nbuf - 1; in mt7615_write_fw_txp() 34 txp->buf[i] = cpu_to_le32(tx_info->buf[i + 1].addr); in mt7615_write_fw_txp() 35 txp->len[i] = cpu_to_le16(tx_info->buf[i + 1].len); in mt7615_write_fw_txp() 40 tx_info->buf[0].len = MT_TXD_SIZE + sizeof(*txp); in mt7615_write_fw_txp() 41 tx_info->buf[1].len = MT_CT_PARSE_LEN; in mt7615_write_fw_txp() 42 tx_info->buf[1].skip_unmap = true; in mt7615_write_fw_txp() 43 tx_info->nbuf = MT_CT_DMA_BUF_NUM; in mt7615_write_fw_txp() [all …]
|
H A D | usb_sdio.c | 122 if (!(sta->wcid.tx_info & MT_WCID_TX_INFO_SET)) in mt7663_usb_sdio_set_rates() 126 sta->wcid.tx_info |= MT_WCID_TX_INFO_SET; in mt7663_usb_sdio_set_rates() 184 struct mt76_tx_info *tx_info) in mt7663_usb_sdio_tx_prepare_skb() argument 187 struct sk_buff *skb = tx_info->skb; in mt7663_usb_sdio_tx_prepare_skb()
|
/freebsd/sys/contrib/dev/mediatek/mt76/ |
H A D | mt76x02_txrx.c | 140 struct mt76_tx_info *tx_info) in mt76x02_tx_prepare_skb() argument 143 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)tx_info->skb->data; in mt76x02_tx_prepare_skb() 145 bool ampdu = IEEE80211_SKB_CB(tx_info->skb)->flags & IEEE80211_TX_CTL_AMPDU; in mt76x02_tx_prepare_skb() 152 len = tx_info->skb->len - (hdrlen & 2); in mt76x02_tx_prepare_skb() 153 mt76x02_mac_write_txwi(dev, txwi, tx_info->skb, wcid, sta, len); in mt76x02_tx_prepare_skb() 155 pid = mt76_tx_status_skb_add(mdev, wcid, tx_info->skb); in mt76x02_tx_prepare_skb() 162 skb_get_queue_mapping(tx_info->skb)); in mt76x02_tx_prepare_skb() 169 tx_info->info = FIELD_PREP(MT_TXD_INFO_QSEL, qsel) | in mt76x02_tx_prepare_skb() 173 tx_info->info |= MT_TXD_INFO_WIV; in mt76x02_tx_prepare_skb() 178 ewma_pktlen_add(&msta->pktlen, tx_info->skb->len); in mt76x02_tx_prepare_skb()
|
H A D | mt76x02_usb_core.c | 67 struct mt76_tx_info *tx_info) in mt76x02u_tx_prepare_skb() argument 70 int pid, len = tx_info->skb->len, ep = q2ep(dev->mphy.q_tx[qid]->hw_idx); in mt76x02u_tx_prepare_skb() 72 bool ampdu = IEEE80211_SKB_CB(tx_info->skb)->flags & IEEE80211_TX_CTL_AMPDU; in mt76x02u_tx_prepare_skb() 77 mt76_insert_hdr_pad(tx_info->skb); in mt76x02u_tx_prepare_skb() 79 txwi = (struct mt76x02_txwi *)(tx_info->skb->data - sizeof(*txwi)); in mt76x02u_tx_prepare_skb() 80 mt76x02_mac_write_txwi(dev, txwi, tx_info->skb, wcid, sta, len); in mt76x02u_tx_prepare_skb() 81 skb_push(tx_info->skb, sizeof(*txwi)); in mt76x02u_tx_prepare_skb() 83 pid = mt76_tx_status_skb_add(mdev, wcid, tx_info->skb); in mt76x02u_tx_prepare_skb() 90 skb_get_queue_mapping(tx_info->skb)); in mt76x02u_tx_prepare_skb() 107 ewma_pktlen_add(&msta->pktlen, tx_info->skb->len); in mt76x02u_tx_prepare_skb() [all …]
|
H A D | dma.c | 468 struct sk_buff *skb, u32 tx_info) in mt76_dma_tx_queue_skb_raw() argument 488 mt76_dma_add_buf(dev, q, &buf, 1, tx_info, skb, NULL); in mt76_dma_tx_queue_skb_raw() 507 struct mt76_tx_info tx_info = { in mt76_dma_tx_queue_skb() local 535 tx_info.buf[n].addr = t->dma_addr; in mt76_dma_tx_queue_skb() 536 tx_info.buf[n++].len = dev->drv->txwi_size; in mt76_dma_tx_queue_skb() 537 tx_info.buf[n].addr = addr; in mt76_dma_tx_queue_skb() 538 tx_info.buf[n++].len = len; in mt76_dma_tx_queue_skb() 541 if (n == ARRAY_SIZE(tx_info.buf)) in mt76_dma_tx_queue_skb() 549 tx_info.buf[n].addr = addr; in mt76_dma_tx_queue_skb() 550 tx_info.buf[n++].len = iter->len; in mt76_dma_tx_queue_skb() [all …]
|
H A D | mt76x02_mcu.c | 40 u32 tx_info; in mt76x02_mcu_msg_send() local 57 tx_info = MT_MCU_MSG_TYPE_CMD | in mt76x02_mcu_msg_send() 63 ret = mt76_tx_queue_skb_raw(dev, mdev->q_mcu[MT_MCUQ_WM], skb, tx_info); in mt76x02_mcu_msg_send()
|
H A D | mt76x02_usb.h | 21 struct mt76_tx_info *tx_info);
|
H A D | sdio.c | 521 struct mt76_tx_info tx_info = { in mt76s_tx_queue_skb() local 531 err = dev->drv->tx_prepare_skb(dev, NULL, qid, wcid, sta, &tx_info); in mt76s_tx_queue_skb() 535 q->entry[q->head].skb = tx_info.skb; in mt76s_tx_queue_skb() 549 struct sk_buff *skb, u32 tx_info) in mt76s_tx_queue_skb_raw() argument
|
H A D | mt76_connac_mac.c | 177 struct mt76_tx_info *tx_info, in mt76_connac_write_hw_txp() argument 182 int i, nbuf = tx_info->nbuf - 1; in mt76_connac_write_hw_txp() 185 tx_info->buf[0].len = MT_TXD_SIZE + sizeof(*txp); in mt76_connac_write_hw_txp() 186 tx_info->nbuf = 1; in mt76_connac_write_hw_txp() 197 u16 len = tx_info->buf[i + 1].len & MT_TXD_LEN_MASK; in mt76_connac_write_hw_txp() 198 u32 addr = tx_info->buf[i + 1].addr; in mt76_connac_write_hw_txp()
|
H A D | mt76x02_mac.c | 233 u32 tx_info; in mt76x02_mac_wcid_set_rate() local 237 tx_info = FIELD_PREP(MT_WCID_TX_INFO_RATE, rateval) | in mt76x02_mac_wcid_set_rate() 241 wcid->tx_info = tx_info; in mt76x02_mac_wcid_set_rate() 382 wcid_tx_info = wcid->tx_info; in mt76x02_mac_write_txwi() 502 mt76x02_mac_process_tx_rate(&rate[0], msta->wcid.tx_info, in mt76x02_mac_fill_tx_status()
|
/freebsd/sys/contrib/dev/mediatek/mt76/mt7921/ |
H A D | pci_mac.c | 11 struct mt76_tx_info *tx_info) in mt7921e_tx_prepare_skb() argument 14 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(tx_info->skb); in mt7921e_tx_prepare_skb() 21 if (unlikely(tx_info->skb->len <= ETH_HLEN)) in mt7921e_tx_prepare_skb() 28 t->skb = tx_info->skb; in mt7921e_tx_prepare_skb() 43 pid = mt76_tx_status_skb_add(mdev, wcid, tx_info->skb); in mt7921e_tx_prepare_skb() 44 mt76_connac2_mac_write_txwi(mdev, txwi_ptr, tx_info->skb, wcid, key, in mt7921e_tx_prepare_skb() 49 mt76_connac_write_hw_txp(mdev, tx_info, txp, id); in mt7921e_tx_prepare_skb() 51 tx_info->skb = DMA_DUMMY_DATA; in mt7921e_tx_prepare_skb()
|
H A D | mac.c | 497 __le32 *tx_info = (__le32 *)(data + sizeof(*free)); in mt7921_mac_tx_free() local 499 __le32 *tx_info = (__le32 *)((u8 *)data + sizeof(*free)); in mt7921_mac_tx_free() local 520 if (WARN_ON_ONCE((void *)&tx_info[count] > end)) in mt7921_mac_tx_free() 524 u32 msdu, info = le32_to_cpu(tx_info[i]); in mt7921_mac_tx_free() 781 struct mt76_tx_info *tx_info) in mt7921_usb_sdio_tx_prepare_skb() argument 784 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(tx_info->skb); in mt7921_usb_sdio_tx_prepare_skb() 786 struct sk_buff *skb = tx_info->skb; in mt7921_usb_sdio_tx_prepare_skb() 789 if (unlikely(tx_info->skb->len <= ETH_HLEN)) in mt7921_usb_sdio_tx_prepare_skb()
|
H A D | mt7921.h | 264 struct mt76_tx_info *tx_info); 319 struct mt76_tx_info *tx_info);
|
/freebsd/sys/dev/mlx4/mlx4_en/ |
H A D | mlx4_en_tx.c | 98 ring->tx_info = kzalloc_node(tmp, GFP_KERNEL, node); in mlx4_en_create_tx_ring() 99 if (!ring->tx_info) { in mlx4_en_create_tx_ring() 100 ring->tx_info = kzalloc(tmp, GFP_KERNEL); in mlx4_en_create_tx_ring() 101 if (!ring->tx_info) { in mlx4_en_create_tx_ring() 110 &ring->tx_info[x].dma_map); in mlx4_en_create_tx_ring() 114 ring->tx_info[x].dma_map); in mlx4_en_create_tx_ring() 121 ring->tx_info, tmp); in mlx4_en_create_tx_ring() 180 bus_dmamap_destroy(ring->dma_tag, ring->tx_info[x].dma_map); in mlx4_en_create_tx_ring() 182 vfree(ring->tx_info); in mlx4_en_create_tx_ring() 206 bus_dmamap_destroy(ring->dma_tag, ring->tx_info[x].dma_map); in mlx4_en_destroy_tx_ring() [all …]
|
/freebsd/sys/dev/ena/ |
H A D | ena_datapath.c | 267 struct ena_tx_buffer *tx_info; in ena_tx_cleanup() local 274 tx_info = &tx_ring->tx_buffer_info[req_id]; in ena_tx_cleanup() 276 mbuf = tx_info->mbuf; in ena_tx_cleanup() 278 tx_info->mbuf = NULL; in ena_tx_cleanup() 279 bintime_clear(&tx_info->timestamp); in ena_tx_cleanup() 281 bus_dmamap_sync(adapter->tx_buf_tag, tx_info->dmamap, in ena_tx_cleanup() 283 bus_dmamap_unload(adapter->tx_buf_tag, tx_info->dmamap); in ena_tx_cleanup() 290 total_done += tx_info->tx_descs; in ena_tx_cleanup() 853 ena_tx_map_mbuf(struct ena_ring *tx_ring, struct ena_tx_buffer *tx_info, in ena_tx_map_mbuf() argument 865 tx_info->mbuf = mbuf; in ena_tx_map_mbuf() [all …]
|
H A D | ena_netmap.c | 390 struct ena_tx_buffer *tx_info; in ena_netmap_tx_frame() local 407 tx_info = &tx_ring->tx_buffer_info[req_id]; in ena_netmap_tx_frame() 408 tx_info->num_of_bufs = 0; in ena_netmap_tx_frame() 409 tx_info->nm_info.sockets_used = 0; in ena_netmap_tx_frame() 411 rc = ena_netmap_tx_map_slots(ctx, tx_info, &push_hdr, &header_len, in ena_netmap_tx_frame() 419 ena_tx_ctx.ena_bufs = tx_info->bufs; in ena_netmap_tx_frame() 421 ena_tx_ctx.num_bufs = tx_info->num_of_bufs; in ena_netmap_tx_frame() 445 ena_netmap_unmap_last_socket_chain(ctx, tx_info); in ena_netmap_tx_frame() 456 tx_info->tx_descs = nb_hw_desc; in ena_netmap_tx_frame() 460 for (unsigned int i = 0; i < tx_info->num_of_bufs; i++) in ena_netmap_tx_frame() [all …]
|
/freebsd/sys/dev/liquidio/ |
H A D | lio_rxtx.c | 56 union lio_tx_info *tx_info; in lio_xmit() local 187 tx_info = (union lio_tx_info *)&ndata.cmd.cmd3.ossp[0]; in lio_xmit() 190 tx_info->s.gso_size = m_head->m_pkthdr.tso_segsz; in lio_xmit() 191 tx_info->s.gso_segs = howmany(m_head->m_pkthdr.len, in lio_xmit() 206 if (tx_info->s.gso_segs) in lio_xmit() 207 stats->tx_done += tx_info->s.gso_segs; in lio_xmit()
|
/freebsd/sys/contrib/dev/rtw89/ |
H A D | rtw8852a.c | 1498 struct rtw8852a_bb_pmac_info *tx_info, in rtw8852a_start_pmac_tx() 1502 if (tx_info->mode == CONT_TX) in rtw8852a_start_pmac_tx() 1505 else if (tx_info->mode == PKTS_TX) in rtw8852a_start_pmac_tx() 1511 struct rtw8852a_bb_pmac_info *tx_info, in rtw8852a_start_pmac_tx() 1514 enum rtw8852a_pmac_mode mode = tx_info->mode; in rtw8852a_bb_set_pmac_tx() argument 1515 u32 pkt_cnt = tx_info->tx_cnt; in rtw8852a_bb_set_pmac_tx() 1516 u16 period = tx_info->period; in rtw8852a_bb_set_pmac_tx() 1518 if (mode == CONT_TX && !tx_info->is_cck) { in rtw8852a_bb_set_pmac_tx() 1536 struct rtw8852a_bb_pmac_info *tx_info, in rtw8852a_bb_set_pmac_tx() 1541 if (!tx_info in rtw8852a_bb_set_pmac_pkt_tx() 1476 rtw8852a_stop_pmac_tx(struct rtw89_dev * rtwdev,struct rtw8852a_bb_pmac_info * tx_info,enum rtw89_phy_idx idx) rtw8852a_stop_pmac_tx() argument 1489 rtw8852a_start_pmac_tx(struct rtw89_dev * rtwdev,struct rtw8852a_bb_pmac_info * tx_info,enum rtw89_phy_idx idx) rtw8852a_start_pmac_tx() argument 1542 struct rtw8852a_bb_pmac_info tx_info = {0}; rtw8852a_bb_set_pmac_pkt_tx() local [all...] |
H A D | rtw8852b.c | 1778 rtw8852b_stop_pmac_tx(struct rtw89_dev * rtwdev,struct rtw8852b_bb_pmac_info * tx_info,enum rtw89_phy_idx idx) rtw8852b_stop_pmac_tx() argument 1789 rtw8852b_start_pmac_tx(struct rtw89_dev * rtwdev,struct rtw8852b_bb_pmac_info * tx_info,enum rtw89_phy_idx idx) rtw8852b_start_pmac_tx() argument 1813 rtw8852b_bb_set_pmac_tx(struct rtw89_dev * rtwdev,struct rtw8852b_bb_pmac_info * tx_info,enum rtw89_phy_idx idx) rtw8852b_bb_set_pmac_tx() argument 1843 struct rtw8852b_bb_pmac_info tx_info = {0}; rtw8852b_bb_set_pmac_pkt_tx() local
|
H A D | rtw8852a.h | 99 struct rtw8852a_bb_pmac_info *tx_info,
|
/freebsd/sys/dev/mana/ |
H A D | mana_en.c | 354 struct mana_send_buf_info *tx_info, in mana_tx_map_mbuf() argument 363 err = bus_dmamap_load_mbuf_sg(apc->tx_buf_tag, tx_info->dma_map, in mana_tx_map_mbuf() 381 tx_info->dma_map, m, segs, &nsegs, BUS_DMA_NOWAIT); in mana_tx_map_mbuf() 391 tx_info->mbuf = *m_head; in mana_tx_map_mbuf() 393 bus_dmamap_sync(apc->tx_buf_tag, tx_info->dma_map, in mana_tx_map_mbuf() 402 struct mana_send_buf_info *tx_info) in mana_tx_unmap_mbuf() argument 404 bus_dmamap_sync(apc->tx_buf_tag, tx_info->dma_map, in mana_tx_unmap_mbuf() 406 bus_dmamap_unload(apc->tx_buf_tag, tx_info->dma_map); in mana_tx_unmap_mbuf() 407 if (tx_info->mbuf) { in mana_tx_unmap_mbuf() 408 m_freem(tx_info->mbuf); in mana_tx_unmap_mbuf() [all …]
|
/freebsd/sys/contrib/dev/mediatek/mt76/mt7915/ |
H A D | mac.c | 752 struct mt76_tx_info *tx_info) in mt7915_tx_prepare_skb() argument 754 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)tx_info->skb->data; in mt7915_tx_prepare_skb() 756 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(tx_info->skb); in mt7915_tx_prepare_skb() 761 int id, i, nbuf = tx_info->nbuf - 1; in mt7915_tx_prepare_skb() 765 if (unlikely(tx_info->skb->len <= ETH_HLEN)) in mt7915_tx_prepare_skb() 783 t->skb = tx_info->skb; in mt7915_tx_prepare_skb() 789 pid = mt76_tx_status_skb_add(mdev, wcid, tx_info->skb); in mt7915_tx_prepare_skb() 790 mt7915_mac_write_txwi(mdev, txwi_ptr, tx_info->skb, wcid, pid, key, in mt7915_tx_prepare_skb() 795 txp->buf[i] = cpu_to_le32(tx_info->buf[i + 1].addr); in mt7915_tx_prepare_skb() 796 txp->len[i] = cpu_to_le16(tx_info->buf[i + 1].len); in mt7915_tx_prepare_skb() [all …]
|
/freebsd/sys/dev/al_eth/ |
H A D | al_eth.c | 1156 struct al_eth_tx_buffer *tx_info; in al_eth_tx_do_cleanup() local 1159 tx_info = &tx_ring->tx_buffer_info[next_to_clean]; in al_eth_tx_do_cleanup() 1161 if (tx_info->tx_descs > total_done) in al_eth_tx_do_cleanup() 1164 mbuf = tx_info->m; in al_eth_tx_do_cleanup() 1166 tx_info->m = NULL; in al_eth_tx_do_cleanup() 1172 bus_dmamap_unload(tx_ring->dma_buf_tag, tx_info->dma_map); in al_eth_tx_do_cleanup() 1175 total_done -= tx_info->tx_descs; in al_eth_tx_do_cleanup() 1192 al_eth_tx_csum(struct al_eth_ring *tx_ring, struct al_eth_tx_buffer *tx_info, in al_eth_tx_csum() argument 1292 struct al_eth_tx_buffer *tx_info; in al_eth_xmit_mbuf() local 1324 tx_info = &tx_ring->tx_buffer_info[next_to_use]; in al_eth_xmit_mbuf() [all …]
|
/freebsd/sys/contrib/dev/mediatek/mt76/mt7996/ |
H A D | mac.c | 935 struct mt76_tx_info *tx_info) in mt7996_tx_prepare_skb() argument 937 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)tx_info->skb->data; in mt7996_tx_prepare_skb() 939 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(tx_info->skb); in mt7996_tx_prepare_skb() 944 int id, i, pid, nbuf = tx_info->nbuf - 1; in mt7996_tx_prepare_skb() 948 if (unlikely(tx_info->skb->len <= ETH_HLEN)) in mt7996_tx_prepare_skb() 964 t->skb = tx_info->skb; in mt7996_tx_prepare_skb() 970 pid = mt76_tx_status_skb_add(mdev, wcid, tx_info->skb); in mt7996_tx_prepare_skb() 971 mt7996_mac_write_txwi(dev, txwi_ptr, tx_info->skb, wcid, key, in mt7996_tx_prepare_skb() 976 txp->fw.buf[i] = cpu_to_le32(tx_info->buf[i + 1].addr); in mt7996_tx_prepare_skb() 977 txp->fw.len[i] = cpu_to_le16(tx_info->buf[i + 1].len); in mt7996_tx_prepare_skb() [all …]
|
/freebsd/sys/contrib/dev/iwlwifi/mvm/ |
H A D | tx.c | 2046 struct ieee80211_tx_info *tx_info, u32 rate, in iwl_mvm_tx_reclaim() argument 2127 tx_info->status.status_driver_data[0] = in iwl_mvm_tx_reclaim() 2129 tx_info->status.status_driver_data[0]); in iwl_mvm_tx_reclaim() 2130 tx_info->status.status_driver_data[1] = (void *)(uintptr_t)rate; in iwl_mvm_tx_reclaim() 2147 memcpy(&info->status, &tx_info->status, in iwl_mvm_tx_reclaim() 2148 sizeof(tx_info->status)); in iwl_mvm_tx_reclaim() 2171 tx_info->band = chanctx_conf->def.chan->band; in iwl_mvm_tx_reclaim() 2172 iwl_mvm_hwrate_to_tx_status(mvm->fw, rate, tx_info); in iwl_mvm_tx_reclaim() 2175 iwl_mvm_rs_tx_status(mvm, sta, tid, tx_info, false); in iwl_mvm_tx_reclaim() 2401 struct ieee80211_tx_info tx_info = {}; in iwl_mvm_flush_sta_tids() local [all …]
|