Lines Matching refs:sdata

109 	struct ieee80211_sub_if_data *sdata;  member
192 unsigned int ieee80211_new_mesh_header(struct ieee80211_sub_if_data *sdata,
195 int mesh_rmc_check(struct ieee80211_sub_if_data *sdata,
197 bool mesh_matches_local(struct ieee80211_sub_if_data *sdata,
200 int mesh_add_meshconf_ie(struct ieee80211_sub_if_data *sdata,
202 int mesh_add_meshid_ie(struct ieee80211_sub_if_data *sdata,
204 int mesh_add_rsn_ie(struct ieee80211_sub_if_data *sdata,
206 int mesh_add_vendor_ies(struct ieee80211_sub_if_data *sdata,
208 int mesh_add_ht_cap_ie(struct ieee80211_sub_if_data *sdata,
210 int mesh_add_ht_oper_ie(struct ieee80211_sub_if_data *sdata,
212 int mesh_add_vht_cap_ie(struct ieee80211_sub_if_data *sdata,
214 int mesh_add_vht_oper_ie(struct ieee80211_sub_if_data *sdata,
216 void mesh_rmc_free(struct ieee80211_sub_if_data *sdata);
217 int mesh_rmc_init(struct ieee80211_sub_if_data *sdata);
222 void ieee80211_mesh_init_sdata(struct ieee80211_sub_if_data *sdata);
223 void ieee80211_mesh_teardown_sdata(struct ieee80211_sub_if_data *sdata);
224 int ieee80211_start_mesh(struct ieee80211_sub_if_data *sdata);
225 void ieee80211_stop_mesh(struct ieee80211_sub_if_data *sdata);
229 void ieee80211_mbss_info_change_notify(struct ieee80211_sub_if_data *sdata,
233 u32 ieee80211_mps_local_status_update(struct ieee80211_sub_if_data *sdata);
236 void ieee80211_mps_set_frame_flags(struct ieee80211_sub_if_data *sdata,
248 int mesh_nexthop_lookup(struct ieee80211_sub_if_data *sdata,
250 int mesh_nexthop_resolve(struct ieee80211_sub_if_data *sdata,
252 void mesh_path_start_discovery(struct ieee80211_sub_if_data *sdata);
253 struct mesh_path *mesh_path_lookup(struct ieee80211_sub_if_data *sdata,
255 struct mesh_path *mpp_path_lookup(struct ieee80211_sub_if_data *sdata,
257 int mpp_path_add(struct ieee80211_sub_if_data *sdata,
260 mesh_path_lookup_by_idx(struct ieee80211_sub_if_data *sdata, int idx);
262 mpp_path_lookup_by_idx(struct ieee80211_sub_if_data *sdata, int idx);
264 void mesh_path_expire(struct ieee80211_sub_if_data *sdata);
265 void mesh_rx_path_sel_frame(struct ieee80211_sub_if_data *sdata,
268 mesh_path_add(struct ieee80211_sub_if_data *sdata, const u8 *dst);
272 int mesh_gate_num(struct ieee80211_sub_if_data *sdata);
275 void mesh_neighbour_update(struct ieee80211_sub_if_data *sdata,
278 u32 mesh_accept_plinks_update(struct ieee80211_sub_if_data *sdata);
284 void mesh_rx_plink_frame(struct ieee80211_sub_if_data *sdata,
291 int mesh_path_error_tx(struct ieee80211_sub_if_data *sdata,
297 int mesh_pathtbl_init(struct ieee80211_sub_if_data *sdata);
298 void mesh_pathtbl_unregister(struct ieee80211_sub_if_data *sdata);
299 int mesh_path_del(struct ieee80211_sub_if_data *sdata, const u8 *addr);
302 void mesh_path_discard_frame(struct ieee80211_sub_if_data *sdata,
304 void mesh_path_tx_root_frame(struct ieee80211_sub_if_data *sdata);
310 u32 mesh_plink_inc_estab_count(struct ieee80211_sub_if_data *sdata) in mesh_plink_inc_estab_count() argument
312 atomic_inc(&sdata->u.mesh.estab_plinks); in mesh_plink_inc_estab_count()
313 return mesh_accept_plinks_update(sdata) | BSS_CHANGED_BEACON; in mesh_plink_inc_estab_count()
317 u32 mesh_plink_dec_estab_count(struct ieee80211_sub_if_data *sdata) in mesh_plink_dec_estab_count() argument
319 atomic_dec(&sdata->u.mesh.estab_plinks); in mesh_plink_dec_estab_count()
320 return mesh_accept_plinks_update(sdata) | BSS_CHANGED_BEACON; in mesh_plink_dec_estab_count()
323 static inline int mesh_plink_free_count(struct ieee80211_sub_if_data *sdata) in mesh_plink_free_count() argument
325 return sdata->u.mesh.mshcfg.dot11MeshMaxPeerLinks - in mesh_plink_free_count()
326 atomic_read(&sdata->u.mesh.estab_plinks); in mesh_plink_free_count()
329 static inline bool mesh_plink_availables(struct ieee80211_sub_if_data *sdata) in mesh_plink_availables() argument
331 return (min_t(long, mesh_plink_free_count(sdata), in mesh_plink_availables()
332 MESH_MAX_PLINKS - sdata->local->num_sta)) > 0; in mesh_plink_availables()
340 static inline bool mesh_path_sel_is_hwmp(struct ieee80211_sub_if_data *sdata) in mesh_path_sel_is_hwmp() argument
342 return sdata->u.mesh.mesh_pp_id == IEEE80211_PATH_PROTOCOL_HWMP; in mesh_path_sel_is_hwmp()
345 void mesh_path_flush_by_iface(struct ieee80211_sub_if_data *sdata);
346 void mesh_sync_adjust_tsf(struct ieee80211_sub_if_data *sdata);
349 static inline bool mesh_path_sel_is_hwmp(struct ieee80211_sub_if_data *sdata) in mesh_path_sel_is_hwmp() argument
351 static inline void mesh_path_flush_by_iface(struct ieee80211_sub_if_data *sdata) in mesh_path_flush_by_iface() argument