Lines Matching refs:te_data

85 			   struct iwl_mvm_time_event_data *te_data)  in iwl_mvm_te_clear_data()  argument
89 if (te_data->id == TE_MAX) in iwl_mvm_te_clear_data()
92 list_del(&te_data->list); in iwl_mvm_te_clear_data()
93 te_data->running = false; in iwl_mvm_te_clear_data()
94 te_data->uid = 0; in iwl_mvm_te_clear_data()
95 te_data->id = TE_MAX; in iwl_mvm_te_clear_data()
96 te_data->vif = NULL; in iwl_mvm_te_clear_data()
199 struct iwl_mvm_time_event_data *te_data, in iwl_mvm_te_handle_notify_csa() argument
202 struct ieee80211_vif *vif = te_data->vif; in iwl_mvm_te_handle_notify_csa()
208 switch (te_data->vif->type) { in iwl_mvm_te_handle_notify_csa()
220 iwl_mvm_csa_client_absent(mvm, te_data->vif); in iwl_mvm_te_handle_notify_csa()
221 ieee80211_chswitch_done(te_data->vif, true); in iwl_mvm_te_handle_notify_csa()
230 iwl_mvm_te_clear_data(mvm, te_data); in iwl_mvm_te_handle_notify_csa()
235 struct iwl_mvm_time_event_data *te_data) in iwl_mvm_te_check_trigger() argument
247 if (!iwl_fw_dbg_trigger_check_stop(mvm, te_data->vif, trig)) in iwl_mvm_te_check_trigger()
257 if (trig_te_id != te_data->id || in iwl_mvm_te_check_trigger()
264 te_data->id, in iwl_mvm_te_check_trigger()
279 struct iwl_mvm_time_event_data *te_data, in iwl_mvm_te_handle_notif() argument
288 iwl_mvm_te_check_trigger(mvm, notif, te_data); in iwl_mvm_te_handle_notif()
308 if (iwl_mvm_te_check_disconnect(mvm, te_data->vif, msg)) { in iwl_mvm_te_handle_notif()
309 iwl_mvm_te_clear_data(mvm, te_data); in iwl_mvm_te_handle_notif()
317 jiffies, te_data->end_jiffies); in iwl_mvm_te_handle_notif()
319 switch (te_data->vif->type) { in iwl_mvm_te_handle_notif()
329 iwl_mvm_te_check_disconnect(mvm, te_data->vif, in iwl_mvm_te_handle_notif()
336 iwl_mvm_te_clear_data(mvm, te_data); in iwl_mvm_te_handle_notif()
338 te_data->running = true; in iwl_mvm_te_handle_notif()
339 te_data->end_jiffies = TU_TO_EXP_TIME(te_data->duration); in iwl_mvm_te_handle_notif()
341 if (te_data->vif->type == NL80211_IFTYPE_P2P_DEVICE) { in iwl_mvm_te_handle_notif()
345 } else if (te_data->id == TE_CHANNEL_SWITCH_PERIOD) { in iwl_mvm_te_handle_notif()
346 iwl_mvm_te_handle_notify_csa(mvm, te_data, notif); in iwl_mvm_te_handle_notif()
359 struct iwl_mvm_time_event_data *te_data, *tmp; in iwl_mvm_aux_roc_te_handle_notif() local
362 list_for_each_entry_safe(te_data, tmp, &mvm->aux_roc_te_list, list) { in iwl_mvm_aux_roc_te_handle_notif()
363 if (le32_to_cpu(notif->unique_id) == te_data->uid) { in iwl_mvm_aux_roc_te_handle_notif()
371 iwl_mvm_te_check_trigger(mvm, notif, te_data); in iwl_mvm_aux_roc_te_handle_notif()
390 list_del(&te_data->list); /* remove from list */ in iwl_mvm_aux_roc_te_handle_notif()
391 te_data->running = false; in iwl_mvm_aux_roc_te_handle_notif()
392 te_data->vif = NULL; in iwl_mvm_aux_roc_te_handle_notif()
393 te_data->uid = 0; in iwl_mvm_aux_roc_te_handle_notif()
394 te_data->id = TE_MAX; in iwl_mvm_aux_roc_te_handle_notif()
397 te_data->running = true; in iwl_mvm_aux_roc_te_handle_notif()
419 struct iwl_mvm_time_event_data *te_data, *tmp; in iwl_mvm_rx_time_event_notif() local
430 list_for_each_entry_safe(te_data, tmp, &mvm->time_event_list, list) { in iwl_mvm_rx_time_event_notif()
431 if (le32_to_cpu(notif->unique_id) == te_data->uid) in iwl_mvm_rx_time_event_notif()
432 iwl_mvm_te_handle_notif(mvm, te_data, notif); in iwl_mvm_rx_time_event_notif()
445 struct iwl_mvm_time_event_data *te_data = data; in iwl_mvm_te_notif() local
460 if (le32_to_cpu(resp->unique_id) != te_data->uid) in iwl_mvm_te_notif()
464 te_data->uid); in iwl_mvm_te_notif()
477 struct iwl_mvm_time_event_data *te_data = data; in iwl_mvm_time_event_response() local
492 if (WARN_ON_ONCE(le32_to_cpu(resp->id) != te_data->id)) in iwl_mvm_time_event_response()
495 te_data->uid = le32_to_cpu(resp->unique_id); in iwl_mvm_time_event_response()
497 te_data->uid); in iwl_mvm_time_event_response()
503 struct iwl_mvm_time_event_data *te_data, in iwl_mvm_time_event_send_add() argument
516 if (WARN_ON(te_data->id != TE_MAX)) { in iwl_mvm_time_event_send_add()
520 te_data->vif = vif; in iwl_mvm_time_event_send_add()
521 te_data->duration = le32_to_cpu(te_cmd->duration); in iwl_mvm_time_event_send_add()
522 te_data->id = le32_to_cpu(te_cmd->id); in iwl_mvm_time_event_send_add()
523 list_add_tail(&te_data->list, &mvm->time_event_list); in iwl_mvm_time_event_send_add()
538 iwl_mvm_time_event_response, te_data); in iwl_mvm_time_event_send_add()
556 iwl_mvm_te_clear_data(mvm, te_data); in iwl_mvm_time_event_send_add()
568 struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data; in iwl_mvm_protect_session() local
575 if (te_data->running && in iwl_mvm_protect_session()
576 time_after(te_data->end_jiffies, TU_TO_EXP_TIME(min_duration))) { in iwl_mvm_protect_session()
578 jiffies_to_msecs(te_data->end_jiffies - jiffies)); in iwl_mvm_protect_session()
582 if (te_data->running) { in iwl_mvm_protect_session()
584 te_data->uid, in iwl_mvm_protect_session()
585 jiffies_to_msecs(te_data->end_jiffies - jiffies)); in iwl_mvm_protect_session()
616 iwl_mvm_time_event_send_add(mvm, vif, te_data, &time_cmd); in iwl_mvm_protect_session()
627 iwl_mvm_te_notif, te_data); in iwl_mvm_protect_session()
630 if (iwl_mvm_time_event_send_add(mvm, vif, te_data, &time_cmd)) { in iwl_mvm_protect_session()
640 struct iwl_mvm_time_event_data *te_data, in __iwl_mvm_remove_time_event() argument
652 *uid = te_data->uid; in __iwl_mvm_remove_time_event()
653 id = te_data->id; in __iwl_mvm_remove_time_event()
658 iwl_mvm_te_clear_data(mvm, te_data); in __iwl_mvm_remove_time_event()
682 struct iwl_mvm_time_event_data *te_data) in iwl_mvm_remove_aux_roc_te() argument
688 if (!__iwl_mvm_remove_time_event(mvm, te_data, &uid)) in iwl_mvm_remove_aux_roc_te()
711 struct iwl_mvm_time_event_data *te_data) in iwl_mvm_remove_time_event() argument
717 if (!__iwl_mvm_remove_time_event(mvm, te_data, &uid)) in iwl_mvm_remove_time_event()
737 struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data; in iwl_mvm_stop_session_protection() local
740 iwl_mvm_remove_time_event(mvm, mvmvif, te_data); in iwl_mvm_stop_session_protection()
747 struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data; in iwl_mvm_start_p2p_roc() local
751 if (te_data->running) { in iwl_mvm_start_p2p_roc()
795 return iwl_mvm_time_event_send_add(mvm, vif, te_data, &time_cmd); in iwl_mvm_start_p2p_roc()
801 struct iwl_mvm_time_event_data *te_data; in iwl_mvm_stop_roc() local
816 list_for_each_entry(te_data, &mvm->time_event_list, list) { in iwl_mvm_stop_roc()
817 if (te_data->vif->type == NL80211_IFTYPE_P2P_DEVICE) { in iwl_mvm_stop_roc()
818 mvmvif = iwl_mvm_vif_from_mac80211(te_data->vif); in iwl_mvm_stop_roc()
831 list_for_each_entry(te_data, &mvm->aux_roc_te_list, list) { in iwl_mvm_stop_roc()
832 mvmvif = iwl_mvm_vif_from_mac80211(te_data->vif); in iwl_mvm_stop_roc()
845 iwl_mvm_remove_time_event(mvm, mvmvif, te_data); in iwl_mvm_stop_roc()
847 iwl_mvm_remove_aux_roc_te(mvm, mvmvif, te_data); in iwl_mvm_stop_roc()
857 struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data; in iwl_mvm_schedule_csa_period() local
862 if (te_data->running) { in iwl_mvm_schedule_csa_period()
879 return iwl_mvm_time_event_send_add(mvm, vif, te_data, &time_cmd); in iwl_mvm_schedule_csa_period()