Lines Matching refs:mesh

12 #include "mesh.h"
41 from_timer(sdata, t, u.mesh.housekeeping_timer);
43 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
51 * mesh_matches_local - check if the config of a mesh point matches ours
53 * @sdata: local mesh subif
54 * @ie: information elements of a management frame from the mesh peer
56 * This function checks if the mesh configuration of a mesh point matches the
57 * local mesh configuration, i.e. if both nodes belong to the same mesh network.
62 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
70 * - On mesh config capabilities
119 * @ie: information elements of a management frame from the mesh peer
128 * mesh_accept_plinks_update - update accepting_plink in local mesh beacons
130 * @sdata: mesh interface in which mesh beacons are going to be updated
140 * the mesh interface might be able to establish plinks with peers that
142 * in general the mesh interface is not accepting peer link requests
147 if (free_plinks != sdata->u.mesh.accepting_plinks) {
148 sdata->u.mesh.accepting_plinks = free_plinks;
156 * mesh_sta_cleanup - clean up any mesh sta state
158 * @sta: mesh sta to clean up.
173 sdata->u.mesh.rmc = kmalloc(sizeof(struct mesh_rmc), GFP_KERNEL);
174 if (!sdata->u.mesh.rmc)
176 sdata->u.mesh.rmc->idx_mask = RMC_BUCKETS - 1;
178 INIT_HLIST_HEAD(&sdata->u.mesh.rmc->bucket[i]);
184 struct mesh_rmc *rmc = sdata->u.mesh.rmc;
189 if (!sdata->u.mesh.rmc)
200 sdata->u.mesh.rmc = NULL;
212 * Checks using the source address and the mesh sequence number if we have
219 struct mesh_rmc *rmc = sdata->u.mesh.rmc;
257 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
305 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
323 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
346 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
369 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
632 /* The device doesn't support HE in mesh mode or at all */
643 from_timer(sdata, t, u.mesh.mesh_path_timer);
651 from_timer(sdata, t, u.mesh.mesh_path_root_timer);
652 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
671 * ieee80211_fill_mesh_addresses - fill addresses of a locally originated mesh frame
674 * @meshda: destination address in the mesh
675 * @meshsa: source address in the mesh. Same as TA, as frame is
678 * Return the length of the 802.11 (does not include a mesh control header)
702 * ieee80211_new_mesh_header - create a new mesh header
703 * @sdata: mesh interface to be used
704 * @meshhdr: uninitialized mesh header
709 * mesh frame
722 meshhdr->ttl = sdata->u.mesh.mshcfg.dot11MeshTTL;
725 put_unaligned(cpu_to_le32(sdata->u.mesh.mesh_seqnum), &meshhdr->seqnum);
726 sdata->u.mesh.mesh_seqnum++;
744 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
761 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
790 sdata = container_of(ifmsh, struct ieee80211_sub_if_data, u.mesh);
847 sdata->u.mesh.security ? WLAN_CAPABILITY_PRIVACY : 0);
964 old_bcn = rcu_dereference_protected(sdata->u.mesh.beacon,
966 ret = ieee80211_mesh_build_beacon(&sdata->u.mesh);
979 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
995 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1005 /* mesh ifaces must set allmulti to forward mcast traffic */
1037 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1064 del_timer_sync(&sdata->u.mesh.housekeeping_timer);
1065 del_timer_sync(&sdata->u.mesh.mesh_path_root_timer);
1066 del_timer_sync(&sdata->u.mesh.mesh_path_timer);
1068 /* clear any mesh work (for next join) we may have accrued */
1098 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1152 "mesh STA %pM switches to unsupported channel (%d MHz, width:%d, CF1/2: %d/%d MHz), aborting\n",
1168 "mesh STA %pM switches to channel requiring DFS (%d MHz, width:%d, CF1/2: %d/%d MHz), aborting\n",
1215 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1276 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1295 /* ignore non-mesh or secure / unsecure mismatch */
1297 (elems.rsn && sdata->u.mesh.security == IEEE80211_MESH_SEC_NONE) ||
1298 (!elems.rsn && sdata->u.mesh.security != IEEE80211_MESH_SEC_NONE))
1313 sdata->u.mesh.mshcfg.rssi_threshold, rx_status->signal);
1314 if (!sdata->u.mesh.user_mpm ||
1315 sdata->u.mesh.mshcfg.rssi_threshold == 0 ||
1316 sdata->u.mesh.mshcfg.rssi_threshold < rx_status->signal)
1332 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1361 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1418 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1495 /* mesh already went down */
1496 if (!sdata->u.mesh.mesh_id_len)
1522 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1544 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1548 /* mesh already went down */
1549 if (!sdata->u.mesh.mesh_id_len)
1575 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh;
1587 /* Allocate all mesh structures when creating the first mesh interface. */