Lines Matching refs:peer
126 void ol_rx_data_process(struct ol_txrx_peer_t *peer,
141 struct ol_txrx_peer_t *peer, qdf_nbuf_t msdu, uint8_t pktlog_bit) in ol_rx_send_pktlog_event() argument
154 if (peer) in ol_rx_send_pktlog_event()
155 data.mac_id = peer->vdev->mac_id; in ol_rx_send_pktlog_event()
164 struct ol_txrx_peer_t *peer, qdf_nbuf_t msdu, uint8_t pktlog_bit) in ol_rx_send_pktlog_event() argument
177 if (peer) in ol_rx_send_pktlog_event()
178 data.mac_id = peer->vdev->mac_id; in ol_rx_send_pktlog_event()
341 ol_rx_ind_rssi_update(struct ol_txrx_peer_t *peer, qdf_nbuf_t rx_ind_msg) in ol_rx_ind_rssi_update() argument
343 struct ol_txrx_pdev_t *pdev = peer->vdev->pdev; in ol_rx_ind_rssi_update()
345 peer->rssi_dbm = ol_rx_rssi_avg(pdev, peer->rssi_dbm, in ol_rx_ind_rssi_update()
351 ol_rx_mpdu_rssi_update(struct ol_txrx_peer_t *peer, void *rx_mpdu_desc) in ol_rx_mpdu_rssi_update() argument
353 struct ol_txrx_pdev_t *pdev = peer->vdev->pdev; in ol_rx_mpdu_rssi_update()
355 if (!peer) in ol_rx_mpdu_rssi_update()
357 peer->rssi_dbm = ol_rx_rssi_avg(pdev, peer->rssi_dbm, in ol_rx_mpdu_rssi_update()
364 #define ol_rx_ind_rssi_update(peer, rx_ind_msg) /* no-op */ argument
365 #define ol_rx_mpdu_rssi_update(peer, rx_mpdu_desc) /* no-op */ argument
408 struct ol_txrx_peer_t *peer, in process_reorder() argument
426 ol_rx_mpdu_rssi_update(peer, rx_mpdu_desc); in process_reorder()
445 peer, in process_reorder()
475 ol_rx_reorder_store(pdev, peer, tid, in process_reorder()
477 if (peer->tids_rx_reorder[tid].win_sz_mask == 0) { in process_reorder()
478 peer->tids_last_seq[tid] = htt_rx_mpdu_desc_seq_num( in process_reorder()
488 struct ol_txrx_peer_t *peer) in ol_rx_ocb_update_peer() argument
493 &peer->last_pkt_legacy_rate, in ol_rx_ocb_update_peer()
494 &peer->last_pkt_legacy_rate_sel); in ol_rx_ocb_update_peer()
495 peer->last_pkt_rssi_cmb = htt_rx_ind_rssi_dbm( in ol_rx_ocb_update_peer()
498 peer->last_pkt_rssi[i] = in ol_rx_ocb_update_peer()
502 &peer->last_pkt_timestamp_microsec, in ol_rx_ocb_update_peer()
503 &peer->last_pkt_timestamp_submicrosec); in ol_rx_ocb_update_peer()
504 peer->last_pkt_tsf = htt_rx_ind_tsf32(pdev->htt_pdev, rx_ind_msg); in ol_rx_ocb_update_peer()
505 peer->last_pkt_tid = htt_rx_ind_ext_tid(pdev->htt_pdev, rx_ind_msg); in ol_rx_ocb_update_peer()
510 struct ol_txrx_peer_t *peer) in ol_rx_ocb_update_peer() argument
524 struct ol_txrx_peer_t *peer; in ol_rx_indication_handler() local
534 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_indication_handler()
535 if (!peer) { in ol_rx_indication_handler()
540 if (!ol_txrx_get_ocb_peer(pdev, &peer)) in ol_rx_indication_handler()
541 peer = NULL; in ol_rx_indication_handler()
544 if (peer) { in ol_rx_indication_handler()
545 vdev = peer->vdev; in ol_rx_indication_handler()
546 ol_rx_ind_rssi_update(peer, rx_ind_msg); in ol_rx_indication_handler()
549 ol_rx_ocb_update_peer(pdev, rx_ind_msg, peer); in ol_rx_indication_handler()
556 if (htt_rx_ind_flush(pdev->htt_pdev, rx_ind_msg) && peer) { in ol_rx_indication_handler()
566 ol_rx_reorder_peer_cleanup(vdev, peer); in ol_rx_indication_handler()
573 ol_rx_reorder_flush(vdev, peer, tid, seq_num_start, in ol_rx_indication_handler()
606 if ((status == htt_rx_status_ok) && peer) { in ol_rx_indication_handler()
657 ret = htt_rx_msdu_center_freq(htt_pdev, peer, in ol_rx_indication_handler()
661 peer->last_pkt_center_freq = in ol_rx_indication_handler()
664 peer->last_pkt_center_freq = 0; in ol_rx_indication_handler()
668 ol_rx_send_pktlog_event(pdev, peer, in ol_rx_indication_handler()
684 tid, peer, in ol_rx_indication_handler()
716 OL_RX_ERR_STATISTICS_2(pdev, vdev, peer, in ol_rx_indication_handler()
721 vdev && peer) { in ol_rx_indication_handler()
739 peer->mac_addr.raw, in ol_rx_indication_handler()
750 peer, msdu, 1); in ol_rx_indication_handler()
784 if ((true == rx_ind_release) && peer && vdev) { in ol_rx_indication_handler()
785 ol_rx_reorder_release(vdev, peer, tid, seq_num_start, in ol_rx_indication_handler()
788 OL_RX_REORDER_TIMEOUT_UPDATE(peer, tid); in ol_rx_indication_handler()
802 struct ol_txrx_peer_t *peer; in ol_rx_sec_ind_handler() local
805 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_sec_ind_handler()
806 if (!peer) { in ol_rx_sec_ind_handler()
814 peer, in ol_rx_sec_ind_handler()
815 QDF_MAC_ADDR_REF(peer->mac_addr.raw), in ol_rx_sec_ind_handler()
818 peer->security[sec_index].sec_type = sec_type; in ol_rx_sec_ind_handler()
823 qdf_mem_copy(&peer->security[sec_index].michael_key[0], in ol_rx_sec_ind_handler()
825 sizeof(peer->security[sec_index].michael_key)); in ol_rx_sec_ind_handler()
828 qdf_mem_zero(peer->tids_last_pn_valid, in ol_rx_sec_ind_handler()
830 } else if (sec_index == txrx_sec_mcast || peer->tids_last_pn_valid[0]) { in ol_rx_sec_ind_handler()
836 peer->tids_last_pn_valid[i] = 1; in ol_rx_sec_ind_handler()
837 qdf_mem_copy((uint8_t *) &peer->tids_last_pn[i], in ol_rx_sec_ind_handler()
840 peer->tids_last_pn[i].pn128[1] = in ol_rx_sec_ind_handler()
842 peer->tids_last_pn[i].pn128[1]); in ol_rx_sec_ind_handler()
843 peer->tids_last_pn[i].pn128[0] = in ol_rx_sec_ind_handler()
845 peer->tids_last_pn[i].pn128[0]); in ol_rx_sec_ind_handler()
847 peer->tids_rekey_flag[i] = 1; in ol_rx_sec_ind_handler()
884 struct ol_txrx_peer_t *peer, in ol_rx_inspect() argument
906 peer->mac_addr.raw, in ol_rx_inspect()
922 struct ol_txrx_peer_t *peer; in ol_rx_offload_deliver_ind_handler() local
938 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_offload_deliver_ind_handler()
939 if (peer) { in ol_rx_offload_deliver_ind_handler()
940 ol_rx_data_process(peer, head_buf); in ol_rx_offload_deliver_ind_handler()
1007 struct ol_txrx_peer_t *peer = NULL; in ol_rx_mic_error_handler() local
1012 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_mic_error_handler()
1013 if (peer) { in ol_rx_mic_error_handler()
1014 vdev = peer->vdev; in ol_rx_mic_error_handler()
1024 peer->mac_addr.raw, tid, 0, in ol_rx_mic_error_handler()
1031 ol_rx_send_pktlog_event(pdev, peer, msdu, 1); in ol_rx_mic_error_handler()
1041 struct ol_txrx_peer_t *peer, qdf_nbuf_t msdu, void *rx_desc) in ol_rx_filter() argument
1128 (peer->security[txrx_sec_ucast].sec_type != in ol_rx_filter()
1130 (peer->keyinstalled || !ETHERTYPE_IS_EAPOL_WAPI( in ol_rx_filter()
1157 if (peer->security[sec_idx].sec_type == htt_sec_type_none) in ol_rx_filter()
1291 struct ol_txrx_peer_t *peer, in ol_rx_ocb_prepare_rx_stats_header() argument
1296 int packet_freq = peer->last_pkt_center_freq; in ol_rx_ocb_prepare_rx_stats_header()
1315 rx_header.channel_freq = peer->last_pkt_center_freq; in ol_rx_ocb_prepare_rx_stats_header()
1316 rx_header.rssi_cmb = peer->last_pkt_rssi_cmb; in ol_rx_ocb_prepare_rx_stats_header()
1317 qdf_mem_copy(rx_header.rssi, peer->last_pkt_rssi, in ol_rx_ocb_prepare_rx_stats_header()
1320 if (peer->last_pkt_legacy_rate_sel) in ol_rx_ocb_prepare_rx_stats_header()
1322 else if (peer->last_pkt_legacy_rate == 0x8) in ol_rx_ocb_prepare_rx_stats_header()
1324 else if (peer->last_pkt_legacy_rate == 0x9) in ol_rx_ocb_prepare_rx_stats_header()
1326 else if (peer->last_pkt_legacy_rate == 0xA) in ol_rx_ocb_prepare_rx_stats_header()
1328 else if (peer->last_pkt_legacy_rate == 0xB) in ol_rx_ocb_prepare_rx_stats_header()
1330 else if (peer->last_pkt_legacy_rate == 0xC) in ol_rx_ocb_prepare_rx_stats_header()
1332 else if (peer->last_pkt_legacy_rate == 0xD) in ol_rx_ocb_prepare_rx_stats_header()
1334 else if (peer->last_pkt_legacy_rate == 0xE) in ol_rx_ocb_prepare_rx_stats_header()
1336 else if (peer->last_pkt_legacy_rate == 0xF) in ol_rx_ocb_prepare_rx_stats_header()
1342 peer->last_pkt_timestamp_microsec; in ol_rx_ocb_prepare_rx_stats_header()
1344 peer->last_pkt_timestamp_submicrosec; in ol_rx_ocb_prepare_rx_stats_header()
1345 rx_header.tsf32 = peer->last_pkt_tsf; in ol_rx_ocb_prepare_rx_stats_header()
1346 rx_header.ext_tid = peer->last_pkt_tid; in ol_rx_ocb_prepare_rx_stats_header()
1367 struct ol_txrx_peer_t *peer, in ol_rx_ocb_prepare_rx_stats_header() argument
1376 struct ol_txrx_peer_t *peer, unsigned int tid, in ol_rx_deliver() argument
1413 if (OL_RX_DECAP(vdev, peer, msdu, &info) != A_OK) { in ol_rx_deliver()
1417 msdu, peer, in ol_rx_deliver()
1418 QDF_MAC_ADDR_REF(peer->mac_addr.raw), in ol_rx_deliver()
1426 ol_rx_inspect(vdev, peer, tid, msdu, rx_desc); in ol_rx_deliver()
1433 filter = ol_rx_filter(vdev, peer, msdu, rx_desc); in ol_rx_deliver()
1461 ol_rx_ocb_prepare_rx_stats_header(vdev, peer, in ol_rx_deliver()
1464 OL_RX_PEER_STATS_UPDATE(peer, msdu); in ol_rx_deliver()
1465 OL_RX_ERR_STATISTICS_1(pdev, vdev, peer, rx_desc, in ol_rx_deliver()
1486 ol_rx_data_process(peer, deliver_list_head); in ol_rx_deliver()
1492 struct ol_txrx_peer_t *peer, unsigned int tid, in ol_rx_discard() argument
1504 void ol_rx_peer_init(struct ol_txrx_pdev_t *pdev, struct ol_txrx_peer_t *peer) in ol_rx_peer_init() argument
1509 ol_rx_reorder_init(&peer->tids_rx_reorder[tid], tid); in ol_rx_peer_init()
1512 peer->tids_last_seq[tid] = IEEE80211_SEQ_MAX; in ol_rx_peer_init()
1514 peer->tids_next_rel_idx[tid] = INVALID_REORDER_INDEX; in ol_rx_peer_init()
1522 peer->security[txrx_sec_ucast].sec_type = in ol_rx_peer_init()
1523 peer->security[txrx_sec_mcast].sec_type = htt_sec_type_none; in ol_rx_peer_init()
1524 peer->keyinstalled = 0; in ol_rx_peer_init()
1526 peer->last_assoc_rcvd = 0; in ol_rx_peer_init()
1527 peer->last_disassoc_rcvd = 0; in ol_rx_peer_init()
1528 peer->last_deauth_rcvd = 0; in ol_rx_peer_init()
1530 qdf_atomic_init(&peer->fw_pn_check); in ol_rx_peer_init()
1534 ol_rx_peer_cleanup(struct ol_txrx_vdev_t *vdev, struct ol_txrx_peer_t *peer) in ol_rx_peer_cleanup() argument
1536 peer->keyinstalled = 0; in ol_rx_peer_cleanup()
1537 peer->last_assoc_rcvd = 0; in ol_rx_peer_cleanup()
1538 peer->last_disassoc_rcvd = 0; in ol_rx_peer_cleanup()
1539 peer->last_deauth_rcvd = 0; in ol_rx_peer_cleanup()
1540 ol_rx_reorder_peer_cleanup(vdev, peer); in ol_rx_peer_cleanup()
1565 struct ol_txrx_peer_t *peer = NULL; in ol_rx_in_order_indication_handler() local
1590 peer = pdev->self_peer; in ol_rx_in_order_indication_handler()
1592 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_in_order_indication_handler()
1649 if (peer) { in ol_rx_in_order_indication_handler()
1650 vdev = peer->vdev; in ol_rx_in_order_indication_handler()
1651 if (peer->vdev) { in ol_rx_in_order_indication_handler()
1666 peer->vdev->vdev_id, in ol_rx_in_order_indication_handler()
1682 ol_rx_send_pktlog_event(pdev, peer, head_msdu, pktlog_bit); in ol_rx_in_order_indication_handler()
1688 if (peer) { in ol_rx_in_order_indication_handler()
1689 vdev = peer->vdev; in ol_rx_in_order_indication_handler()
1706 peer->rx_opt_proc(vdev, peer, tid, head_msdu); in ol_rx_in_order_indication_handler()
1732 struct ol_txrx_peer_t *peer = NULL; in ol_rx_pkt_dump_call() local
1745 peer = ol_txrx_peer_find_by_id(pdev, peer_id); in ol_rx_pkt_dump_call()
1746 if (!peer) { in ol_rx_pkt_dump_call()
1753 wlan_op_mode_sta == peer->vdev->opmode) in ol_rx_pkt_dump_call()
1754 packetdump_cb(soc_hdl, OL_TXRX_PDEV_ID, peer->vdev->vdev_id, in ol_rx_pkt_dump_call()
1763 struct ol_txrx_peer_t *peer, in ol_rx_in_order_deliver() argument
1785 OL_RX_PEER_STATS_UPDATE(peer, msdu); in ol_rx_in_order_deliver()
1786 OL_RX_ERR_STATISTICS_1(vdev->pdev, vdev, peer, rx_desc, in ol_rx_in_order_deliver()
1798 ol_rx_data_process(peer, msdu_list); in ol_rx_in_order_deliver()
1810 struct ol_txrx_peer_t *peer; in ol_rx_offload_paddr_deliver_ind_handler() local
1828 peer = ol_txrx_peer_find_by_id(htt_pdev->txrx_pdev, peer_id); in ol_rx_offload_paddr_deliver_ind_handler()
1829 if (peer) { in ol_rx_offload_paddr_deliver_ind_handler()
1834 qdf_dp_trace_log_pkt(peer->vdev->vdev_id, in ol_rx_offload_paddr_deliver_ind_handler()
1837 peer->vdev->qdf_opmode); in ol_rx_offload_paddr_deliver_ind_handler()
1843 ol_rx_data_process(peer, head_buf); in ol_rx_offload_paddr_deliver_ind_handler()