Lines Matching full:peer
89 /* populate TDLS peer data */ in iwl_mvm_tdls_config()
128 /* when the first peer joins, send a power update first */ in iwl_mvm_recalc_tdls_state()
132 /* Configure the FW with TDLS peer info only if TDLS channel switch in iwl_mvm_recalc_tdls_state()
141 /* when the last peer leaves, send a power update last */ in iwl_mvm_recalc_tdls_state()
195 /* we only send requests to our switching peer - update sent time */ in iwl_mvm_tdls_update_cs_state()
197 mvm->tdls_cs.peer.sent_timestamp = iwl_mvm_get_systime(mvm); in iwl_mvm_tdls_update_cs_state()
226 /* the station may not be here, but if it is, it must be a TDLS peer */ in iwl_mvm_rx_tdls_notif()
247 const u8 *peer, bool peer_initiator, u32 timestamp) in iwl_mvm_tdls_check_action() argument
252 /* get the existing peer if it's there */ in iwl_mvm_tdls_check_action()
259 same_peer = ether_addr_equal(peer, sta->addr); in iwl_mvm_tdls_check_action()
265 * might be spurious packet from the peer after the switch is in iwl_mvm_tdls_check_action()
272 /* only allow requests from the same peer */ in iwl_mvm_tdls_check_action()
279 * one is pending. Allow it if the peer is the link in iwl_mvm_tdls_check_action()
286 else if (timestamp <= mvm->tdls_cs.peer.sent_timestamp) in iwl_mvm_tdls_check_action()
311 * to the base channel by the current off-channel peer in iwl_mvm_tdls_check_action()
320 "Invalid TDLS action %d state %d peer %pM same_peer %d initiator %d\n", in iwl_mvm_tdls_check_action()
321 type, mvm->tdls_cs.state, peer, same_peer, in iwl_mvm_tdls_check_action()
331 const u8 *peer, bool peer_initiator, in iwl_mvm_tdls_config_channel_switch() argument
350 ret = iwl_mvm_tdls_check_action(mvm, type, peer, peer_initiator, in iwl_mvm_tdls_config_channel_switch()
366 sta = ieee80211_find_sta(vif, peer); in iwl_mvm_tdls_config_channel_switch()
377 mvm->tdls_cs.peer.chandef.chan) { in iwl_mvm_tdls_config_channel_switch()
379 chandef = &mvm->tdls_cs.peer.chandef; in iwl_mvm_tdls_config_channel_switch()
469 if (mvm->tdls_cs.peer.sta_id == IWL_MVM_INVALID_STA) in iwl_mvm_tdls_ch_switch_work()
473 mvm->fw_id_to_mac_id[mvm->tdls_cs.peer.sta_id], in iwl_mvm_tdls_ch_switch_work()
475 /* the station may not be here, but if it is, it must be a TDLS peer */ in iwl_mvm_tdls_ch_switch_work()
484 mvm->tdls_cs.peer.initiator, in iwl_mvm_tdls_ch_switch_work()
485 mvm->tdls_cs.peer.op_class, in iwl_mvm_tdls_ch_switch_work()
486 &mvm->tdls_cs.peer.chandef, in iwl_mvm_tdls_ch_switch_work()
488 mvm->tdls_cs.peer.skb, in iwl_mvm_tdls_ch_switch_work()
489 mvm->tdls_cs.peer.ch_sw_tm_ie); in iwl_mvm_tdls_ch_switch_work()
517 /* we only support a single peer for channel switching */ in iwl_mvm_tdls_channel_switch()
518 if (mvm->tdls_cs.peer.sta_id != IWL_MVM_INVALID_STA) { in iwl_mvm_tdls_channel_switch()
520 "Existing peer. Can't start switch with %pM\n", in iwl_mvm_tdls_channel_switch()
535 * Mark the peer as "in tdls switch" for this vif. We only allow a in iwl_mvm_tdls_channel_switch()
536 * single such peer per vif. in iwl_mvm_tdls_channel_switch()
538 mvm->tdls_cs.peer.skb = skb_copy(tmpl_skb, GFP_KERNEL); in iwl_mvm_tdls_channel_switch()
539 if (!mvm->tdls_cs.peer.skb) { in iwl_mvm_tdls_channel_switch()
545 mvm->tdls_cs.peer.sta_id = mvmsta->deflink.sta_id; in iwl_mvm_tdls_channel_switch()
546 mvm->tdls_cs.peer.chandef = *chandef; in iwl_mvm_tdls_channel_switch()
547 mvm->tdls_cs.peer.initiator = sta->tdls_initiator; in iwl_mvm_tdls_channel_switch()
548 mvm->tdls_cs.peer.op_class = oper_class; in iwl_mvm_tdls_channel_switch()
549 mvm->tdls_cs.peer.ch_sw_tm_ie = ch_sw_tm_ie; in iwl_mvm_tdls_channel_switch()
577 /* we only support a single peer for channel switching */ in iwl_mvm_tdls_cancel_channel_switch()
578 if (mvm->tdls_cs.peer.sta_id == IWL_MVM_INVALID_STA) { in iwl_mvm_tdls_cancel_channel_switch()
579 IWL_DEBUG_TDLS(mvm, "No ch switch peer - %pM\n", sta->addr); in iwl_mvm_tdls_cancel_channel_switch()
584 mvm->fw_id_to_mac_id[mvm->tdls_cs.peer.sta_id], in iwl_mvm_tdls_cancel_channel_switch()
586 /* make sure it's the same peer */ in iwl_mvm_tdls_cancel_channel_switch()
591 * If we're currently in a switch because of the now canceled peer, in iwl_mvm_tdls_cancel_channel_switch()
595 if (mvm->tdls_cs.cur_sta_id == mvm->tdls_cs.peer.sta_id && in iwl_mvm_tdls_cancel_channel_switch()
599 mvm->tdls_cs.peer.sta_id = IWL_MVM_INVALID_STA; in iwl_mvm_tdls_cancel_channel_switch()
600 dev_kfree_skb(mvm->tdls_cs.peer.skb); in iwl_mvm_tdls_cancel_channel_switch()
601 mvm->tdls_cs.peer.skb = NULL; in iwl_mvm_tdls_cancel_channel_switch()
636 * we got a non-zero status from a peer we were switching to - move to in iwl_mvm_tdls_recv_channel_switch()
645 /* make sure it's the same peer */ in iwl_mvm_tdls_recv_channel_switch()