mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 07:37:31 -04:00
qcacld-2.0: Fix intra-BSS forwarding
qcacld-2.0 to qcacld-3.0 propagation
When INTRA_BSS_FWD_OFFLOAD is enabled, FW will send all Rx packets to
IPA uC, which needs to be forwarded to other interfaces. IPA driver will
send back non-IP, broadcast and multicast packets to WLAN host driver
in exception pipe with fw_desc field set by FW as:
- FW_RX_DESC_FORWARD_M bit: Forward the packet to TX
- FW_RX_DESC_DISCARD_M bit: Do not send the packet to network stack,
which will be set of for intrabss unicast.
Change-Id: Ie2826c8c7b578e3684133a2554ed086e721f67ae
CRs-Fixed: 895662
This commit is contained in:
parent
2c385d928f
commit
ec0e44f63c
1 changed files with 8 additions and 6 deletions
|
|
@ -2444,12 +2444,6 @@ static void hdd_ipa_w2i_cb(void *priv, enum ipa_dp_evt_type evt,
|
|||
*/
|
||||
fw_desc = (uint8_t)skb->cb[1];
|
||||
|
||||
if (fw_desc & FW_RX_DESC_DISCARD_M) {
|
||||
HDD_IPA_INCREASE_INTERNAL_DROP_COUNT(hdd_ipa);
|
||||
hdd_ipa->ipa_rx_discard++;
|
||||
cdf_nbuf_free(skb);
|
||||
break;
|
||||
}
|
||||
|
||||
if (fw_desc & FW_RX_DESC_FORWARD_M) {
|
||||
HDD_IPA_LOG(
|
||||
|
|
@ -2473,6 +2467,14 @@ static void hdd_ipa_w2i_cb(void *priv, enum ipa_dp_evt_type evt,
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (fw_desc & FW_RX_DESC_DISCARD_M) {
|
||||
HDD_IPA_INCREASE_INTERNAL_DROP_COUNT(hdd_ipa);
|
||||
hdd_ipa->ipa_rx_discard++;
|
||||
cdf_nbuf_free(skb);
|
||||
break;
|
||||
}
|
||||
|
||||
} else {
|
||||
HDD_IPA_LOG(CDF_TRACE_LEVEL_INFO_HIGH,
|
||||
"Intra-BSS FWD is disabled-skip forward to Tx");
|
||||
|
|
|
|||
Loading…
Reference in a new issue