mac80211: Add FILS discovery support
This patch adds mac80211 support to configure FILS discovery transmission. Changes include functions to store and retrieve FILS discovery template, minimum and maximum packet intervals. Signed-off-by: Aloka Dixit <alokad@codeaurora.org> Link: https://lore.kernel.org/r/20200805011838.28166-3-alokad@codeaurora.org [remove SUPPORTS_FILS_DISCOVERY, driver can just set wiphy info] Link: https://lore.kernel.org/r/010101747a7b3cbb-6edaa89c-436d-4391-8765-61456d7f5f4e-000000@us-west-2.amazonses.com Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:

committed by
Johannes Berg

parent
291c49ded2
commit
295b02c4be
@@ -317,6 +317,7 @@ struct ieee80211_vif_chanctx_switch {
|
||||
* @BSS_CHANGED_TWT: TWT status changed
|
||||
* @BSS_CHANGED_HE_OBSS_PD: OBSS Packet Detection status changed.
|
||||
* @BSS_CHANGED_HE_BSS_COLOR: BSS Color has changed
|
||||
* @BSS_CHANGED_FILS_DISCOVERY: FILS discovery status changed.
|
||||
*
|
||||
*/
|
||||
enum ieee80211_bss_change {
|
||||
@@ -350,6 +351,7 @@ enum ieee80211_bss_change {
|
||||
BSS_CHANGED_TWT = 1<<27,
|
||||
BSS_CHANGED_HE_OBSS_PD = 1<<28,
|
||||
BSS_CHANGED_HE_BSS_COLOR = 1<<29,
|
||||
BSS_CHANGED_FILS_DISCOVERY = 1<<30,
|
||||
|
||||
/* when adding here, make sure to change ieee80211_reconfig */
|
||||
};
|
||||
@@ -490,6 +492,18 @@ struct ieee80211_ftm_responder_params {
|
||||
size_t civicloc_len;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ieee80211_fils_discovery - FILS discovery parameters from
|
||||
* IEEE Std 802.11ai-2016, Annex C.3 MIB detail.
|
||||
*
|
||||
* @min_interval: Minimum packet interval in TUs (0 - 10000)
|
||||
* @max_interval: Maximum packet interval in TUs (0 - 10000)
|
||||
*/
|
||||
struct ieee80211_fils_discovery {
|
||||
u32 min_interval;
|
||||
u32 max_interval;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ieee80211_bss_conf - holds the BSS's changing parameters
|
||||
*
|
||||
@@ -607,6 +621,7 @@ struct ieee80211_ftm_responder_params {
|
||||
* @he_oper: HE operation information of the AP we are connected to
|
||||
* @he_obss_pd: OBSS Packet Detection parameters.
|
||||
* @he_bss_color: BSS coloring settings, if BSS supports HE
|
||||
* @fils_discovery: FILS discovery configuration
|
||||
*/
|
||||
struct ieee80211_bss_conf {
|
||||
const u8 *bssid;
|
||||
@@ -674,6 +689,7 @@ struct ieee80211_bss_conf {
|
||||
} he_oper;
|
||||
struct ieee80211_he_obss_pd he_obss_pd;
|
||||
struct cfg80211_he_bss_color he_bss_color;
|
||||
struct ieee80211_fils_discovery fils_discovery;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -6629,4 +6645,15 @@ u32 ieee80211_calc_tx_airtime(struct ieee80211_hw *hw,
|
||||
*/
|
||||
bool ieee80211_set_hw_80211_encap(struct ieee80211_vif *vif, bool enable);
|
||||
|
||||
/**
|
||||
* ieee80211_get_fils_discovery_tmpl - Get FILS discovery template.
|
||||
* @hw: pointer obtained from ieee80211_alloc_hw().
|
||||
* @vif: &struct ieee80211_vif pointer from the add_interface callback.
|
||||
*
|
||||
* The driver is responsible for freeing the returned skb.
|
||||
*
|
||||
* Return: FILS discovery template. %NULL on error.
|
||||
*/
|
||||
struct sk_buff *ieee80211_get_fils_discovery_tmpl(struct ieee80211_hw *hw,
|
||||
struct ieee80211_vif *vif);
|
||||
#endif /* MAC80211_H */
|
||||
|
Reference in New Issue
Block a user