Merge tag 'mac80211-next-for-net-next-2020-10-02' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next
Johannes Berg says: ==================== Another set of changes, this time with: * lots more S1G band support * 6 GHz scanning, finally * kernel-doc fixes * non-split wiphy dump fixes in nl80211 * various other small cleanups/features ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -269,13 +269,23 @@ struct ieee80211_rate {
|
||||
* struct ieee80211_he_obss_pd - AP settings for spatial reuse
|
||||
*
|
||||
* @enable: is the feature enabled.
|
||||
* @sr_ctrl: The SR Control field of SRP element.
|
||||
* @non_srg_max_offset: non-SRG maximum tx power offset
|
||||
* @min_offset: minimal tx power offset an associated station shall use
|
||||
* @max_offset: maximum tx power offset an associated station shall use
|
||||
* @bss_color_bitmap: bitmap that indicates the BSS color values used by
|
||||
* members of the SRG
|
||||
* @partial_bssid_bitmap: bitmap that indicates the partial BSSID values
|
||||
* used by members of the SRG
|
||||
*/
|
||||
struct ieee80211_he_obss_pd {
|
||||
bool enable;
|
||||
u8 sr_ctrl;
|
||||
u8 non_srg_max_offset;
|
||||
u8 min_offset;
|
||||
u8 max_offset;
|
||||
u8 bss_color_bitmap[8];
|
||||
u8 partial_bssid_bitmap[8];
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -2095,6 +2105,27 @@ struct cfg80211_scan_info {
|
||||
bool aborted;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct cfg80211_scan_6ghz_params - relevant for 6 GHz only
|
||||
*
|
||||
* @short_bssid: short ssid to scan for
|
||||
* @bssid: bssid to scan for
|
||||
* @channel_idx: idx of the channel in the channel array in the scan request
|
||||
* which the above info relvant to
|
||||
* @unsolicited_probe: the AP transmits unsolicited probe response every 20 TU
|
||||
* @short_ssid_valid: short_ssid is valid and can be used
|
||||
* @psc_no_listen: when set, and the channel is a PSC channel, no need to wait
|
||||
* 20 TUs before starting to send probe requests.
|
||||
*/
|
||||
struct cfg80211_scan_6ghz_params {
|
||||
u32 short_ssid;
|
||||
u32 channel_idx;
|
||||
u8 bssid[ETH_ALEN];
|
||||
bool unsolicited_probe;
|
||||
bool short_ssid_valid;
|
||||
bool psc_no_listen;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct cfg80211_scan_request - scan request description
|
||||
*
|
||||
@@ -2122,6 +2153,10 @@ struct cfg80211_scan_info {
|
||||
* @mac_addr_mask: MAC address mask used with randomisation, bits that
|
||||
* are 0 in the mask should be randomised, bits that are 1 should
|
||||
* be taken from the @mac_addr
|
||||
* @scan_6ghz: relevant for split scan request only,
|
||||
* true if this is the second scan request
|
||||
* @n_6ghz_params: number of 6 GHz params
|
||||
* @scan_6ghz_params: 6 GHz params
|
||||
* @bssid: BSSID to scan for (most commonly, the wildcard BSSID)
|
||||
*/
|
||||
struct cfg80211_scan_request {
|
||||
@@ -2149,6 +2184,9 @@ struct cfg80211_scan_request {
|
||||
struct cfg80211_scan_info info;
|
||||
bool notified;
|
||||
bool no_cck;
|
||||
bool scan_6ghz;
|
||||
u32 n_6ghz_params;
|
||||
struct cfg80211_scan_6ghz_params *scan_6ghz_params;
|
||||
|
||||
/* keep last */
|
||||
struct ieee80211_channel *channels[];
|
||||
@@ -2528,6 +2566,8 @@ enum cfg80211_assoc_req_flags {
|
||||
* @fils_nonces: FILS nonces (part of AAD) for protecting (Re)Association
|
||||
* Request/Response frame or %NULL if FILS is not used. This field starts
|
||||
* with 16 octets of STA Nonce followed by 16 octets of AP Nonce.
|
||||
* @s1g_capa: S1G capability override
|
||||
* @s1g_capa_mask: S1G capability override mask
|
||||
*/
|
||||
struct cfg80211_assoc_request {
|
||||
struct cfg80211_bss *bss;
|
||||
@@ -2542,6 +2582,7 @@ struct cfg80211_assoc_request {
|
||||
const u8 *fils_kek;
|
||||
size_t fils_kek_len;
|
||||
const u8 *fils_nonces;
|
||||
struct ieee80211_s1g_cap s1g_capa, s1g_capa_mask;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -4217,6 +4258,8 @@ struct cfg80211_ops {
|
||||
/**
|
||||
* enum wiphy_flags - wiphy capability flags
|
||||
*
|
||||
* @WIPHY_FLAG_SPLIT_SCAN_6GHZ: if set to true, the scan request will be split
|
||||
* into two, first for legacy bands and second for UHB.
|
||||
* @WIPHY_FLAG_NETNS_OK: if not set, do not allow changing the netns of this
|
||||
* wiphy at all
|
||||
* @WIPHY_FLAG_PS_ON_BY_DEFAULT: if set to true, powersave will be enabled
|
||||
@@ -4260,7 +4303,7 @@ struct cfg80211_ops {
|
||||
enum wiphy_flags {
|
||||
WIPHY_FLAG_SUPPORTS_EXT_KEK_KCK = BIT(0),
|
||||
/* use hole at 1 */
|
||||
/* use hole at 2 */
|
||||
WIPHY_FLAG_SPLIT_SCAN_6GHZ = BIT(2),
|
||||
WIPHY_FLAG_NETNS_OK = BIT(3),
|
||||
WIPHY_FLAG_PS_ON_BY_DEFAULT = BIT(4),
|
||||
WIPHY_FLAG_4ADDR_AP = BIT(5),
|
||||
|
||||
@@ -627,6 +627,7 @@ struct ieee80211_fils_discovery {
|
||||
* @fils_discovery: FILS discovery configuration
|
||||
* @unsol_bcast_probe_resp_interval: Unsolicited broadcast probe response
|
||||
* interval.
|
||||
* @s1g: BSS is S1G BSS (affects Association Request format).
|
||||
*/
|
||||
struct ieee80211_bss_conf {
|
||||
const u8 *bssid;
|
||||
@@ -696,6 +697,7 @@ struct ieee80211_bss_conf {
|
||||
struct cfg80211_he_bss_color he_bss_color;
|
||||
struct ieee80211_fils_discovery fils_discovery;
|
||||
u32 unsol_bcast_probe_resp_interval;
|
||||
bool s1g;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -833,6 +835,8 @@ enum mac80211_tx_info_flags {
|
||||
|
||||
#define IEEE80211_TX_CTL_STBC_SHIFT 23
|
||||
|
||||
#define IEEE80211_TX_RC_S1G_MCS IEEE80211_TX_RC_VHT_MCS
|
||||
|
||||
/**
|
||||
* enum mac80211_tx_control_flags - flags to describe transmit control
|
||||
*
|
||||
@@ -5403,11 +5407,15 @@ void ieee80211_sched_scan_stopped(struct ieee80211_hw *hw);
|
||||
* @IEEE80211_IFACE_ITER_RESUME_ALL: During resume, iterate over all
|
||||
* interfaces, even if they haven't been re-added to the driver yet.
|
||||
* @IEEE80211_IFACE_ITER_ACTIVE: Iterate only active interfaces (netdev is up).
|
||||
* @IEEE80211_IFACE_SKIP_SDATA_NOT_IN_DRIVER: Skip any interfaces where SDATA
|
||||
* is not in the driver. This may fix crashes during firmware recovery
|
||||
* for instance.
|
||||
*/
|
||||
enum ieee80211_interface_iteration_flags {
|
||||
IEEE80211_IFACE_ITER_NORMAL = 0,
|
||||
IEEE80211_IFACE_ITER_RESUME_ALL = BIT(0),
|
||||
IEEE80211_IFACE_ITER_ACTIVE = BIT(1),
|
||||
IEEE80211_IFACE_SKIP_SDATA_NOT_IN_DRIVER = BIT(2),
|
||||
};
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user