Lines Matching refs:local
25 struct ieee80211_local *local; in ieee80211_tdls_peer_del_work() local
29 local = sdata->local; in ieee80211_tdls_peer_del_work()
31 mutex_lock(&local->mtx); in ieee80211_tdls_peer_del_work()
37 mutex_unlock(&local->mtx); in ieee80211_tdls_peer_del_work()
43 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_add_ext_capab() local
45 bool chan_switch = local->hw.wiphy->features & in ieee80211_tdls_add_ext_capab()
47 bool wider_band = ieee80211_hw_check(&local->hw, TDLS_WIDER_BW) && in ieee80211_tdls_add_ext_capab()
50 struct ieee80211_supported_band *sband = local->hw.wiphy->bands[band]; in ieee80211_tdls_add_ext_capab()
75 struct wiphy *wiphy = sdata->local->hw.wiphy; in ieee80211_tdls_add_subband()
81 ch = ieee80211_get_channel(sdata->local->hw.wiphy, i); in ieee80211_tdls_add_subband()
336 !cfg80211_reg_can_beacon_relax(sdata->local->hw.wiphy, &uc, in ieee80211_tdls_chandef_vht_upgrade()
359 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_add_setup_start_ies() local
392 if (local->hw.queues >= IEEE80211_NUM_ACS && in ieee80211_tdls_add_setup_start_ies()
419 mutex_lock(&local->sta_mtx); in ieee80211_tdls_add_setup_start_ies()
425 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_add_setup_start_ies()
439 sband = local->hw.wiphy->bands[band]; in ieee80211_tdls_add_setup_start_ies()
524 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_add_setup_start_ies()
541 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_add_setup_cfm_ies() local
548 mutex_lock(&local->sta_mtx); in ieee80211_tdls_add_setup_cfm_ies()
553 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_add_setup_cfm_ies()
574 if (local->hw.queues >= IEEE80211_NUM_ACS && sta->sta.wme) in ieee80211_tdls_add_setup_cfm_ies()
625 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_add_setup_cfm_ies()
865 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_build_mgmt_packet_data() local
870 local->hw.extra_tx_headroom + in ieee80211_tdls_build_mgmt_packet_data()
889 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_tdls_build_mgmt_packet_data()
899 ret = ieee80211_prep_tdls_encap_data(local->hw.wiphy, in ieee80211_tdls_build_mgmt_packet_data()
905 ret = ieee80211_prep_tdls_direct(local->hw.wiphy, sdata->dev, in ieee80211_tdls_build_mgmt_packet_data()
1025 ieee80211_hw_check(&sdata->local->hw, REPORTS_TX_ACK_STATUS)) { in ieee80211_tdls_prep_mgmt_packet()
1072 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_mgmt_setup() local
1084 mutex_lock(&local->mtx); in ieee80211_tdls_mgmt_setup()
1110 ieee80211_flush_queues(local, sdata, false); in ieee80211_tdls_mgmt_setup()
1112 mutex_unlock(&local->mtx); in ieee80211_tdls_mgmt_setup()
1121 mutex_lock(&local->mtx); in ieee80211_tdls_mgmt_setup()
1123 mutex_unlock(&local->mtx); in ieee80211_tdls_mgmt_setup()
1127 ieee80211_queue_delayed_work(&sdata->local->hw, in ieee80211_tdls_mgmt_setup()
1133 mutex_unlock(&local->mtx); in ieee80211_tdls_mgmt_setup()
1145 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_mgmt_teardown() local
1155 ieee80211_stop_vif_queues(local, sdata, in ieee80211_tdls_mgmt_teardown()
1157 ieee80211_flush_queues(local, sdata, false); in ieee80211_tdls_mgmt_teardown()
1178 ieee80211_wake_vif_queues(local, sdata, in ieee80211_tdls_mgmt_teardown()
1222 drv_mgd_protect_tdls_discover(sdata->local, sdata); in ieee80211_tdls_mgmt()
1247 struct ieee80211_local *local = sdata->local; in iee80211_tdls_recalc_chanctx() local
1251 mutex_lock(&local->chanctx_mtx); in iee80211_tdls_recalc_chanctx()
1253 lockdep_is_held(&local->chanctx_mtx)); in iee80211_tdls_recalc_chanctx()
1256 ieee80211_recalc_chanctx_chantype(local, ctx); in iee80211_tdls_recalc_chanctx()
1258 mutex_unlock(&local->chanctx_mtx); in iee80211_tdls_recalc_chanctx()
1267 list_for_each_entry_rcu(sta, &sdata->local->sta_list, list) { in iee80211_tdls_have_ht_peers()
1318 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_oper() local
1342 mutex_lock(&local->mtx); in ieee80211_tdls_oper()
1355 mutex_lock(&local->sta_mtx); in ieee80211_tdls_oper()
1358 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_oper()
1366 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_oper()
1383 tasklet_kill(&local->tx_pending_tasklet); in ieee80211_tdls_oper()
1385 ieee80211_flush_queues(local, sdata, false); in ieee80211_tdls_oper()
1389 mutex_lock(&local->sta_mtx); in ieee80211_tdls_oper()
1391 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_oper()
1406 ieee80211_queue_work(&sdata->local->hw, in ieee80211_tdls_oper()
1409 mutex_unlock(&local->mtx); in ieee80211_tdls_oper()
1536 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_channel_switch() local
1542 mutex_lock(&local->sta_mtx); in ieee80211_tdls_channel_switch()
1566 ret = drv_tdls_channel_switch(local, sdata, &sta->sta, oper_class, in ieee80211_tdls_channel_switch()
1572 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_channel_switch()
1583 struct ieee80211_local *local = sdata->local; in ieee80211_tdls_cancel_channel_switch() local
1586 mutex_lock(&local->sta_mtx); in ieee80211_tdls_cancel_channel_switch()
1601 drv_tdls_cancel_channel_switch(local, sdata, &sta->sta); in ieee80211_tdls_cancel_channel_switch()
1605 mutex_unlock(&local->sta_mtx); in ieee80211_tdls_cancel_channel_switch()
1655 struct ieee80211_local *local = sdata->local; in ieee80211_process_tdls_channel_switch_resp() local
1674 mutex_lock(&local->sta_mtx); in ieee80211_process_tdls_channel_switch_resp()
1724 drv_tdls_recv_channel_switch(sdata->local, sdata, ¶ms); in ieee80211_process_tdls_channel_switch_resp()
1731 mutex_unlock(&local->sta_mtx); in ieee80211_process_tdls_channel_switch_resp()
1740 struct ieee80211_local *local = sdata->local; in ieee80211_process_tdls_channel_switch_req() local
1793 chan = ieee80211_get_channel(sdata->local->hw.wiphy, freq); in ieee80211_process_tdls_channel_switch_req()
1832 if (!cfg80211_reg_can_beacon_relax(sdata->local->hw.wiphy, &chandef, in ieee80211_process_tdls_channel_switch_req()
1838 mutex_lock(&local->sta_mtx); in ieee80211_process_tdls_channel_switch_req()
1878 drv_tdls_recv_channel_switch(sdata->local, sdata, ¶ms); in ieee80211_process_tdls_channel_switch_req()
1885 mutex_unlock(&local->sta_mtx); in ieee80211_process_tdls_channel_switch_req()
1895 struct wiphy *wiphy = sdata->local->hw.wiphy; in ieee80211_process_tdls_channel_switch()
1929 list_for_each_entry_rcu(sta, &sdata->local->sta_list, list) { in ieee80211_teardown_tdls_peers()
1943 struct ieee80211_local *local = in ieee80211_tdls_chsw_work() local
1950 while ((skb = skb_dequeue(&local->skb_queue_tdls_chsw))) { in ieee80211_tdls_chsw_work()
1952 list_for_each_entry(sdata, &local->interfaces, list) { in ieee80211_tdls_chsw_work()