From: Jes Sorensen <[email protected]>
Signed-off-by: Jes Sorensen <[email protected]>
---
drivers/staging/rtl8723au/core/rtw_xmit.c | 9 +++++----
drivers/staging/rtl8723au/include/wifi.h | 6 ------
2 files changed, 5 insertions(+), 10 deletions(-)
diff --git a/drivers/staging/rtl8723au/core/rtw_xmit.c
b/drivers/staging/rtl8723au/core/rtw_xmit.c
index 0472258..a75ca65 100644
--- a/drivers/staging/rtl8723au/core/rtw_xmit.c
+++ b/drivers/staging/rtl8723au/core/rtw_xmit.c
@@ -1078,6 +1078,7 @@ int rtw_xmitframe_coalesce23a(struct rtw_adapter
*padapter, struct sk_buff *skb,
struct sta_info *psta;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct pkt_attrib *pattrib = &pxmitframe->attrib;
+ struct ieee80211_hdr *hdr;
s32 frg_inx, frg_len, mpdu_len, llc_sz, mem_sz;
u8 *pframe, *mem_start;
u8 hw_hdr_offset;
@@ -1136,8 +1137,7 @@ int rtw_xmitframe_coalesce23a(struct rtw_adapter
*padapter, struct sk_buff *skb,
mpdu_len = frg_len;
pframe = mem_start;
-
- SetMFrag(mem_start);
+ hdr = (struct ieee80211_hdr *)mem_start;
pframe += pattrib->hdrlen;
mpdu_len -= pattrib->hdrlen;
@@ -1220,8 +1220,8 @@ int rtw_xmitframe_coalesce23a(struct rtw_adapter
*padapter, struct sk_buff *skb,
llc_sz : 0) +
((pattrib->bswenc) ?
pattrib->icv_len : 0) + mem_sz;
-
- ClearMFrag(mem_start);
+ hdr->frame_control &=
+ ~cpu_to_le16(IEEE80211_FCTL_MOREFRAGS);
break;
} else {
@@ -1229,6 +1229,7 @@ int rtw_xmitframe_coalesce23a(struct rtw_adapter
*padapter, struct sk_buff *skb,
("%s: There're still something in packet!\n",
__func__));
}
+ hdr->frame_control |= cpu_to_le16(IEEE80211_FCTL_MOREFRAGS);
mem_start = PTR_ALIGN(pframe, 4) + hw_hdr_offset;
memcpy(mem_start, pbuf_start + hw_hdr_offset, pattrib->hdrlen);
diff --git a/drivers/staging/rtl8723au/include/wifi.h
b/drivers/staging/rtl8723au/include/wifi.h
index 4eb3633..2d1e33a 100644
--- a/drivers/staging/rtl8723au/include/wifi.h
+++ b/drivers/staging/rtl8723au/include/wifi.h
@@ -87,12 +87,6 @@ enum WIFI_REG_DOMAIN {
#define SetFrDs(pbuf) \
(*(__le16 *)(pbuf) |= cpu_to_le16(IEEE80211_FCTL_FROMDS))
-#define SetMFrag(pbuf) \
- (*(__le16 *)(pbuf) |= cpu_to_le16(IEEE80211_FCTL_MOREFRAGS))
-
-#define ClearMFrag(pbuf) \
- (*(__le16 *)(pbuf) &= (~cpu_to_le16(IEEE80211_FCTL_MOREFRAGS)))
-
#define SetRetry(pbuf) \
(*(__le16 *)(pbuf) |= cpu_to_le16(IEEE80211_FCTL_RETRY))
--
1.9.0
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel