Lines Matching refs:stations
45 if (!(priv->stations[sta_id].used & IWL_STA_DRIVER_ACTIVE)) in iwl_sta_ucode_activate()
48 sta_id, priv->stations[sta_id].sta.sta.addr); in iwl_sta_ucode_activate()
50 if (priv->stations[sta_id].used & IWL_STA_UCODE_ACTIVE) { in iwl_sta_ucode_activate()
54 sta_id, priv->stations[sta_id].sta.sta.addr); in iwl_sta_ucode_activate()
56 priv->stations[sta_id].used |= IWL_STA_UCODE_ACTIVE; in iwl_sta_ucode_activate()
58 sta_id, priv->stations[sta_id].sta.sta.addr); in iwl_sta_ucode_activate()
106 priv->stations[sta_id].sta.mode == in iwl_process_add_sta_resp()
108 sta_id, priv->stations[sta_id].sta.sta.addr); in iwl_process_add_sta_resp()
119 priv->stations[sta_id].sta.mode == in iwl_process_add_sta_resp()
254 priv->stations[sta_id].sta.station_flags &= ~mask; in iwl_sta_update_ht()
255 priv->stations[sta_id].sta.station_flags |= flags; in iwl_sta_update_ht()
276 priv->stations[index].sta.station_flags &= ~mask; in iwl_set_ht_add_station()
277 priv->stations[index].sta.station_flags |= flags; in iwl_set_ht_add_station()
298 if (ether_addr_equal(priv->stations[i].sta.sta.addr, in iwl_prep_station()
304 if (!priv->stations[i].used && in iwl_prep_station()
321 if (priv->stations[sta_id].used & IWL_STA_UCODE_INPROGRESS) { in iwl_prep_station()
327 if ((priv->stations[sta_id].used & IWL_STA_DRIVER_ACTIVE) && in iwl_prep_station()
328 (priv->stations[sta_id].used & IWL_STA_UCODE_ACTIVE) && in iwl_prep_station()
329 ether_addr_equal(priv->stations[sta_id].sta.sta.addr, addr)) { in iwl_prep_station()
335 station = &priv->stations[sta_id]; in iwl_prep_station()
395 if (priv->stations[sta_id].used & IWL_STA_UCODE_INPROGRESS) { in iwl_add_station_common()
402 if ((priv->stations[sta_id].used & IWL_STA_DRIVER_ACTIVE) && in iwl_add_station_common()
403 (priv->stations[sta_id].used & IWL_STA_UCODE_ACTIVE)) { in iwl_add_station_common()
410 priv->stations[sta_id].used |= IWL_STA_UCODE_INPROGRESS; in iwl_add_station_common()
411 memcpy(&sta_cmd, &priv->stations[sta_id].sta, in iwl_add_station_common()
420 priv->stations[sta_id].sta.sta.addr); in iwl_add_station_common()
421 priv->stations[sta_id].used &= ~IWL_STA_DRIVER_ACTIVE; in iwl_add_station_common()
422 priv->stations[sta_id].used &= ~IWL_STA_UCODE_INPROGRESS; in iwl_add_station_common()
437 if ((priv->stations[sta_id].used & in iwl_sta_ucode_deactivate()
442 priv->stations[sta_id].used &= ~IWL_STA_UCODE_ACTIVE; in iwl_sta_ucode_deactivate()
444 memset(&priv->stations[sta_id], 0, sizeof(struct iwl_station_entry)); in iwl_sta_ucode_deactivate()
530 if (!(priv->stations[sta_id].used & IWL_STA_DRIVER_ACTIVE)) { in iwl_remove_station()
536 if (!(priv->stations[sta_id].used & IWL_STA_UCODE_ACTIVE)) { in iwl_remove_station()
542 if (priv->stations[sta_id].used & IWL_STA_LOCAL) { in iwl_remove_station()
543 kfree(priv->stations[sta_id].lq); in iwl_remove_station()
544 priv->stations[sta_id].lq = NULL; in iwl_remove_station()
551 priv->stations[sta_id].used &= ~IWL_STA_DRIVER_ACTIVE; in iwl_remove_station()
585 WARN_ON_ONCE(!(priv->stations[sta_id].used & IWL_STA_DRIVER_ACTIVE)); in iwl_deactivate_station()
591 priv->stations[sta_id].used &= ~IWL_STA_DRIVER_ACTIVE; in iwl_deactivate_station()
592 priv->stations[sta_id].used &= ~IWL_STA_UCODE_INPROGRESS; in iwl_deactivate_station()
670 if (ctx && ctx->ctxid != priv->stations[i].ctxid) in iwl_clear_ucode_stations()
673 if (priv->stations[i].used & IWL_STA_UCODE_ACTIVE) { in iwl_clear_ucode_stations()
676 priv->stations[i].used &= ~IWL_STA_UCODE_ACTIVE; in iwl_clear_ucode_stations()
714 if (ctx->ctxid != priv->stations[i].ctxid) in iwl_restore_stations()
716 if ((priv->stations[i].used & IWL_STA_DRIVER_ACTIVE) && in iwl_restore_stations()
717 !(priv->stations[i].used & IWL_STA_UCODE_ACTIVE)) { in iwl_restore_stations()
719 priv->stations[i].sta.sta.addr); in iwl_restore_stations()
720 priv->stations[i].sta.mode = 0; in iwl_restore_stations()
721 priv->stations[i].used |= IWL_STA_UCODE_INPROGRESS; in iwl_restore_stations()
727 if ((priv->stations[i].used & IWL_STA_UCODE_INPROGRESS)) { in iwl_restore_stations()
728 memcpy(&sta_cmd, &priv->stations[i].sta, in iwl_restore_stations()
731 if (priv->stations[i].lq) { in iwl_restore_stations()
735 memcpy(&lq, priv->stations[i].lq, in iwl_restore_stations()
746 priv->stations[i].sta.sta.addr); in iwl_restore_stations()
747 priv->stations[i].used &= in iwl_restore_stations()
749 priv->stations[i].used &= in iwl_restore_stations()
760 priv->stations[i].used &= ~IWL_STA_UCODE_INPROGRESS; in iwl_restore_stations()
790 if (!(priv->stations[i].used & IWL_STA_BCAST)) in iwl_dealloc_bcast_stations()
793 priv->stations[i].used &= ~IWL_STA_UCODE_ACTIVE; in iwl_dealloc_bcast_stations()
797 kfree(priv->stations[i].lq); in iwl_dealloc_bcast_stations()
798 priv->stations[i].lq = NULL; in iwl_dealloc_bcast_stations()
884 if (!(priv->stations[lq->sta_id].used & IWL_STA_DRIVER_ACTIVE)) { in iwl_send_lq_cmd()
907 priv->stations[lq->sta_id].used &= ~IWL_STA_UCODE_INPROGRESS; in iwl_send_lq_cmd()
957 priv->stations[sta_id].used |= IWL_STA_LOCAL; in iwlagn_add_bssid_station()
974 priv->stations[sta_id].lq = link_cmd; in iwlagn_add_bssid_station()
1140 memcpy(&sta_cmd, &priv->stations[sta_id].sta, sizeof(sta_cmd)); in iwlagn_send_sta_key()
1217 memcpy(&sta_cmd, &priv->stations[sta_id].sta, sizeof(sta_cmd)); in iwl_remove_dynamic_key()
1218 if (!(priv->stations[sta_id].used & IWL_STA_UCODE_ACTIVE)) in iwl_remove_dynamic_key()
1331 priv->stations[sta_id].used |= IWL_STA_DRIVER_ACTIVE; in iwlagn_alloc_bcast_station()
1332 priv->stations[sta_id].used |= IWL_STA_BCAST; in iwlagn_alloc_bcast_station()
1343 priv->stations[sta_id].lq = link_cmd; in iwlagn_alloc_bcast_station()
1368 if (priv->stations[sta_id].lq) in iwl_update_bcast_station()
1369 kfree(priv->stations[sta_id].lq); in iwl_update_bcast_station()
1372 priv->stations[sta_id].lq = link_cmd; in iwl_update_bcast_station()
1403 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_TID_DISABLE_TX; in iwl_sta_tx_modify_enable_tid()
1404 priv->stations[sta_id].sta.tid_disable_tx &= cpu_to_le16(~(1 << tid)); in iwl_sta_tx_modify_enable_tid()
1405 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; in iwl_sta_tx_modify_enable_tid()
1406 memcpy(&sta_cmd, &priv->stations[sta_id].sta, sizeof(struct iwl_addsta_cmd)); in iwl_sta_tx_modify_enable_tid()
1425 priv->stations[sta_id].sta.station_flags_msk = 0; in iwl_sta_rx_agg_start()
1426 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_ADDBA_TID_MSK; in iwl_sta_rx_agg_start()
1427 priv->stations[sta_id].sta.add_immediate_ba_tid = (u8)tid; in iwl_sta_rx_agg_start()
1428 priv->stations[sta_id].sta.add_immediate_ba_ssn = cpu_to_le16(ssn); in iwl_sta_rx_agg_start()
1429 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; in iwl_sta_rx_agg_start()
1430 memcpy(&sta_cmd, &priv->stations[sta_id].sta, sizeof(struct iwl_addsta_cmd)); in iwl_sta_rx_agg_start()
1451 priv->stations[sta_id].sta.station_flags_msk = 0; in iwl_sta_rx_agg_stop()
1452 priv->stations[sta_id].sta.sta.modify_mask = STA_MODIFY_DELBA_TID_MSK; in iwl_sta_rx_agg_stop()
1453 priv->stations[sta_id].sta.remove_immediate_ba_tid = (u8)tid; in iwl_sta_rx_agg_stop()
1454 priv->stations[sta_id].sta.mode = STA_CONTROL_MODIFY_MSK; in iwl_sta_rx_agg_stop()
1455 memcpy(&sta_cmd, &priv->stations[sta_id].sta, sizeof(struct iwl_addsta_cmd)); in iwl_sta_rx_agg_stop()