Revert "qcacmn: Code movement to enable multipass support without WDS"
This reverts commit Iaafa8dc4f16314d9e3e160fe01251c3684adbf67. Change-Id: I3e6ec2b2c018c9fc6d0dcdbf9a580c93e23b0458 CRs-Fixed: 3478331
This commit is contained in:

committed by
Madan Koyyalamudi

parent
6f3d208ec8
commit
8d8312ddf7
@@ -12653,75 +12653,3 @@ void dp_destroy_direct_link_refill_ring(struct cdp_soc_t *soc_hdl,
|
||||
dp_srng_free(soc, &pdev->rx_refill_buf_ring4);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef QCA_MULTIPASS_SUPPORT
|
||||
QDF_STATUS dp_set_vlan_groupkey(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||
uint16_t vlan_id, uint16_t group_key)
|
||||
{
|
||||
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
||||
struct dp_vdev *vdev = dp_vdev_get_ref_by_id(soc, vdev_id,
|
||||
DP_MOD_ID_TX_MULTIPASS);
|
||||
QDF_STATUS status;
|
||||
|
||||
if (!vdev || !vdev->multipass_en) {
|
||||
status = QDF_STATUS_E_INVAL;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
if (!vdev->iv_vlan_map) {
|
||||
uint16_t vlan_map_size = (sizeof(uint16_t)) * DP_MAX_VLAN_IDS;
|
||||
|
||||
vdev->iv_vlan_map = (uint16_t *)qdf_mem_malloc(vlan_map_size);
|
||||
if (!vdev->iv_vlan_map) {
|
||||
QDF_TRACE_ERROR(QDF_MODULE_ID_DP, "iv_vlan_map");
|
||||
status = QDF_STATUS_E_NOMEM;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
/*
|
||||
* 0 is invalid group key.
|
||||
* Initilalize array with invalid group keys.
|
||||
*/
|
||||
qdf_mem_zero(vdev->iv_vlan_map, vlan_map_size);
|
||||
}
|
||||
|
||||
if (vlan_id >= DP_MAX_VLAN_IDS) {
|
||||
status = QDF_STATUS_E_INVAL;
|
||||
goto fail;
|
||||
}
|
||||
|
||||
vdev->iv_vlan_map[vlan_id] = group_key;
|
||||
status = QDF_STATUS_SUCCESS;
|
||||
fail:
|
||||
if (vdev)
|
||||
dp_vdev_unref_delete(soc, vdev, DP_MOD_ID_TX_MULTIPASS);
|
||||
return status;
|
||||
}
|
||||
|
||||
void dp_tx_vdev_multipass_deinit(struct dp_vdev *vdev)
|
||||
{
|
||||
struct dp_txrx_peer *txrx_peer = NULL;
|
||||
|
||||
qdf_spin_lock_bh(&vdev->mpass_peer_mutex);
|
||||
TAILQ_FOREACH(txrx_peer, &vdev->mpass_peer_list, mpass_peer_list_elem)
|
||||
qdf_err("Peers present in mpass list : %d", txrx_peer->peer_id);
|
||||
qdf_spin_unlock_bh(&vdev->mpass_peer_mutex);
|
||||
|
||||
if (vdev->iv_vlan_map) {
|
||||
qdf_mem_free(vdev->iv_vlan_map);
|
||||
vdev->iv_vlan_map = NULL;
|
||||
}
|
||||
|
||||
qdf_spinlock_destroy(&vdev->mpass_peer_mutex);
|
||||
}
|
||||
|
||||
void dp_peer_multipass_list_init(struct dp_vdev *vdev)
|
||||
{
|
||||
/*
|
||||
* vdev->iv_vlan_map is allocated when the first configuration command
|
||||
* is issued to avoid unnecessary allocation for regular mode VAP.
|
||||
*/
|
||||
TAILQ_INIT(&vdev->mpass_peer_list);
|
||||
qdf_spinlock_create(&vdev->mpass_peer_mutex);
|
||||
}
|
||||
#endif /* QCA_MULTIPASS_SUPPORT */
|
||||
|
Reference in New Issue
Block a user