diff options
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 8e7af7cee013..ea9623cbd969 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -554,6 +554,24 @@ struct ieee80211_if_ibss { | |||
554 | } state; | 554 | } state; |
555 | }; | 555 | }; |
556 | 556 | ||
557 | /** | ||
558 | * struct ieee80211_mesh_sync_ops - Extensible synchronization framework interface | ||
559 | * | ||
560 | * these declarations define the interface, which enables | ||
561 | * vendor-specific mesh synchronization | ||
562 | * | ||
563 | */ | ||
564 | struct ieee802_11_elems; | ||
565 | struct ieee80211_mesh_sync_ops { | ||
566 | void (*rx_bcn_presp)(struct ieee80211_sub_if_data *sdata, | ||
567 | u16 stype, | ||
568 | struct ieee80211_mgmt *mgmt, | ||
569 | struct ieee802_11_elems *elems, | ||
570 | struct ieee80211_rx_status *rx_status); | ||
571 | void (*adjust_tbtt)(struct ieee80211_sub_if_data *sdata); | ||
572 | /* add other framework functions here */ | ||
573 | }; | ||
574 | |||
557 | struct ieee80211_if_mesh { | 575 | struct ieee80211_if_mesh { |
558 | struct timer_list housekeeping_timer; | 576 | struct timer_list housekeeping_timer; |
559 | struct timer_list mesh_path_timer; | 577 | struct timer_list mesh_path_timer; |
@@ -602,6 +620,11 @@ struct ieee80211_if_mesh { | |||
602 | IEEE80211_MESH_SEC_AUTHED = 0x1, | 620 | IEEE80211_MESH_SEC_AUTHED = 0x1, |
603 | IEEE80211_MESH_SEC_SECURED = 0x2, | 621 | IEEE80211_MESH_SEC_SECURED = 0x2, |
604 | } security; | 622 | } security; |
623 | /* Extensible Synchronization Framework */ | ||
624 | struct ieee80211_mesh_sync_ops *sync_ops; | ||
625 | s64 sync_offset_clockdrift_max; | ||
626 | spinlock_t sync_offset_lock; | ||
627 | bool adjusting_tbtt; | ||
605 | }; | 628 | }; |
606 | 629 | ||
607 | #ifdef CONFIG_MAC80211_MESH | 630 | #ifdef CONFIG_MAC80211_MESH |