qcacmn: store peer_id instead of peer_ids array in dp_peer
In lithium a peer will have only single peer_id hence remove peer_ids array from dp_peer structure Change-Id: Ib98270b7fd98f1199b862e4608f990687914b7cc
This commit is contained in:

committed by
nshrivas

parent
b404458d20
commit
1d144f88bd
@@ -859,7 +859,7 @@ static bool dp_peer_get_ast_info_by_soc_wifi3
|
|||||||
ast_entry_info->type = ast_entry->type;
|
ast_entry_info->type = ast_entry->type;
|
||||||
ast_entry_info->pdev_id = ast_entry->pdev_id;
|
ast_entry_info->pdev_id = ast_entry->pdev_id;
|
||||||
ast_entry_info->vdev_id = ast_entry->peer->vdev->vdev_id;
|
ast_entry_info->vdev_id = ast_entry->peer->vdev->vdev_id;
|
||||||
ast_entry_info->peer_id = ast_entry->peer->peer_ids[0];
|
ast_entry_info->peer_id = ast_entry->peer->peer_id;
|
||||||
qdf_mem_copy(&ast_entry_info->peer_mac_addr[0],
|
qdf_mem_copy(&ast_entry_info->peer_mac_addr[0],
|
||||||
&ast_entry->peer->mac_addr.raw[0],
|
&ast_entry->peer->mac_addr.raw[0],
|
||||||
QDF_MAC_ADDR_SIZE);
|
QDF_MAC_ADDR_SIZE);
|
||||||
@@ -904,7 +904,7 @@ static bool dp_peer_get_ast_info_by_pdevid_wifi3
|
|||||||
ast_entry_info->type = ast_entry->type;
|
ast_entry_info->type = ast_entry->type;
|
||||||
ast_entry_info->pdev_id = ast_entry->pdev_id;
|
ast_entry_info->pdev_id = ast_entry->pdev_id;
|
||||||
ast_entry_info->vdev_id = ast_entry->peer->vdev->vdev_id;
|
ast_entry_info->vdev_id = ast_entry->peer->vdev->vdev_id;
|
||||||
ast_entry_info->peer_id = ast_entry->peer->peer_ids[0];
|
ast_entry_info->peer_id = ast_entry->peer->peer_id;
|
||||||
qdf_mem_copy(&ast_entry_info->peer_mac_addr[0],
|
qdf_mem_copy(&ast_entry_info->peer_mac_addr[0],
|
||||||
&ast_entry->peer->mac_addr.raw[0],
|
&ast_entry->peer->mac_addr.raw[0],
|
||||||
QDF_MAC_ADDR_SIZE);
|
QDF_MAC_ADDR_SIZE);
|
||||||
@@ -1236,7 +1236,7 @@ void dp_print_ast_stats(struct dp_soc *soc)
|
|||||||
++num_entries,
|
++num_entries,
|
||||||
ase->mac_addr.raw,
|
ase->mac_addr.raw,
|
||||||
ase->peer->mac_addr.raw,
|
ase->peer->mac_addr.raw,
|
||||||
ase->peer->peer_ids[0],
|
ase->peer->peer_id,
|
||||||
type[ase->type],
|
type[ase->type],
|
||||||
ase->next_hop,
|
ase->next_hop,
|
||||||
ase->is_active,
|
ase->is_active,
|
||||||
@@ -1291,7 +1291,7 @@ static void dp_print_peer_table(struct dp_vdev *vdev)
|
|||||||
peer->tx_cap_enabled,
|
peer->tx_cap_enabled,
|
||||||
peer->rx_cap_enabled,
|
peer->rx_cap_enabled,
|
||||||
peer->delete_in_progress,
|
peer->delete_in_progress,
|
||||||
peer->peer_ids[0]);
|
peer->peer_id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4859,7 +4859,7 @@ static void dp_vdev_flush_peers(struct cdp_vdev *vdev_handle, bool unmap_only)
|
|||||||
uint8_t i = 0, j = 0;
|
uint8_t i = 0, j = 0;
|
||||||
uint8_t m = 0, n = 0;
|
uint8_t m = 0, n = 0;
|
||||||
|
|
||||||
peer_ids = qdf_mem_malloc(soc->max_peers * sizeof(peer_ids[0]));
|
peer_ids = qdf_mem_malloc(soc->max_peers * sizeof(*peer_ids));
|
||||||
if (!peer_ids) {
|
if (!peer_ids) {
|
||||||
dp_err("DP alloc failure - unable to flush peers");
|
dp_err("DP alloc failure - unable to flush peers");
|
||||||
return;
|
return;
|
||||||
@@ -4880,10 +4880,9 @@ static void dp_vdev_flush_peers(struct cdp_vdev *vdev_handle, bool unmap_only)
|
|||||||
if (!unmap_only && n < soc->max_peers)
|
if (!unmap_only && n < soc->max_peers)
|
||||||
peer_array[n++] = peer;
|
peer_array[n++] = peer;
|
||||||
|
|
||||||
for (i = 0; i < MAX_NUM_PEER_ID_PER_PEER; i++)
|
if (peer->peer_id != HTT_INVALID_PEER)
|
||||||
if (peer->peer_ids[i] != HTT_INVALID_PEER)
|
|
||||||
if (j < soc->max_peers)
|
if (j < soc->max_peers)
|
||||||
peer_ids[j++] = peer->peer_ids[i];
|
peer_ids[j++] = peer->peer_id;
|
||||||
}
|
}
|
||||||
qdf_spin_unlock_bh(&soc->peer_ref_mutex);
|
qdf_spin_unlock_bh(&soc->peer_ref_mutex);
|
||||||
|
|
||||||
@@ -5274,8 +5273,7 @@ dp_peer_create_wifi3(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
|||||||
&peer->mac_addr.raw[0], peer_mac_addr, QDF_MAC_ADDR_SIZE);
|
&peer->mac_addr.raw[0], peer_mac_addr, QDF_MAC_ADDR_SIZE);
|
||||||
|
|
||||||
/* initialize the peer_id */
|
/* initialize the peer_id */
|
||||||
for (i = 0; i < MAX_NUM_PEER_ID_PER_PEER; i++)
|
peer->peer_id = HTT_INVALID_PEER;
|
||||||
peer->peer_ids[i] = HTT_INVALID_PEER;
|
|
||||||
|
|
||||||
/* reset the ast index to flowid table */
|
/* reset the ast index to flowid table */
|
||||||
dp_peer_reset_flowq_map(peer);
|
dp_peer_reset_flowq_map(peer);
|
||||||
@@ -5337,7 +5335,7 @@ dp_peer_create_wifi3(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
|||||||
#if defined(FEATURE_PERPKT_INFO) && WDI_EVENT_ENABLE
|
#if defined(FEATURE_PERPKT_INFO) && WDI_EVENT_ENABLE
|
||||||
dp_wdi_event_handler(WDI_EVENT_PEER_CREATE, pdev->soc,
|
dp_wdi_event_handler(WDI_EVENT_PEER_CREATE, pdev->soc,
|
||||||
(void *)&peer_cookie,
|
(void *)&peer_cookie,
|
||||||
peer->peer_ids[0], WDI_NO_VAL, pdev->pdev_id);
|
peer->peer_id, WDI_NO_VAL, pdev->pdev_id);
|
||||||
#endif
|
#endif
|
||||||
if (soc->wlanstats_enabled) {
|
if (soc->wlanstats_enabled) {
|
||||||
if (!peer_cookie.ctx) {
|
if (!peer_cookie.ctx) {
|
||||||
@@ -6021,7 +6019,7 @@ void dp_peer_unref_delete(struct dp_peer *peer)
|
|||||||
*/
|
*/
|
||||||
qdf_spin_lock_bh(&soc->peer_ref_mutex);
|
qdf_spin_lock_bh(&soc->peer_ref_mutex);
|
||||||
if (qdf_atomic_dec_and_test(&peer->ref_cnt)) {
|
if (qdf_atomic_dec_and_test(&peer->ref_cnt)) {
|
||||||
peer_id = peer->peer_ids[0];
|
peer_id = peer->peer_id;
|
||||||
vdev_id = vdev->vdev_id;
|
vdev_id = vdev->vdev_id;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -6070,7 +6068,7 @@ void dp_peer_unref_delete(struct dp_peer *peer)
|
|||||||
dp_wdi_event_handler(WDI_EVENT_PEER_DESTROY,
|
dp_wdi_event_handler(WDI_EVENT_PEER_DESTROY,
|
||||||
pdev->soc,
|
pdev->soc,
|
||||||
(void *)&peer_cookie,
|
(void *)&peer_cookie,
|
||||||
peer->peer_ids[0],
|
peer->peer_id,
|
||||||
WDI_NO_VAL,
|
WDI_NO_VAL,
|
||||||
pdev->pdev_id);
|
pdev->pdev_id);
|
||||||
#endif
|
#endif
|
||||||
@@ -7066,7 +7064,7 @@ dp_txrx_host_stats_clr(struct dp_vdev *vdev)
|
|||||||
|
|
||||||
#if defined(FEATURE_PERPKT_INFO) && WDI_EVENT_ENABLE
|
#if defined(FEATURE_PERPKT_INFO) && WDI_EVENT_ENABLE
|
||||||
dp_wdi_event_handler(WDI_EVENT_UPDATE_DP_STATS, vdev->pdev->soc,
|
dp_wdi_event_handler(WDI_EVENT_UPDATE_DP_STATS, vdev->pdev->soc,
|
||||||
&peer->stats, peer->peer_ids[0],
|
&peer->stats, peer->peer_id,
|
||||||
UPDATE_PEER_STATS, vdev->pdev->pdev_id);
|
UPDATE_PEER_STATS, vdev->pdev->pdev_id);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -9421,7 +9419,7 @@ static QDF_STATUS dp_flush_rate_stats_req(struct cdp_soc_t *soc_hdl,
|
|||||||
dp_wdi_event_handler(
|
dp_wdi_event_handler(
|
||||||
WDI_EVENT_FLUSH_RATE_STATS_REQ,
|
WDI_EVENT_FLUSH_RATE_STATS_REQ,
|
||||||
soc, peer->wlanstats_ctx,
|
soc, peer->wlanstats_ctx,
|
||||||
peer->peer_ids[0],
|
peer->peer_id,
|
||||||
WDI_NO_VAL, pdev_id);
|
WDI_NO_VAL, pdev_id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -152,14 +152,11 @@ static int dp_peer_find_add_id_to_obj(
|
|||||||
struct dp_peer *peer,
|
struct dp_peer *peer,
|
||||||
uint16_t peer_id)
|
uint16_t peer_id)
|
||||||
{
|
{
|
||||||
int i;
|
|
||||||
|
|
||||||
for (i = 0; i < MAX_NUM_PEER_ID_PER_PEER; i++) {
|
if (peer->peer_id == HTT_INVALID_PEER) {
|
||||||
if (peer->peer_ids[i] == HTT_INVALID_PEER) {
|
peer->peer_id = peer_id;
|
||||||
peer->peer_ids[i] = peer_id;
|
|
||||||
return 0; /* success */
|
return 0; /* success */
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return QDF_STATUS_E_FAILURE; /* failure */
|
return QDF_STATUS_E_FAILURE; /* failure */
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -533,7 +530,7 @@ static inline void dp_peer_map_ast(struct dp_soc *soc,
|
|||||||
if (ast_entry || (peer->vdev && peer->vdev->proxysta_vdev)) {
|
if (ast_entry || (peer->vdev && peer->vdev->proxysta_vdev)) {
|
||||||
if (soc->cdp_soc.ol_ops->peer_map_event) {
|
if (soc->cdp_soc.ol_ops->peer_map_event) {
|
||||||
soc->cdp_soc.ol_ops->peer_map_event(
|
soc->cdp_soc.ol_ops->peer_map_event(
|
||||||
soc->ctrl_psoc, peer->peer_ids[0],
|
soc->ctrl_psoc, peer->peer_id,
|
||||||
hw_peer_id, vdev_id,
|
hw_peer_id, vdev_id,
|
||||||
mac_addr, peer_type, ast_hash);
|
mac_addr, peer_type, ast_hash);
|
||||||
}
|
}
|
||||||
@@ -849,7 +846,7 @@ add_ast_entry:
|
|||||||
soc->ctrl_psoc,
|
soc->ctrl_psoc,
|
||||||
peer->vdev->vdev_id,
|
peer->vdev->vdev_id,
|
||||||
peer->mac_addr.raw,
|
peer->mac_addr.raw,
|
||||||
peer->peer_ids[0],
|
peer->peer_id,
|
||||||
mac_addr,
|
mac_addr,
|
||||||
next_node_mac,
|
next_node_mac,
|
||||||
flags,
|
flags,
|
||||||
@@ -1607,7 +1604,7 @@ static inline struct dp_peer *dp_peer_find_add_id(struct dp_soc *soc,
|
|||||||
/* TBDXXX: assert for now */
|
/* TBDXXX: assert for now */
|
||||||
QDF_ASSERT(0);
|
QDF_ASSERT(0);
|
||||||
} else {
|
} else {
|
||||||
dp_peer_tid_peer_id_update(peer, peer->peer_ids[0]);
|
dp_peer_tid_peer_id_update(peer, peer->peer_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
return peer;
|
return peer;
|
||||||
@@ -1668,7 +1665,7 @@ dp_rx_peer_map_handler(struct dp_soc *soc, uint16_t peer_id,
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
dp_alert("AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u",
|
dp_alert("AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u",
|
||||||
peer, peer->peer_ids[0],
|
peer, peer->peer_id,
|
||||||
peer->mac_addr.raw, peer_mac_addr, vdev_id,
|
peer->mac_addr.raw, peer_mac_addr, vdev_id,
|
||||||
is_wds);
|
is_wds);
|
||||||
|
|
||||||
@@ -1750,7 +1747,6 @@ dp_rx_peer_unmap_handler(struct dp_soc *soc, uint16_t peer_id,
|
|||||||
uint8_t is_wds, uint32_t free_wds_count)
|
uint8_t is_wds, uint32_t free_wds_count)
|
||||||
{
|
{
|
||||||
struct dp_peer *peer;
|
struct dp_peer *peer;
|
||||||
uint8_t i;
|
|
||||||
|
|
||||||
peer = __dp_peer_find_by_id(soc, peer_id);
|
peer = __dp_peer_find_by_id(soc, peer_id);
|
||||||
|
|
||||||
@@ -1771,7 +1767,7 @@ dp_rx_peer_unmap_handler(struct dp_soc *soc, uint16_t peer_id,
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
dp_alert("AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u",
|
dp_alert("AST entry not found with peer %pK peer_id %u peer_mac %pM mac_addr %pM vdev_id %u next_hop %u",
|
||||||
peer, peer->peer_ids[0],
|
peer, peer->peer_id,
|
||||||
peer->mac_addr.raw, mac_addr, vdev_id,
|
peer->mac_addr.raw, mac_addr, vdev_id,
|
||||||
is_wds);
|
is_wds);
|
||||||
|
|
||||||
@@ -1784,12 +1780,7 @@ dp_rx_peer_unmap_handler(struct dp_soc *soc, uint16_t peer_id,
|
|||||||
soc, peer_id, peer);
|
soc, peer_id, peer);
|
||||||
|
|
||||||
soc->peer_id_to_obj_map[peer_id] = NULL;
|
soc->peer_id_to_obj_map[peer_id] = NULL;
|
||||||
for (i = 0; i < MAX_NUM_PEER_ID_PER_PEER; i++) {
|
peer->peer_id = HTT_INVALID_PEER;
|
||||||
if (peer->peer_ids[i] == peer_id) {
|
|
||||||
peer->peer_ids[i] = HTT_INVALID_PEER;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Reset ast flow mapping table
|
* Reset ast flow mapping table
|
||||||
|
@@ -1647,7 +1647,7 @@ static void dp_rx_msdu_stats_update(struct dp_soc *soc,
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
dp_wdi_event_handler(WDI_EVENT_UPDATE_DP_STATS, vdev->pdev->soc,
|
dp_wdi_event_handler(WDI_EVENT_UPDATE_DP_STATS, vdev->pdev->soc,
|
||||||
&peer->stats, peer->peer_ids[0],
|
&peer->stats, peer->peer_id,
|
||||||
UPDATE_PEER_STATS,
|
UPDATE_PEER_STATS,
|
||||||
vdev->pdev->pdev_id);
|
vdev->pdev->pdev_id);
|
||||||
#endif
|
#endif
|
||||||
|
@@ -212,7 +212,7 @@ void dp_rx_defrag_waitlist_flush(struct dp_soc *soc)
|
|||||||
rx_tid[rx_reorder->tid]);
|
rx_tid[rx_reorder->tid]);
|
||||||
qdf_spin_unlock_bh(&rx_reorder->tid_lock);
|
qdf_spin_unlock_bh(&rx_reorder->tid_lock);
|
||||||
|
|
||||||
temp_peer = dp_peer_find_by_id(soc, peer->peer_ids[0]);
|
temp_peer = dp_peer_find_by_id(soc, peer->peer_id);
|
||||||
if (temp_peer == peer) {
|
if (temp_peer == peer) {
|
||||||
qdf_spin_lock_bh(&rx_reorder->tid_lock);
|
qdf_spin_lock_bh(&rx_reorder->tid_lock);
|
||||||
dp_rx_reorder_flush_frag(peer, rx_reorder->tid);
|
dp_rx_reorder_flush_frag(peer, rx_reorder->tid);
|
||||||
@@ -1781,7 +1781,7 @@ QDF_STATUS dp_rx_defrag_add_last_frag(struct dp_soc *soc,
|
|||||||
if (!rx_reorder_array_elem) {
|
if (!rx_reorder_array_elem) {
|
||||||
dp_verbose_debug(
|
dp_verbose_debug(
|
||||||
"peer id:%d mac: %pM drop rx frame!",
|
"peer id:%d mac: %pM drop rx frame!",
|
||||||
peer->peer_ids[0],
|
peer->peer_id,
|
||||||
peer->mac_addr.raw);
|
peer->mac_addr.raw);
|
||||||
DP_STATS_INC(soc, rx.err.defrag_peer_uninit, 1);
|
DP_STATS_INC(soc, rx.err.defrag_peer_uninit, 1);
|
||||||
qdf_nbuf_free(nbuf);
|
qdf_nbuf_free(nbuf);
|
||||||
|
@@ -224,7 +224,7 @@ dp_rx_populate_cdp_indication_ppdu_user(struct dp_pdev *pdev,
|
|||||||
}
|
}
|
||||||
|
|
||||||
peer = ast_entry->peer;
|
peer = ast_entry->peer;
|
||||||
if (!peer || peer->peer_ids[0] == HTT_INVALID_PEER) {
|
if (!peer || peer->peer_id == HTT_INVALID_PEER) {
|
||||||
rx_stats_peruser->peer_id = HTT_INVALID_PEER;
|
rx_stats_peruser->peer_id = HTT_INVALID_PEER;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -279,7 +279,7 @@ dp_rx_populate_cdp_indication_ppdu_user(struct dp_pdev *pdev,
|
|||||||
|
|
||||||
qdf_mem_copy(rx_stats_peruser->mac_addr,
|
qdf_mem_copy(rx_stats_peruser->mac_addr,
|
||||||
peer->mac_addr.raw, QDF_MAC_ADDR_SIZE);
|
peer->mac_addr.raw, QDF_MAC_ADDR_SIZE);
|
||||||
rx_stats_peruser->peer_id = peer->peer_ids[0];
|
rx_stats_peruser->peer_id = peer->peer_id;
|
||||||
cdp_rx_ppdu->vdev_id = peer->vdev->vdev_id;
|
cdp_rx_ppdu->vdev_id = peer->vdev->vdev_id;
|
||||||
rx_stats_peruser->vdev_id = peer->vdev->vdev_id;
|
rx_stats_peruser->vdev_id = peer->vdev->vdev_id;
|
||||||
rx_stats_peruser->mu_ul_info_valid = 0;
|
rx_stats_peruser->mu_ul_info_valid = 0;
|
||||||
@@ -376,7 +376,7 @@ dp_rx_populate_cdp_indication_ppdu(struct dp_pdev *pdev,
|
|||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
peer = ast_entry->peer;
|
peer = ast_entry->peer;
|
||||||
if (!peer || peer->peer_ids[0] == HTT_INVALID_PEER) {
|
if (!peer || peer->peer_id == HTT_INVALID_PEER) {
|
||||||
cdp_rx_ppdu->peer_id = HTT_INVALID_PEER;
|
cdp_rx_ppdu->peer_id = HTT_INVALID_PEER;
|
||||||
cdp_rx_ppdu->num_users = 0;
|
cdp_rx_ppdu->num_users = 0;
|
||||||
goto end;
|
goto end;
|
||||||
@@ -384,7 +384,7 @@ dp_rx_populate_cdp_indication_ppdu(struct dp_pdev *pdev,
|
|||||||
|
|
||||||
qdf_mem_copy(cdp_rx_ppdu->mac_addr,
|
qdf_mem_copy(cdp_rx_ppdu->mac_addr,
|
||||||
peer->mac_addr.raw, QDF_MAC_ADDR_SIZE);
|
peer->mac_addr.raw, QDF_MAC_ADDR_SIZE);
|
||||||
cdp_rx_ppdu->peer_id = peer->peer_ids[0];
|
cdp_rx_ppdu->peer_id = peer->peer_id;
|
||||||
cdp_rx_ppdu->vdev_id = peer->vdev->vdev_id;
|
cdp_rx_ppdu->vdev_id = peer->vdev->vdev_id;
|
||||||
|
|
||||||
cdp_rx_ppdu->ppdu_id = ppdu_info->com_info.ppdu_id;
|
cdp_rx_ppdu->ppdu_id = ppdu_info->com_info.ppdu_id;
|
||||||
@@ -1080,7 +1080,7 @@ dp_rx_mon_handle_cfr_mu_info(struct dp_pdev *pdev,
|
|||||||
}
|
}
|
||||||
|
|
||||||
peer = ast_entry->peer;
|
peer = ast_entry->peer;
|
||||||
if (!peer || peer->peer_ids[0] == HTT_INVALID_PEER) {
|
if (!peer || peer->peer_id == HTT_INVALID_PEER) {
|
||||||
rx_stats_peruser->peer_id = HTT_INVALID_PEER;
|
rx_stats_peruser->peer_id = HTT_INVALID_PEER;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1456,12 +1456,12 @@ dp_rx_process_peer_based_pktlog(struct dp_soc *soc,
|
|||||||
ast_entry = soc->ast_table[ast_index];
|
ast_entry = soc->ast_table[ast_index];
|
||||||
if (ast_entry) {
|
if (ast_entry) {
|
||||||
peer = ast_entry->peer;
|
peer = ast_entry->peer;
|
||||||
if (peer && (peer->peer_ids[0] != HTT_INVALID_PEER)) {
|
if (peer && (peer->peer_id != HTT_INVALID_PEER)) {
|
||||||
if (peer->peer_based_pktlog_filter) {
|
if (peer->peer_based_pktlog_filter) {
|
||||||
dp_wdi_event_handler(
|
dp_wdi_event_handler(
|
||||||
WDI_EVENT_RX_DESC, soc,
|
WDI_EVENT_RX_DESC, soc,
|
||||||
status_nbuf,
|
status_nbuf,
|
||||||
peer->peer_ids[0],
|
peer->peer_id,
|
||||||
WDI_NO_VAL, mac_id);
|
WDI_NO_VAL, mac_id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1662,8 +1662,8 @@ int dp_tx_frame_is_drop(struct dp_vdev *vdev, uint8_t *srcmac, uint8_t *dstmac)
|
|||||||
src_ast_entry = dp_peer_ast_hash_find_by_pdevid
|
src_ast_entry = dp_peer_ast_hash_find_by_pdevid
|
||||||
(soc, srcmac, vdev->pdev->pdev_id);
|
(soc, srcmac, vdev->pdev->pdev_id);
|
||||||
if (dst_ast_entry && src_ast_entry) {
|
if (dst_ast_entry && src_ast_entry) {
|
||||||
if (dst_ast_entry->peer->peer_ids[0] ==
|
if (dst_ast_entry->peer->peer_id ==
|
||||||
src_ast_entry->peer->peer_ids[0])
|
src_ast_entry->peer->peer_id)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2396,7 +2396,7 @@ void dp_tx_nawds_handler(struct cdp_soc_t *soc, struct dp_vdev *vdev,
|
|||||||
qdf_spin_lock_bh(&dp_soc->peer_ref_mutex);
|
qdf_spin_lock_bh(&dp_soc->peer_ref_mutex);
|
||||||
TAILQ_FOREACH(peer, &vdev->peer_list, peer_list_elem) {
|
TAILQ_FOREACH(peer, &vdev->peer_list, peer_list_elem) {
|
||||||
if (!peer->bss_peer && peer->nawds_enabled) {
|
if (!peer->bss_peer && peer->nawds_enabled) {
|
||||||
peer_id = peer->peer_ids[0];
|
peer_id = peer->peer_id;
|
||||||
/* Multicast packets needs to be
|
/* Multicast packets needs to be
|
||||||
* dropped in case of intra bss forwarding
|
* dropped in case of intra bss forwarding
|
||||||
*/
|
*/
|
||||||
@@ -2676,7 +2676,7 @@ void dp_tx_reinject_handler(struct dp_tx_desc_s *tx_desc, uint8_t *status)
|
|||||||
DP_TX_FREE_SINGLE_BUF(vdev->pdev->soc, tx_desc->nbuf);
|
DP_TX_FREE_SINGLE_BUF(vdev->pdev->soc, tx_desc->nbuf);
|
||||||
} else {
|
} else {
|
||||||
TAILQ_FOREACH(peer, &vdev->peer_list, peer_list_elem) {
|
TAILQ_FOREACH(peer, &vdev->peer_list, peer_list_elem) {
|
||||||
if ((peer->peer_ids[0] != HTT_INVALID_PEER) &&
|
if ((peer->peer_id != HTT_INVALID_PEER) &&
|
||||||
#ifdef WDS_VENDOR_EXTENSION
|
#ifdef WDS_VENDOR_EXTENSION
|
||||||
/*
|
/*
|
||||||
* . if 3-addr STA, then send on BSS Peer
|
* . if 3-addr STA, then send on BSS Peer
|
||||||
|
@@ -2208,9 +2208,8 @@ struct dp_peer {
|
|||||||
|
|
||||||
qdf_atomic_t ref_cnt;
|
qdf_atomic_t ref_cnt;
|
||||||
|
|
||||||
/* TODO: See if multiple peer IDs are required in wifi3.0 */
|
/* peer ID for this peer */
|
||||||
/* peer ID(s) for this peer */
|
uint16_t peer_id;
|
||||||
uint16_t peer_ids[MAX_NUM_PEER_ID_PER_PEER];
|
|
||||||
|
|
||||||
union dp_align_mac_addr mac_addr;
|
union dp_align_mac_addr mac_addr;
|
||||||
|
|
||||||
|
@@ -75,7 +75,6 @@
|
|||||||
#define MAX_IDLE_SCATTER_BUFS 16
|
#define MAX_IDLE_SCATTER_BUFS 16
|
||||||
#define DP_MAX_IRQ_PER_CONTEXT 12
|
#define DP_MAX_IRQ_PER_CONTEXT 12
|
||||||
#define MAX_HTT_METADATA_LEN 32
|
#define MAX_HTT_METADATA_LEN 32
|
||||||
#define MAX_NUM_PEER_ID_PER_PEER 8
|
|
||||||
#define DP_MAX_TIDS 17
|
#define DP_MAX_TIDS 17
|
||||||
#define DP_NON_QOS_TID 16
|
#define DP_NON_QOS_TID 16
|
||||||
#define DP_NULL_DATA_TID 17
|
#define DP_NULL_DATA_TID 17
|
||||||
|
Reference in New Issue
Block a user