Home
last modified time | relevance | path

Searched refs:mesh (Results 1 – 25 of 46) sorted by relevance

12

/linux/net/mac80211/
H A Dmesh_plink.c20 #define mod_plink_timer(s, t) (mod_timer(&s->mesh->plink_timer, \
61 s32 rssi_threshold = sdata->u.mesh.mshcfg.rssi_threshold; in rssi_threshold_check()
77 lockdep_assert_held(&sta->mesh->plink_lock); in mesh_plink_fsm_restart()
78 sta->mesh->plink_state = NL80211_PLINK_LISTEN; in mesh_plink_fsm_restart()
79 sta->mesh->llid = sta->mesh->plid = sta->mesh->reason = 0; in mesh_plink_fsm_restart()
80 sta->mesh->plink_retries = 0; in mesh_plink_fsm_restart()
125 sta->mesh->plink_state != NL80211_PLINK_ESTAB) in mesh_set_short_slot_time()
178 sta->mesh->plink_state != NL80211_PLINK_ESTAB) in mesh_set_ht_prot_mode()
208 sdata->u.mesh.mshcfg.ht_opmode = ht_opmode; in mesh_set_ht_prot_mode()
237 2 + sdata->u.mesh.mesh_id_len + in mesh_plink_frame_tx()
[all …]
H A Dmesh_ps.c87 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in ieee80211_mps_local_status_update()
100 switch (sta->mesh->plink_state) { in ieee80211_mps_local_status_update()
107 if (sta->mesh->local_pm == NL80211_MESH_POWER_LIGHT_SLEEP) in ieee80211_mps_local_status_update()
109 else if (sta->mesh->local_pm == NL80211_MESH_POWER_DEEP_SLEEP) in ieee80211_mps_local_status_update()
161 if (sta->mesh->local_pm == pm) in ieee80211_mps_set_sta_local_pm()
167 sta->mesh->local_pm = pm; in ieee80211_mps_set_sta_local_pm()
173 if (sta->mesh->plink_state == NL80211_PLINK_ESTAB) in ieee80211_mps_set_sta_local_pm()
205 sta->mesh->plink_state == NL80211_PLINK_ESTAB) in ieee80211_mps_set_frame_flags()
206 pm = sta->mesh->local_pm; in ieee80211_mps_set_frame_flags()
208 pm = sdata->u.mesh.nonpeer_pm; in ieee80211_mps_set_frame_flags()
[all …]
H A Dmesh_pathtbl.c57 cache = &sdata->u.mesh.tx_cache; in mesh_fast_tx_deinit()
66 cache = &sdata->u.mesh.tx_cache; in mesh_fast_tx_init()
270 return mpath_lookup(&sdata->u.mesh.mesh_paths, dst, sdata); in mesh_path_lookup()
276 return mpath_lookup(&sdata->u.mesh.mpp_paths, dst, sdata); in mpp_path_lookup()
313 return __mesh_path_lookup_by_idx(&sdata->u.mesh.mesh_paths, idx); in mesh_path_lookup_by_idx()
328 return __mesh_path_lookup_by_idx(&sdata->u.mesh.mpp_paths, idx); in mpp_path_lookup_by_idx()
343 tbl = &mpath->sdata->u.mesh.mesh_paths; in mesh_path_add_gate()
352 mpath->sdata->u.mesh.num_gates++; in mesh_path_add_gate()
362 mpath->dst, mpath->sdata->u.mesh.num_gates); in mesh_path_add_gate()
383 mpath->sdata->u.mesh.num_gates--; in mesh_gate_del()
[all …]
H A Dmesh_sync.c52 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_sync_adjust_tsf()
88 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_sync_offset_rx_bcn_presp()
130 sta->mesh->t_offset = t_t - t_r; in mesh_sync_offset_rx_bcn_presp()
133 s64 t_clockdrift = sta->mesh->t_offset_setpoint - sta->mesh->t_offset; in mesh_sync_offset_rx_bcn_presp()
136 sta->sta.addr, (long long) sta->mesh->t_offset, in mesh_sync_offset_rx_bcn_presp()
137 (long long) sta->mesh->t_offset_setpoint, in mesh_sync_offset_rx_bcn_presp()
155 sta->mesh->t_offset_setpoint = sta->mesh->t_offset - TOFFSET_SET_MARGIN; in mesh_sync_offset_rx_bcn_presp()
160 (long long) sta->mesh->t_offset); in mesh_sync_offset_rx_bcn_presp()
170 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_sync_offset_adjust_tsf()
H A Dmesh.c42 from_timer(sdata, t, u.mesh.housekeeping_timer); in ieee80211_mesh_housekeeping_timer()
44 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in ieee80211_mesh_housekeeping_timer()
65 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_matches_local()
154 if (free_plinks != sdata->u.mesh.accepting_plinks) { in mesh_accept_plinks_update()
155 sdata->u.mesh.accepting_plinks = free_plinks; in mesh_accept_plinks_update()
180 sdata->u.mesh.rmc = kmalloc(sizeof(struct mesh_rmc), GFP_KERNEL); in mesh_rmc_init()
181 if (!sdata->u.mesh.rmc) in mesh_rmc_init()
183 sdata->u.mesh.rmc->idx_mask = RMC_BUCKETS - 1; in mesh_rmc_init()
185 INIT_HLIST_HEAD(&sdata->u.mesh.rmc->bucket[i]); in mesh_rmc_init()
191 struct mesh_rmc *rmc = sdata->u.mesh.rmc; in mesh_rmc_free()
[all …]
H A Ddebugfs_netdev.c741 IEEE80211_IF_FILE(estab_plinks, u.mesh.estab_plinks, ATOMIC);
744 IEEE80211_IF_FILE(fwded_mcast, u.mesh.mshstats.fwded_mcast, DEC);
745 IEEE80211_IF_FILE(fwded_unicast, u.mesh.mshstats.fwded_unicast, DEC);
746 IEEE80211_IF_FILE(fwded_frames, u.mesh.mshstats.fwded_frames, DEC);
747 IEEE80211_IF_FILE(dropped_frames_ttl, u.mesh.mshstats.dropped_frames_ttl, DEC);
749 u.mesh.mshstats.dropped_frames_no_route, DEC);
753 u.mesh.mshcfg.dot11MeshMaxRetries, DEC);
755 u.mesh.mshcfg.dot11MeshRetryTimeout, DEC);
757 u.mesh.mshcfg.dot11MeshConfirmTimeout, DEC);
759 u.mesh.mshcfg.dot11MeshHoldingTimeout, DEC);
[all …]
H A DKconfig71 bool "Enable mac80211 mesh networking support"
74 Select this option to enable 802.11 mesh operation in mac80211
75 drivers that support it. 802.11 mesh connects multiple stations
210 bool "Verbose mesh peer link debugging"
215 verbose mesh peer link debugging messages (when mac80211
216 is taking part in a mesh network).
223 bool "Verbose mesh path debugging"
228 verbose mesh path selection debugging messages (when mac80211
229 is taking part in a mesh network).
236 bool "Verbose mesh HWMP routing debugging"
[all …]
H A Dmesh_hwmp.c80 msecs_to_jiffies(s->u.mesh.mshcfg.dot11MeshHWMPnetDiameterTraversalTime)
82 MSEC_TO_TU(s->u.mesh.mshcfg.dot11MeshHWMPactivePathTimeout)
84 (msecs_to_jiffies(s->u.mesh.mshcfg.dot11MeshHWMPpreqMinInterval))
85 #define max_preq_retries(s) (s->u.mesh.mshcfg.dot11MeshHWMPmaxPREQretries)
87 msecs_to_jiffies(sdata->u.mesh.mshcfg.min_discovery_timeout)
89 msecs_to_jiffies(sdata->u.mesh.mshcfg.dot11MeshHWMPconfirmationInterval)
242 struct ieee80211_if_mesh *ifmsh = &sdata->u.mesh; in mesh_path_error_tx()
310 ewma_mesh_fail_avg_add(&sta->mesh->fail_avg, failed * 100); in ieee80211s_update_metric()
311 if (ewma_mesh_fail_avg_read(&sta->mesh->fail_avg) > in ieee80211s_update_metric()
321 ewma_mesh_tx_rate_avg_add(&sta->mesh->tx_rate_avg, in ieee80211s_update_metric()
[all …]
H A Dmesh.h385 atomic_inc(&sdata->u.mesh.estab_plinks); in mesh_plink_inc_estab_count()
392 atomic_dec(&sdata->u.mesh.estab_plinks); in mesh_plink_dec_estab_count()
398 return sdata->u.mesh.mshcfg.dot11MeshMaxPeerLinks - in mesh_plink_free_count()
399 atomic_read(&sdata->u.mesh.estab_plinks); in mesh_plink_free_count()
415 return sdata->u.mesh.mesh_pp_id == IEEE80211_PATH_PROTOCOL_HWMP; in mesh_path_sel_is_hwmp()
H A Dsta_info.c28 #include "mesh.h"
44 * particular, it may not start any mesh peer link management or add
148 ps = &sdata->u.mesh.ps; in __cleanup_single_sta()
442 kfree(sta->mesh); in sta_info_free()
570 sta->mesh = kzalloc(sizeof(*sta->mesh), gfp); in __sta_info_alloc()
571 if (!sta->mesh) in __sta_info_alloc()
573 sta->mesh->plink_sta = sta; in __sta_info_alloc()
574 spin_lock_init(&sta->mesh->plink_lock); in __sta_info_alloc()
575 if (!sdata->u.mesh in __sta_info_alloc()
[all...]
H A DMakefile49 mesh.o \
H A Dcfg.c547 if (sdata->u.mesh.security != IEEE80211_MESH_SEC_NONE) in ieee80211_add_key()
1756 if (sta->mesh->plink_state != NL80211_PLINK_ESTAB) in sta_apply_mesh_params()
1758 sta->mesh->plink_state = params->plink_state; in sta_apply_mesh_params()
1759 sta->mesh->aid = params->peer_aid; in sta_apply_mesh_params()
1763 sdata->u.mesh.mshcfg.power_mode); in sta_apply_mesh_params()
1765 ewma_mesh_tx_rate_avg_init(&sta->mesh->tx_rate_avg); in sta_apply_mesh_params()
1767 ewma_mesh_tx_rate_avg_add(&sta->mesh->tx_rate_avg, 10); in sta_apply_mesh_params()
1776 if (sta->mesh->plink_state == NL80211_PLINK_ESTAB) in sta_apply_mesh_params()
1778 sta->mesh->plink_state = params->plink_state; in sta_apply_mesh_params()
2175 if (sdata->u.mesh.user_mpm) in ieee80211_change_station()
[all …]
H A Dsta_info.h669 struct mesh_sta *mesh; member
739 return sta->mesh->plink_state; in sta_plink_state()
H A Doffchannel.c844 !sdata->u.mesh.mesh_id_len) in ieee80211_mgmt_tx()
989 beacon = rcu_dereference(sdata->u.mesh.beacon); in ieee80211_mgmt_tx()
/linux/net/wireless/
H A Dmesh.c121 if (wdev->u.mesh.id_len) in __cfg80211_join_mesh()
135 setup->chandef = wdev->u.mesh.preset_chandef; in __cfg80211_join_mesh()
216 memcpy(wdev->u.mesh.id, setup->mesh_id, setup->mesh_id_len); in __cfg80211_join_mesh()
217 wdev->u.mesh.id_len = setup->mesh_id_len; in __cfg80211_join_mesh()
218 wdev->u.mesh.chandef = setup->chandef; in __cfg80211_join_mesh()
219 wdev->u.mesh.beacon_interval = setup->beacon_interval; in __cfg80211_join_mesh()
248 wdev->u.mesh.chandef = *chandef; in cfg80211_set_mesh_channel()
253 if (wdev->u.mesh.id_len) in cfg80211_set_mesh_channel()
256 wdev->u.mesh.preset_chandef = *chandef; in cfg80211_set_mesh_channel()
274 if (!wdev->u.mesh.id_len) in cfg80211_leave_mesh()
[all …]
H A DMakefile15 cfg80211-y += mlme.o ibss.o sme.o chan.o ethtool.o mesh.o ap.o trace.o ocb.o
H A Dchan.c945 if (wdev->u.mesh.id_len) in cfg80211_beaconing_iface_active()
985 return cfg80211_is_sub_chan(&wdev->u.mesh.chandef, chan, in cfg80211_wdev_on_sub_chan()
1682 return &wdev->u.mesh.chandef; in wdev_chandef()
/linux/net/batman-adv/
H A DKconfig15 a routing protocol for multi-hop ad-hoc mesh networks. The
17 https://www.open-mesh.org/ for more information and user space
41 to avoid Ethernet frames looping when mesh nodes are connected
42 to both the same LAN and the same mesh. If you will never use
43 more than one mesh node in the same LAN, you can safely remove
53 mesh networks. If you think that your network does not need
/linux/Documentation/networking/
H A Dbatman-adv.rst56 There are additional settings for each batadv mesh interface, vlan and hardif
72 lower value. This will make the mesh more responsive to topology changes, but
83 To make use of your newly created mesh, batman advanced provides a new
117 When investigating problems with your mesh network, it is sometimes necessary to
151 batctl is available on https://www.open-mesh.org/
162 b.a.t.m.a.n@lists.open-mesh.org (optional subscription at
163 https://lists.open-mesh.org/mailman3/postorius/lists/b.a.t.m.a.n.lists.open-mesh.org/)
/linux/drivers/scsi/
H A Dmesh.c145 volatile struct mesh_regs __iomem *mesh; member
223 tlp->bs0 = ms->mesh->bus_status0; in dlog()
224 tlp->bs1 = ms->mesh->bus_status1; in dlog()
305 volatile struct mesh_regs __iomem *mr = ms->mesh; in mesh_dump_regs()
351 volatile struct mesh_regs __iomem *mr = ms->mesh; in mesh_init()
398 volatile struct mesh_regs __iomem *mr = ms->mesh; in mesh_start_cmd()
612 out_8(&ms->mesh->sequence, SEQ_ENBRESEL); in mesh_done()
613 mesh_flush_io(ms->mesh); in mesh_done()
635 volatile struct mesh_regs __iomem *mr = ms->mesh; in set_sdtr()
676 volatile struct mesh_regs __iomem *mr = ms->mesh; in start_phase()
[all …]
/linux/drivers/net/wireless/marvell/libertas/
H A DMakefile11 libertas-$(CONFIG_LIBERTAS_MESH) += mesh.o
H A Dmesh.c112 ie->val.mesh_id_len = mesh_wdev->u.mesh.id_up_len; in lbs_mesh_config()
113 memcpy(ie->val.mesh_id, mesh_wdev->u.mesh.id, in lbs_mesh_config()
114 mesh_wdev->u.mesh.id_up_len); in lbs_mesh_config()
1004 sprintf(mesh_wdev->u.mesh.id, "mesh"); in lbs_add_mesh()
1005 mesh_wdev->u.mesh.id_up_len = 4; in lbs_add_mesh()
H A DKconfig36 bool "Enable mesh support"
/linux/Documentation/admin-guide/perf/
H A Darm-cmn.rst5 CMN-600 is a configurable mesh interconnect consisting of a rectangular
22 each mesh counts its own events entirely independently, and additional
/linux/arch/arm/boot/dts/nxp/imx/
H A Dimx7d-flex-concentrator.dts66 label = "hmi-c:red:mesh-error";
71 label = "hmi-c:green:mesh-activity";

12