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
ec932147b0
commit
221dc67394
@ -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 New Issue
Block a user