Replace struct rtllib_hdr_3addr and and similar structs. Replace management subframe types constants with IEEE80211_* and similar constants. Tested with rtl8192e (WLL6130-D99) in Mode n (12.2 MB/s) Transferred this patch over wlan connection of rtl8192e. --- Here some tests regarding sizes of structs and one pointername change: printk("size rtllib_hdr_3addr: %ld\n",sizeof(struct rtllib_hdr_3addr)); printk("size ieee80211_hdr_3addr: %ld\n",sizeof(struct ieee80211_hdr_3addr)); [ 7413.371188] size rtllib_hdr_3addr: 24 [ 7413.371196] size ieee80211_hdr_3addr: 24 delba = (struct rtllib_hdr_3addr *)skb->data; delba_ph = (struct ieee80211_hdr_3addr *)skb->data; pDelBaParamSet = (union delba_param_set *)&delba->payload[2]; pDelBaParamSet_ph = (union delba_param_set *)&delba_ph->seq_ctrl + 2; int ph_payload = pDelBaParamSet - pDelBaParamSet_ph; printk("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!diff: %d\n", ph_payload); [ 5608.787297] !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!diff: 0 printk("ieee80211_hdr %ld\n",sizeof(struct ieee80211_hdr)); printk("rtllib_hdr_4addr %ld\n",sizeof(struct rtllib_hdr_4addr)); [ 8182.169990] ieee80211_hdr 30 [ 8182.170023] rtllib_hdr_4addr 30 printk("ieee80211_pspoll %ld\n",sizeof(struct ieee80211_pspoll)); printk("rtllib_pspoll_hdr %ld\n",sizeof(struct rtllib_pspoll_hdr)); [12277.846879] ieee80211_pspoll 16 [12277.846900] rtllib_pspoll_hdr 16 Philipp Hortmann (16): staging: rtl8192e: Replace struct rtllib_hdr_1addr with ieee80211_hdr staging: rtl8192e: Replace struct rtllib_hdr_3addr in rtllib_rx.c staging: rtl8192e: Replace struct rtllib_hdr_3addr in rtl819x_BAProc.c staging: rtl8192e: Replace struct rtllib_hdr_3addr in rtllib_softmac.c staging: rtl8192e: Replace struct rtllib_hdr_3addr in r8192E_dev.c staging: rtl8192e: Replace struct rtllib_hdr_3addr in structs of rtllib.h staging: rtl8192e: Remove unused struct rtllib_hdr and two enums staging: rtl8192e: Replace struct rtllib_hdr_4addr in rtllib_crypt*.c staging: rtl8192e: Remove struct rtllib_hdr_4addr staging: rtl8192e: Remove struct rtllib_hdr_3addrqos staging: rtl8192e: Remove struct rtllib_hdr_4addrqos staging: rtl8192e: Remove struct rtllib_pspoll_hdr staging: rtl8192e: Replace management subframe types with IEEE80211_STYPE_* staging: rtl8192e: Replace control subframe types with IEEE80211_STYPE_* staging: rtl8192e: Replace usage of RTLLIB_FCTL_DSTODS with function staging: rtl8192e: Replace frame control constants with IEEE80211_FCTL_* .../staging/rtl8192e/rtl8192e/r8192E_dev.c | 18 +- drivers/staging/rtl8192e/rtl8192e/rtl_core.c | 8 +- drivers/staging/rtl8192e/rtl819x_BAProc.c | 48 ++-- drivers/staging/rtl8192e/rtllib.h | 183 ++-------------- drivers/staging/rtl8192e/rtllib_crypt_ccmp.c | 17 +- drivers/staging/rtl8192e/rtllib_crypt_tkip.c | 40 ++-- drivers/staging/rtl8192e/rtllib_rx.c | 206 +++++++++--------- drivers/staging/rtl8192e/rtllib_softmac.c | 100 ++++----- drivers/staging/rtl8192e/rtllib_tx.c | 36 +-- 9 files changed, 257 insertions(+), 399 deletions(-) -- 2.42.0