Lines Matching refs:msdu
1155 int ath10k_htt_mgmt_tx(struct ath10k_htt *htt, struct sk_buff *msdu) in ath10k_htt_mgmt_tx() argument
1161 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_mgmt_tx()
1162 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_mgmt_tx()
1166 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_mgmt_tx()
1171 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_mgmt_tx()
1181 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_mgmt_tx()
1190 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_mgmt_tx()
1203 cmd->mgmt_tx.msdu_paddr = __cpu_to_le32(ATH10K_SKB_CB(msdu)->paddr); in ath10k_htt_mgmt_tx()
1204 cmd->mgmt_tx.len = __cpu_to_le32(msdu->len); in ath10k_htt_mgmt_tx()
1207 memcpy(cmd->mgmt_tx.hdr, msdu->data, in ath10k_htt_mgmt_tx()
1208 min_t(int, msdu->len, HTT_MGMT_FRM_HDR_DOWNLOAD_LEN)); in ath10k_htt_mgmt_tx()
1218 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_mgmt_tx()
1235 struct sk_buff *msdu) in ath10k_htt_tx_hl() argument
1240 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_hl()
1242 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_hl()
1245 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_hl()
1246 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_hl()
1255 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_hl()
1258 data_len = msdu->len; in ath10k_htt_tx_hl()
1280 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_hl()
1289 if (skb_headroom(msdu) < HTT_TX_HL_NEEDED_HEADROOM) { in ath10k_htt_tx_hl()
1290 tmp_skb = msdu; in ath10k_htt_tx_hl()
1294 skb_headroom(msdu), HTT_TX_HL_NEEDED_HEADROOM); in ath10k_htt_tx_hl()
1295 msdu = skb_realloc_headroom(msdu, HTT_TX_HL_NEEDED_HEADROOM); in ath10k_htt_tx_hl()
1297 if (!msdu) { in ath10k_htt_tx_hl()
1306 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_hl()
1319 skb_get(msdu); in ath10k_htt_tx_hl()
1321 skb_push(msdu, sizeof(*cmd_hdr)); in ath10k_htt_tx_hl()
1322 skb_push(msdu, sizeof(*tx_desc)); in ath10k_htt_tx_hl()
1323 cmd_hdr = (struct htt_cmd_hdr *)msdu->data; in ath10k_htt_tx_hl()
1324 tx_desc = (struct htt_data_tx_desc *)(msdu->data + sizeof(*cmd_hdr)); in ath10k_htt_tx_hl()
1337 res = ath10k_htc_send(&htt->ar->htc, htt->eid, msdu); in ath10k_htt_tx_hl()
1345 struct sk_buff *msdu) in ath10k_htt_tx_32() argument
1349 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_32()
1350 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(msdu); in ath10k_htt_tx_32()
1351 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_32()
1356 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_32()
1357 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_32()
1368 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_32()
1374 prefetch_len = min(htt->prefetch_len, msdu->len); in ath10k_htt_tx_32()
1385 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_32()
1389 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_32()
1392 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_tx_32()
1419 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_32()
1427 frags[0].dword_addr.len = __cpu_to_le32(msdu->len); in ath10k_htt_tx_32()
1472 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_32()
1489 txbuf->cmd_tx.len = __cpu_to_le16(msdu->len); in ath10k_htt_tx_32()
1502 trace_ath10k_htt_tx(ar, msdu_id, msdu->len, vdev_id, tid); in ath10k_htt_tx_32()
1505 flags0, flags1, msdu->len, msdu_id, &frags_paddr, in ath10k_htt_tx_32()
1508 msdu->data, msdu->len); in ath10k_htt_tx_32()
1509 trace_ath10k_tx_hdr(ar, msdu->data, msdu->len); in ath10k_htt_tx_32()
1510 trace_ath10k_tx_payload(ar, msdu->data, msdu->len); in ath10k_htt_tx_32()
1523 sg_items[1].vaddr = msdu->data; in ath10k_htt_tx_32()
1536 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_tx_32()
1545 struct sk_buff *msdu) in ath10k_htt_tx_64() argument
1549 struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)msdu->data; in ath10k_htt_tx_64()
1550 struct ieee80211_tx_info *info = IEEE80211_SKB_CB(msdu); in ath10k_htt_tx_64()
1551 struct ath10k_skb_cb *skb_cb = ATH10K_SKB_CB(msdu); in ath10k_htt_tx_64()
1556 u8 vdev_id = ath10k_htt_tx_get_vdev_id(ar, msdu); in ath10k_htt_tx_64()
1557 u8 tid = ath10k_htt_tx_get_tid(msdu, is_eth); in ath10k_htt_tx_64()
1568 res = ath10k_htt_tx_alloc_msdu_id(htt, msdu); in ath10k_htt_tx_64()
1574 prefetch_len = min(htt->prefetch_len, msdu->len); in ath10k_htt_tx_64()
1585 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_64()
1589 skb_put(msdu, IEEE80211_CCMP_MIC_LEN); in ath10k_htt_tx_64()
1592 skb_cb->paddr = dma_map_single(dev, msdu->data, msdu->len, in ath10k_htt_tx_64()
1620 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1630 frags[0].tword_addr.len_16 = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1674 if (msdu->ip_summed == CHECKSUM_PARTIAL && in ath10k_htt_tx_64()
1694 txbuf->cmd_tx.len = __cpu_to_le16(msdu->len); in ath10k_htt_tx_64()
1709 trace_ath10k_htt_tx(ar, msdu_id, msdu->len, vdev_id, tid); in ath10k_htt_tx_64()
1712 flags0, flags1, msdu->len, msdu_id, &frags_paddr, in ath10k_htt_tx_64()
1715 msdu->data, msdu->len); in ath10k_htt_tx_64()
1716 trace_ath10k_tx_hdr(ar, msdu->data, msdu->len); in ath10k_htt_tx_64()
1717 trace_ath10k_tx_payload(ar, msdu->data, msdu->len); in ath10k_htt_tx_64()
1730 sg_items[1].vaddr = msdu->data; in ath10k_htt_tx_64()
1743 dma_unmap_single(dev, skb_cb->paddr, msdu->len, DMA_TO_DEVICE); in ath10k_htt_tx_64()