• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/net/mac80211/

Lines Matching refs:sdata

64 void mesh_plink_inc_estab_count(struct ieee80211_sub_if_data *sdata)
66 atomic_inc(&sdata->u.mesh.mshstats.estab_plinks);
67 mesh_accept_plinks_update(sdata);
71 void mesh_plink_dec_estab_count(struct ieee80211_sub_if_data *sdata)
73 atomic_dec(&sdata->u.mesh.mshstats.estab_plinks);
74 mesh_accept_plinks_update(sdata);
95 static struct sta_info *mesh_plink_alloc(struct ieee80211_sub_if_data *sdata,
98 struct ieee80211_local *local = sdata->local;
104 sta = sta_info_alloc(sdata, hw_addr, GFP_KERNEL);
126 struct ieee80211_sub_if_data *sdata = sta->sdata;
130 mesh_plink_dec_estab_count(sdata);
148 struct ieee80211_sub_if_data *sdata = sta->sdata;
156 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON);
159 static int mesh_plink_frame_tx(struct ieee80211_sub_if_data *sdata,
162 struct ieee80211_local *local = sdata->local;
182 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
197 mesh_mgmt_ies_add(skb, sdata);
235 ieee80211_tx_skb(sdata, skb);
239 void mesh_neighbour_update(u8 *hw_addr, u32 rates, struct ieee80211_sub_if_data *sdata,
242 struct ieee80211_local *local = sdata->local;
247 sta = sta_info_get(sdata, hw_addr);
251 sta = mesh_plink_alloc(sdata, hw_addr, rates);
263 sdata->u.mesh.accepting_plinks &&
264 sdata->u.mesh.mshcfg.auto_open_plinks)
274 struct ieee80211_sub_if_data *sdata;
283 if (sta->sdata->local->quiescing) {
299 sdata = sta->sdata;
305 if (sta->plink_retries < dot11MeshMaxRetries(sdata)) {
316 mesh_plink_frame_tx(sdata, PLINK_OPEN, sta->sta.addr, llid,
327 mod_plink_timer(sta, dot11MeshHoldingTimeout(sdata));
329 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr, llid, plid,
372 struct ieee80211_sub_if_data *sdata = sta->sdata;
382 mesh_plink_timer_set(sta, dot11MeshRetryTimeout(sdata));
387 return mesh_plink_frame_tx(sdata, PLINK_OPEN,
393 struct ieee80211_sub_if_data *sdata = sta->sdata;
402 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON);
406 void mesh_rx_plink_frame(struct ieee80211_sub_if_data *sdata, struct ieee80211_mgmt *mgmt,
409 struct ieee80211_local *local = sdata->local;
475 sta = sta_info_get(sdata, mgmt->sa);
489 if (ftype != PLINK_CLOSE && (!mesh_matches_local(&elems, sdata))) {
508 mesh_plink_frame_tx(sdata, PLINK_CLOSE, mgmt->sa, llid,
517 if (!mesh_plink_free_count(sdata)) {
523 sta = mesh_plink_alloc(sdata, mgmt->sa, rates);
538 if (!mesh_plink_free_count(sdata) ||
545 if (!mesh_plink_free_count(sdata) ||
598 mesh_plink_timer_set(sta, dot11MeshRetryTimeout(sdata));
600 mesh_plink_frame_tx(sdata, PLINK_OPEN, sta->sta.addr, llid,
602 mesh_plink_frame_tx(sdata, PLINK_CONFIRM, sta->sta.addr,
622 dot11MeshHoldingTimeout(sdata)))
627 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr, llid,
636 mesh_plink_frame_tx(sdata, PLINK_CONFIRM, sta->sta.addr, llid,
642 dot11MeshConfirmTimeout(sdata)))
664 dot11MeshHoldingTimeout(sdata)))
669 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr, llid,
675 mesh_plink_frame_tx(sdata, PLINK_CONFIRM, sta->sta.addr, llid,
682 mesh_plink_inc_estab_count(sdata);
683 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON);
704 dot11MeshHoldingTimeout(sdata)))
709 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr, llid,
716 mesh_plink_inc_estab_count(sdata);
717 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON);
720 mesh_plink_frame_tx(sdata, PLINK_CONFIRM, sta->sta.addr, llid,
737 mod_plink_timer(sta, dot11MeshHoldingTimeout(sdata));
740 ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_BEACON);
741 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr, llid,
747 mesh_plink_frame_tx(sdata, PLINK_CONFIRM, sta->sta.addr, llid,
770 mesh_plink_frame_tx(sdata, PLINK_CLOSE, sta->sta.addr,