qcacmn: Allow rx UDP packets during roaming before peer map is received

In VoIP cases, no or minimal packet drop is expected during
roaming. Currently, data packets are dropped in host if they
are received after roam sync indication from firmware and before
peer map indication is received due to invalid peer.
This change allows rx UDP data packets during roaming before
peer map indication is received from FW if peer's auth_status
received in roam_sync_indication from FW is authorised.

Change-Id: Ic518b7cd0aef48a2b0f8c923a2e20838b07f3d1f
CRs-Fixed: 3168603
This commit is contained in:
Surabhi Vishnoi
2022-04-06 14:23:05 +05:30
committato da Madan Koyyalamudi
parent 5ad83e6c56
commit ecaa0f1f6c
7 ha cambiato i file con 157 aggiunte e 1 eliminazioni

Vedi File

@@ -708,6 +708,32 @@ cdp_peer_delete(ol_txrx_soc_handle soc, uint8_t vdev_id,
soc->ops->cmn_drv_ops->txrx_peer_delete(soc, vdev_id, peer_mac, bitmap);
}
#ifdef DP_RX_UDP_OVER_PEER_ROAM
static inline void
cdp_update_roaming_peer_in_vdev(ol_txrx_soc_handle soc, uint8_t vdev_id,
uint8_t *peer_mac, uint32_t auth_status)
{
if (!soc || !soc->ops) {
QDF_TRACE(QDF_MODULE_ID_CDP, QDF_TRACE_LEVEL_DEBUG,
"%s: Invalid Instance:", __func__);
QDF_BUG(0);
return;
}
if (!soc->ops->cmn_drv_ops ||
!soc->ops->cmn_drv_ops->txrx_update_roaming_peer)
return;
soc->ops->cmn_drv_ops->txrx_update_roaming_peer(soc, vdev_id,
peer_mac, auth_status);
}
#else
static inline void
cdp_update_roaming_peer_in_vdev(ol_txrx_soc_handle soc, uint8_t vdev_id,
uint8_t *peer_mac, uint32_t auth_status)
{
}
#endif
/**
* cdp_peer_detach_sync() - peer detach sync callback
* @soc: datapath soc handle