Lines Matching refs:msdu
1181 int ath10k_htt_mgmt_tx(struct ath10k_htt *htt, struct sk_buff *msdu) in ath10k_htt_mgmt_tx() argument
1187 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_mgmt_tx()
1188 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_mgmt_tx()
1193 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_mgmt_tx()
1198 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_mgmt_tx()
1210 skb_put(msdu, sizeof(struct ieee80211_mmie_16)); in ath10k_htt_mgmt_tx()
1214 skb_put(msdu, IEEE80211_GCMP_MIC_LEN); in ath10k_htt_mgmt_tx()
1216 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_mgmt_tx()
1226 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_mgmt_tx()
1239 cmd->mgmt_tx.msdu_paddr = __cpu_to_le32(ATH10K_SKB_CB(msdu)->paddr); in ath10k_htt_mgmt_tx()
1240 cmd->mgmt_tx.len = __cpu_to_le32(msdu->len); in ath10k_htt_mgmt_tx()
1243 memcpy(cmd->mgmt_tx.hdr, msdu->data, in ath10k_htt_mgmt_tx()
1244 min_t(int, msdu->len, HTT_MGMT_FRM_HDR_DOWNLOAD_LEN)); in ath10k_htt_mgmt_tx()
1254 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_mgmt_tx()
1271 struct sk_buff *msdu) in ath10k_htt_tx_hl() argument
1277 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_hl()
1280 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_hl()
1281 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_hl()
1287 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_hl()
1293 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_hl()
1297 data_len = msdu->len; in ath10k_htt_tx_hl()
1322 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_hl()
1331 if (skb_headroom(msdu) < HTT_TX_HL_NEEDED_HEADROOM) { in ath10k_htt_tx_hl()
1332 tmp_skb = msdu; in ath10k_htt_tx_hl()
1336 skb_headroom(msdu), HTT_TX_HL_NEEDED_HEADROOM); in ath10k_htt_tx_hl()
1337 msdu = skb_realloc_headroom(msdu, HTT_TX_HL_NEEDED_HEADROOM); in ath10k_htt_tx_hl()
1339 if (!msdu) { in ath10k_htt_tx_hl()
1348 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_hl()
1361 skb_get(msdu); in ath10k_htt_tx_hl()
1363 skb_push(msdu, sizeof(*cmd_hdr)); in ath10k_htt_tx_hl()
1364 skb_push(msdu, sizeof(*tx_desc)); in ath10k_htt_tx_hl()
1365 cmd_hdr = (struct htt_cmd_hdr *)msdu->data; in ath10k_htt_tx_hl()
1366 tx_desc = (struct htt_data_tx_desc *)(msdu->data + sizeof(*cmd_hdr)); in ath10k_htt_tx_hl()
1379 res = ath10k_htc_send_hl(&htt->ar->htc, htt->eid, msdu); in ath10k_htt_tx_hl()
1387 struct sk_buff *msdu) in ath10k_htt_tx_32() argument
1391 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(msdu); in ath10k_htt_tx_32()
1392 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_32()
1397 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_32()
1398 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_32()
1409 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_32()
1415 prefetch_len = min(htt->prefetch_len, msdu->len); in ath10k_htt_tx_32()
1423 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_32()
1429 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_32()
1433 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_32()
1437 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_tx_32()
1464 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_32()
1472 frags[0].dword_addr.len = __cpu_to_le32(msdu->len); in ath10k_htt_tx_32()
1517 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_32()
1534 txbuf->cmd_tx.len = __cpu_to_le16(msdu->len); in ath10k_htt_tx_32()
1547 trace_ath10k_htt_tx(ar, msdu_id, msdu->len, vdev_id, tid); in ath10k_htt_tx_32()
1550 flags0, flags1, msdu->len, msdu_id, &frags_paddr, in ath10k_htt_tx_32()
1553 msdu->data, msdu->len); in ath10k_htt_tx_32()
1554 trace_ath10k_tx_hdr(ar, msdu->data, msdu->len); in ath10k_htt_tx_32()
1555 trace_ath10k_tx_payload(ar, msdu->data, msdu->len); in ath10k_htt_tx_32()
1568 sg_items[1].vaddr = msdu->data; in ath10k_htt_tx_32()
1581 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_tx_32()
1592 struct sk_buff *msdu) in ath10k_htt_tx_64() argument
1596 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(msdu); in ath10k_htt_tx_64()
1597 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_64()
1602 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_64()
1603 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_64()
1614 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_64()
1620 prefetch_len = min(htt->prefetch_len, msdu->len); in ath10k_htt_tx_64()
1628 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_64()
1634 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_64()
1638 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_64()
1642 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_tx_64()
1670 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1680 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1724 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_64()
1744 txbuf->cmd_tx.len = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1759 trace_ath10k_htt_tx(ar, msdu_id, msdu->len, vdev_id, tid); in ath10k_htt_tx_64()
1762 flags0, flags1, msdu->len, msdu_id, &frags_paddr, in ath10k_htt_tx_64()
1765 msdu->data, msdu->len); in ath10k_htt_tx_64()
1766 trace_ath10k_tx_hdr(ar, msdu->data, msdu->len); in ath10k_htt_tx_64()
1767 trace_ath10k_tx_payload(ar, msdu->data, msdu->len); in ath10k_htt_tx_64()
1780 sg_items[1].vaddr = msdu->data; in ath10k_htt_tx_64()
1793 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_tx_64()