mt7915: fix WiFI->LAN throughput with hwnat enabled
This commit is contained in:
@ -2581,16 +2581,10 @@ VOID RtmpOsPktNatMagicTag(PNDIS_PACKET pNetPkt)
|
|||||||
{
|
{
|
||||||
struct sk_buff *pRxPkt = RTPKT_TO_OSPKT(pNetPkt);
|
struct sk_buff *pRxPkt = RTPKT_TO_OSPKT(pNetPkt);
|
||||||
|
|
||||||
//FOE_MAGIC_TAG(pRxPkt) = FOE_MAGIC_WLAN;
|
|
||||||
if (IS_SPACE_AVAILABLE_HEAD(pRxPkt)) {
|
if (IS_SPACE_AVAILABLE_HEAD(pRxPkt)) {
|
||||||
FOE_ALG_HEAD(pRxPkt) = 0;
|
|
||||||
FOE_MAGIC_TAG_HEAD(pRxPkt) = FOE_MAGIC_WLAN;
|
FOE_MAGIC_TAG_HEAD(pRxPkt) = FOE_MAGIC_WLAN;
|
||||||
FOE_TAG_PROTECT_HEAD(pRxPkt) = TAG_PROTECT;
|
} else {
|
||||||
}
|
pr_err("%s: magic tag not set.\n", __func__);
|
||||||
if (IS_SPACE_AVAILABLE_TAIL(pRxPkt)) {
|
|
||||||
FOE_ALG_TAIL(pRxPkt) = 0;
|
|
||||||
FOE_MAGIC_TAG_TAIL(pRxPkt) = FOE_MAGIC_WLAN;
|
|
||||||
FOE_TAG_PROTECT_TAIL(pRxPkt) = TAG_PROTECT;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif /*CONFIG_FAST_NAT_SUPPORT*/
|
#endif /*CONFIG_FAST_NAT_SUPPORT*/
|
||||||
|
@ -1274,19 +1274,23 @@ void announce_802_3_packet(
|
|||||||
RTMP_CHIP_CAP *cap = hc_get_chip_cap(pAd->hdev_ctrl);
|
RTMP_CHIP_CAP *cap = hc_get_chip_cap(pAd->hdev_ctrl);
|
||||||
BOOLEAN whnat_rx_en = pAd->CommonCfg.whnat_en &&
|
BOOLEAN whnat_rx_en = pAd->CommonCfg.whnat_en &&
|
||||||
(cap->tkn_info.feature & TOKEN_RX);
|
(cap->tkn_info.feature & TOKEN_RX);
|
||||||
#else
|
|
||||||
BOOLEAN whnat_rx_en = FALSE;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef PKTLOSS_CHK
|
#ifdef PKTLOSS_CHK
|
||||||
if (pAd->pktloss_chk.enable)
|
if (pAd->pktloss_chk.enable)
|
||||||
pAd->pktloss_chk.pktloss_chk_handler(pAd, GET_OS_PKT_DATAPTR(pRxPkt), MAT_ETHER_HDR_LEN, 3, FALSE);
|
pAd->pktloss_chk.pktloss_chk_handler(pAd, GET_OS_PKT_DATAPTR(pRxPkt), MAT_ETHER_HDR_LEN, 3, FALSE);
|
||||||
#endif
|
#endif
|
||||||
RtmpOsPktProtocolAssign(pRxPkt);
|
RtmpOsPktProtocolAssign(pRxPkt);
|
||||||
|
|
||||||
|
#ifndef WHNAT_SUPPORT
|
||||||
|
RtmpOsPktNatMagicTag(pRxPkt);
|
||||||
|
if (ra_sw_nat_hook_rx(pRxPkt))
|
||||||
|
RtmpOsPktRcvHandle(pRxPkt, napi);
|
||||||
|
#else
|
||||||
if (!whnat_rx_en) {
|
if (!whnat_rx_en) {
|
||||||
RtmpOsPktNatMagicTag(pRxPkt);
|
RtmpOsPktNatMagicTag(pRxPkt);
|
||||||
if (ra_sw_nat_hook_rx(pRxPkt))
|
if (ra_sw_nat_hook_rx(pRxPkt))
|
||||||
RtmpOsPktRcvHandle(pRxPkt, napi);
|
RtmpOsPktRcvHandle(pRxPkt, napi);
|
||||||
} else {
|
} else {
|
||||||
if (RTMP_GET_PACKET_TYPE(pRxPkt)
|
if (RTMP_GET_PACKET_TYPE(pRxPkt)
|
||||||
== RX_PPE_VALID)
|
== RX_PPE_VALID)
|
||||||
@ -1294,6 +1298,7 @@ void announce_802_3_packet(
|
|||||||
RtmpOsPktRcvHandle(pRxPkt, napi);
|
RtmpOsPktRcvHandle(pRxPkt, napi);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif /* CONFIG_FAST_NAT_SUPPORT */
|
#endif /* CONFIG_FAST_NAT_SUPPORT */
|
||||||
|
@ -1821,7 +1821,7 @@ EXTRA_CFLAGS += -DKERNEL_RPS_ADJUST
|
|||||||
ifeq ($(CONFIG_SOC_MT7621),y)
|
ifeq ($(CONFIG_SOC_MT7621),y)
|
||||||
EXTRA_CFLAGS += -DRX_RPS_SUPPORT
|
EXTRA_CFLAGS += -DRX_RPS_SUPPORT
|
||||||
endif
|
endif
|
||||||
EXTRA_CFLAGS += -DPKTLOSS_CHK
|
#EXTRA_CFLAGS += -DPKTLOSS_CHK
|
||||||
EXTRA_CFLAGS += -DVERIFICATION_MODE
|
EXTRA_CFLAGS += -DVERIFICATION_MODE
|
||||||
EXTRA_CFLAGS += -DWIFI_MODULE_DVT
|
EXTRA_CFLAGS += -DWIFI_MODULE_DVT
|
||||||
EXTRA_CFLAGS += -DDABS_QOS
|
EXTRA_CFLAGS += -DDABS_QOS
|
||||||
|
Reference in New Issue
Block a user