ANDROID: nl80211/cfg80211: Add support to do API changes after GKI freeze
Reserve sufficient nl80211 attributes in enum nl80211_commands and enum nl80211_attr to backport upstream UAPI changes. Reserve data fields for upstream backport changes and vendor hooks. Also, add vendor hooks to set/get additional info from driver based on the cfg80211 current context. These APIs can be used to configure/fetch data of the new params added in upstream cfg80211_op calls. Ex: upstream kernel added a new param to existing cfg80211_op "add_key()". The addtional param info added in the upstream kernel can be configured using "android_vh_cfg80211_set_context" before calling "add_key". Bug: 233387627 Change-Id: I99f696ad291ae5965fc6d91bf565cc0c9d423dd5 Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
This commit is contained in:
parent
3dc56c75d2
commit
bee631cec5
|
@ -67,6 +67,7 @@
|
||||||
#include <trace/hooks/evdev.h>
|
#include <trace/hooks/evdev.h>
|
||||||
#include <trace/hooks/ipv4.h>
|
#include <trace/hooks/ipv4.h>
|
||||||
#include <trace/hooks/signal.h>
|
#include <trace/hooks/signal.h>
|
||||||
|
#include <trace/hooks/cfg80211.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Export tracepoints that act as a bare tracehook (ie: have no trace event
|
* Export tracepoints that act as a bare tracehook (ie: have no trace event
|
||||||
|
@ -370,3 +371,5 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sd_update_bus_speed_mode);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_attach_sd);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_attach_sd);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sdhci_get_cd);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_sdhci_get_cd);
|
||||||
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_gpio_cd_irqt);
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_mmc_gpio_cd_irqt);
|
||||||
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cfg80211_set_context);
|
||||||
|
EXPORT_TRACEPOINT_SYMBOL_GPL(android_vh_cfg80211_get_context);
|
||||||
|
|
|
@ -434,6 +434,16 @@ struct ieee80211_sband_iftype_data {
|
||||||
const u8 *data;
|
const u8 *data;
|
||||||
unsigned int len;
|
unsigned int len;
|
||||||
} vendor_elems;
|
} vendor_elems;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -543,6 +553,16 @@ struct ieee80211_supported_band {
|
||||||
struct ieee80211_edmg edmg_cap;
|
struct ieee80211_edmg edmg_cap;
|
||||||
u16 n_iftype_data;
|
u16 n_iftype_data;
|
||||||
const struct ieee80211_sband_iftype_data *iftype_data;
|
const struct ieee80211_sband_iftype_data *iftype_data;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -729,6 +749,12 @@ struct key_params {
|
||||||
u16 vlan_id;
|
u16 vlan_id;
|
||||||
u32 cipher;
|
u32 cipher;
|
||||||
enum nl80211_key_mode mode;
|
enum nl80211_key_mode mode;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -751,6 +777,16 @@ struct cfg80211_chan_def {
|
||||||
u32 center_freq2;
|
u32 center_freq2;
|
||||||
struct ieee80211_edmg edmg;
|
struct ieee80211_edmg edmg;
|
||||||
u16 freq1_offset;
|
u16 freq1_offset;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -1126,6 +1162,12 @@ struct cfg80211_crypto_settings {
|
||||||
u8 sae_pwd_len;
|
u8 sae_pwd_len;
|
||||||
enum nl80211_sae_pwe_mechanism sae_pwe;
|
enum nl80211_sae_pwe_mechanism sae_pwe;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1211,6 +1253,16 @@ struct cfg80211_beacon_data {
|
||||||
struct cfg80211_he_bss_color he_bss_color;
|
struct cfg80211_he_bss_color he_bss_color;
|
||||||
bool he_bss_color_valid;
|
bool he_bss_color_valid;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1339,6 +1391,18 @@ struct cfg80211_ap_settings {
|
||||||
struct cfg80211_unsol_bcast_probe_resp unsol_bcast_probe_resp;
|
struct cfg80211_unsol_bcast_probe_resp unsol_bcast_probe_resp;
|
||||||
struct cfg80211_mbssid_config mbssid_config;
|
struct cfg80211_mbssid_config mbssid_config;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
ANDROID_BACKPORT_RESERVED(5);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
ANDROID_VENDOR_DATA(5);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1370,6 +1434,12 @@ struct cfg80211_csa_settings {
|
||||||
bool block_tx;
|
bool block_tx;
|
||||||
u8 count;
|
u8 count;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1537,6 +1607,16 @@ struct station_parameters {
|
||||||
const struct ieee80211_eht_cap_elem *eht_capa;
|
const struct ieee80211_eht_cap_elem *eht_capa;
|
||||||
u8 eht_capa_len;
|
u8 eht_capa_len;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1686,6 +1766,12 @@ struct rate_info {
|
||||||
u8 n_bonded_ch;
|
u8 n_bonded_ch;
|
||||||
u8 eht_gi;
|
u8 eht_gi;
|
||||||
u8 eht_ru_alloc;
|
u8 eht_ru_alloc;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1898,6 +1984,16 @@ struct station_info {
|
||||||
|
|
||||||
u8 connected_to_as;
|
u8 connected_to_as;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -2415,6 +2511,16 @@ struct cfg80211_scan_request {
|
||||||
u32 n_6ghz_params;
|
u32 n_6ghz_params;
|
||||||
struct cfg80211_scan_6ghz_params *scan_6ghz_params;
|
struct cfg80211_scan_6ghz_params *scan_6ghz_params;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
|
@ -2563,6 +2669,16 @@ struct cfg80211_sched_scan_request {
|
||||||
bool nl_owner_dead;
|
bool nl_owner_dead;
|
||||||
struct list_head list;
|
struct list_head list;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
|
@ -2611,6 +2727,12 @@ struct cfg80211_inform_bss {
|
||||||
u8 parent_bssid[ETH_ALEN] __aligned(2);
|
u8 parent_bssid[ETH_ALEN] __aligned(2);
|
||||||
u8 chains;
|
u8 chains;
|
||||||
s8 chain_signal[IEEE80211_MAX_CHAINS];
|
s8 chain_signal[IEEE80211_MAX_CHAINS];
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2688,6 +2810,16 @@ struct cfg80211_bss {
|
||||||
u8 bssid_index;
|
u8 bssid_index;
|
||||||
u8 max_bssid_indicator;
|
u8 max_bssid_indicator;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
|
||||||
u8 priv[] __aligned(sizeof(void *));
|
u8 priv[] __aligned(sizeof(void *));
|
||||||
|
@ -3037,6 +3169,18 @@ struct cfg80211_connect_params {
|
||||||
bool want_1x;
|
bool want_1x;
|
||||||
struct ieee80211_edmg edmg;
|
struct ieee80211_edmg edmg;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
ANDROID_BACKPORT_RESERVED(5);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
ANDROID_VENDOR_DATA(5);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -3130,6 +3274,14 @@ struct cfg80211_pmksa {
|
||||||
const u8 *cache_id;
|
const u8 *cache_id;
|
||||||
u32 pmk_lifetime;
|
u32 pmk_lifetime;
|
||||||
u8 pmk_reauth_threshold;
|
u8 pmk_reauth_threshold;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3315,6 +3467,14 @@ struct cfg80211_gtk_rekey_data {
|
||||||
const u8 *kek, *kck, *replay_ctr;
|
const u8 *kek, *kck, *replay_ctr;
|
||||||
u32 akm;
|
u32 akm;
|
||||||
u8 kek_len, kck_len;
|
u8 kek_len, kck_len;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3357,6 +3517,12 @@ struct cfg80211_mgmt_tx_params {
|
||||||
bool dont_wait_for_ack;
|
bool dont_wait_for_ack;
|
||||||
int n_csa_offsets;
|
int n_csa_offsets;
|
||||||
const u16 *csa_offsets;
|
const u16 *csa_offsets;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3543,6 +3709,14 @@ struct cfg80211_external_auth_params {
|
||||||
unsigned int key_mgmt_suite;
|
unsigned int key_mgmt_suite;
|
||||||
u16 status;
|
u16 status;
|
||||||
const u8 *pmkid;
|
const u8 *pmkid;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3804,6 +3978,14 @@ struct cfg80211_update_owe_info {
|
||||||
u16 status;
|
u16 status;
|
||||||
const u8 *ie;
|
const u8 *ie;
|
||||||
size_t ie_len;
|
size_t ie_len;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -4528,6 +4710,18 @@ struct cfg80211_ops {
|
||||||
int (*set_radar_background)(struct wiphy *wiphy,
|
int (*set_radar_background)(struct wiphy *wiphy,
|
||||||
struct cfg80211_chan_def *chandef);
|
struct cfg80211_chan_def *chandef);
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
ANDROID_BACKPORT_RESERVED(5);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
ANDROID_VENDOR_DATA(5);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
ANDROID_KABI_RESERVE(2);
|
ANDROID_KABI_RESERVE(2);
|
||||||
ANDROID_KABI_RESERVE(3);
|
ANDROID_KABI_RESERVE(3);
|
||||||
|
@ -4619,6 +4813,12 @@ enum wiphy_flags {
|
||||||
struct ieee80211_iface_limit {
|
struct ieee80211_iface_limit {
|
||||||
u16 max;
|
u16 max;
|
||||||
u16 types;
|
u16 types;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -4736,6 +4936,18 @@ struct ieee80211_iface_combination {
|
||||||
* combination must be greater or equal to this value.
|
* combination must be greater or equal to this value.
|
||||||
*/
|
*/
|
||||||
u32 beacon_int_min_gcd;
|
u32 beacon_int_min_gcd;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct ieee80211_txrx_stypes {
|
struct ieee80211_txrx_stypes {
|
||||||
|
@ -5321,6 +5533,29 @@ struct wiphy {
|
||||||
u8 mbssid_max_interfaces;
|
u8 mbssid_max_interfaces;
|
||||||
u8 ema_max_profile_periodicity;
|
u8 ema_max_profile_periodicity;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
ANDROID_BACKPORT_RESERVED(5);
|
||||||
|
ANDROID_BACKPORT_RESERVED(6);
|
||||||
|
ANDROID_BACKPORT_RESERVED(7);
|
||||||
|
ANDROID_BACKPORT_RESERVED(8);
|
||||||
|
ANDROID_BACKPORT_RESERVED(9);
|
||||||
|
ANDROID_BACKPORT_RESERVED(10);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
ANDROID_VENDOR_DATA(5);
|
||||||
|
ANDROID_VENDOR_DATA(6);
|
||||||
|
ANDROID_VENDOR_DATA(7);
|
||||||
|
ANDROID_VENDOR_DATA(8);
|
||||||
|
ANDROID_VENDOR_DATA(9);
|
||||||
|
ANDROID_VENDOR_DATA(10);
|
||||||
|
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
|
|
||||||
char priv[] __aligned(NETDEV_ALIGN);
|
char priv[] __aligned(NETDEV_ALIGN);
|
||||||
|
@ -5682,6 +5917,18 @@ struct wireless_dev {
|
||||||
|
|
||||||
unsigned long unprot_beacon_reported;
|
unsigned long unprot_beacon_reported;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
ANDROID_BACKPORT_RESERVED(5);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
|
ANDROID_VENDOR_DATA(5);
|
||||||
|
|
||||||
ANDROID_KABI_RESERVE(1);
|
ANDROID_KABI_RESERVE(1);
|
||||||
ANDROID_KABI_RESERVE(2);
|
ANDROID_KABI_RESERVE(2);
|
||||||
};
|
};
|
||||||
|
@ -7196,6 +7443,12 @@ struct cfg80211_fils_resp_params {
|
||||||
const u8 *pmk;
|
const u8 *pmk;
|
||||||
size_t pmk_len;
|
size_t pmk_len;
|
||||||
const u8 *pmkid;
|
const u8 *pmkid;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -7237,6 +7490,16 @@ struct cfg80211_connect_resp_params {
|
||||||
size_t resp_ie_len;
|
size_t resp_ie_len;
|
||||||
struct cfg80211_fils_resp_params fils;
|
struct cfg80211_fils_resp_params fils;
|
||||||
enum nl80211_timeout_reason timeout_reason;
|
enum nl80211_timeout_reason timeout_reason;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -7396,6 +7659,16 @@ struct cfg80211_roam_info {
|
||||||
const u8 *resp_ie;
|
const u8 *resp_ie;
|
||||||
size_t resp_ie_len;
|
size_t resp_ie_len;
|
||||||
struct cfg80211_fils_resp_params fils;
|
struct cfg80211_fils_resp_params fils;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
ANDROID_BACKPORT_RESERVED(3);
|
||||||
|
ANDROID_BACKPORT_RESERVED(4);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
|
ANDROID_VENDOR_DATA(3);
|
||||||
|
ANDROID_VENDOR_DATA(4);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -8055,6 +8328,12 @@ struct cfg80211_ft_event_params {
|
||||||
const u8 *target_ap;
|
const u8 *target_ap;
|
||||||
const u8 *ric_ies;
|
const u8 *ric_ies;
|
||||||
size_t ric_ies_len;
|
size_t ric_ies_len;
|
||||||
|
|
||||||
|
ANDROID_BACKPORT_RESERVED(1);
|
||||||
|
ANDROID_BACKPORT_RESERVED(2);
|
||||||
|
|
||||||
|
ANDROID_VENDOR_DATA(1);
|
||||||
|
ANDROID_VENDOR_DATA(2);
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||||||
|
#undef TRACE_SYSTEM
|
||||||
|
#define TRACE_SYSTEM cfg80211
|
||||||
|
|
||||||
|
#define TRACE_INCLUDE_PATH trace/hooks
|
||||||
|
|
||||||
|
#if !defined(_TRACE_HOOK_CFG80211_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||||
|
#define _TRACE_HOOK_CFG80211_H
|
||||||
|
|
||||||
|
#include <trace/hooks/vendor_hooks.h>
|
||||||
|
#include <net/cfg80211.h>
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_cfg80211_set_context,
|
||||||
|
TP_PROTO(struct wiphy *wiphy, struct wireless_dev *wdev, int context_id,
|
||||||
|
const void *data),
|
||||||
|
TP_ARGS(wiphy, wdev, context_id, data));
|
||||||
|
|
||||||
|
DECLARE_HOOK(android_vh_cfg80211_get_context,
|
||||||
|
TP_PROTO(struct wiphy *wiphy, struct wireless_dev *wdev, int context_id,
|
||||||
|
void *data, size_t max_data_len),
|
||||||
|
TP_ARGS(wiphy, wdev, context_id, data, max_data_len));
|
||||||
|
|
||||||
|
#endif /* _TRACE_HOOK_CFG80211_H */
|
||||||
|
/* This part must be outside protection */
|
||||||
|
#include <trace/define_trace.h>
|
|
@ -1481,6 +1481,17 @@ enum nl80211_commands {
|
||||||
|
|
||||||
NL80211_CMD_ASSOC_COMEBACK,
|
NL80211_CMD_ASSOC_COMEBACK,
|
||||||
|
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_1 = 148,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_2 = 149,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_3 = 150,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_4 = 151,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_5 = 152,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_6 = 153,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_7 = 154,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_8 = 155,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_9 = 156,
|
||||||
|
NL80211_CMD_RESERVED_DO_NOT_USE_10 = 157,
|
||||||
|
|
||||||
/* add new commands above here */
|
/* add new commands above here */
|
||||||
|
|
||||||
/* used to define NL80211_CMD_MAX below */
|
/* used to define NL80211_CMD_MAX below */
|
||||||
|
@ -3177,6 +3188,32 @@ enum nl80211_attrs {
|
||||||
|
|
||||||
NL80211_ATTR_DISABLE_EHT,
|
NL80211_ATTR_DISABLE_EHT,
|
||||||
|
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_1 = 312,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_2 = 313,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_3 = 314,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_4 = 315,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_5 = 316,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_6 = 317,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_7 = 318,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_8 = 319,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_9 = 320,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_10 = 321,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_11 = 322,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_12 = 323,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_13 = 324,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_14 = 325,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_15 = 326,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_16 = 327,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_17 = 328,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_18 = 329,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_19 = 330,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_20 = 331,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_21 = 332,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_22 = 333,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_23 = 334,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_24 = 335,
|
||||||
|
NL80211_ATTR_RESERVED_DO_NOT_USE_25 = 336,
|
||||||
|
|
||||||
/* add attributes here, update the policy in nl80211.c */
|
/* add attributes here, update the policy in nl80211.c */
|
||||||
|
|
||||||
__NL80211_ATTR_AFTER_LAST,
|
__NL80211_ATTR_AFTER_LAST,
|
||||||
|
@ -3524,6 +3561,11 @@ enum nl80211_rate_info {
|
||||||
NL80211_RATE_INFO_EHT_NSS,
|
NL80211_RATE_INFO_EHT_NSS,
|
||||||
NL80211_RATE_INFO_EHT_GI,
|
NL80211_RATE_INFO_EHT_GI,
|
||||||
NL80211_RATE_INFO_EHT_RU_ALLOC,
|
NL80211_RATE_INFO_EHT_RU_ALLOC,
|
||||||
|
NL80211_RATE_INFO_RESERVED_DO_NOT_USE_1 = 23,
|
||||||
|
NL80211_RATE_INFO_RESERVED_DO_NOT_USE_2 = 24,
|
||||||
|
NL80211_RATE_INFO_RESERVED_DO_NOT_USE_3 = 25,
|
||||||
|
NL80211_RATE_INFO_RESERVED_DO_NOT_USE_4 = 26,
|
||||||
|
NL80211_RATE_INFO_RESERVED_DO_NOT_USE_5 = 27,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_RATE_INFO_AFTER_LAST,
|
__NL80211_RATE_INFO_AFTER_LAST,
|
||||||
|
@ -3554,6 +3596,9 @@ enum nl80211_sta_bss_param {
|
||||||
NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME,
|
NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME,
|
||||||
NL80211_STA_BSS_PARAM_DTIM_PERIOD,
|
NL80211_STA_BSS_PARAM_DTIM_PERIOD,
|
||||||
NL80211_STA_BSS_PARAM_BEACON_INTERVAL,
|
NL80211_STA_BSS_PARAM_BEACON_INTERVAL,
|
||||||
|
NL80211_STA_BSS_PARAM_RESERVED_DO_NOT_USE_1 = 6,
|
||||||
|
NL80211_STA_BSS_PARAM_RESERVED_DO_NOT_USE_2 = 7,
|
||||||
|
NL80211_STA_BSS_PARAM_RESERVED_DO_NOT_USE_3 = 8,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_STA_BSS_PARAM_AFTER_LAST,
|
__NL80211_STA_BSS_PARAM_AFTER_LAST,
|
||||||
|
@ -3688,6 +3733,11 @@ enum nl80211_sta_info {
|
||||||
NL80211_STA_INFO_AIRTIME_LINK_METRIC,
|
NL80211_STA_INFO_AIRTIME_LINK_METRIC,
|
||||||
NL80211_STA_INFO_ASSOC_AT_BOOTTIME,
|
NL80211_STA_INFO_ASSOC_AT_BOOTTIME,
|
||||||
NL80211_STA_INFO_CONNECTED_TO_AS,
|
NL80211_STA_INFO_CONNECTED_TO_AS,
|
||||||
|
NL80211_STA_INFO_RESERVED_DO_NOT_USE_1 = 44,
|
||||||
|
NL80211_STA_INFO_RESERVED_DO_NOT_USE_2 = 45,
|
||||||
|
NL80211_STA_INFO_RESERVED_DO_NOT_USE_3 = 46,
|
||||||
|
NL80211_STA_INFO_RESERVED_DO_NOT_USE_4 = 47,
|
||||||
|
NL80211_STA_INFO_RESERVED_DO_NOT_USE_5 = 48,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_STA_INFO_AFTER_LAST,
|
__NL80211_STA_INFO_AFTER_LAST,
|
||||||
|
@ -3863,6 +3913,11 @@ enum nl80211_band_iftype_attr {
|
||||||
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY,
|
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY,
|
||||||
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_MCS_SET,
|
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_MCS_SET,
|
||||||
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE,
|
NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE,
|
||||||
|
NL80211_BAND_IFTYPE_ATTR_RESERVED_DO_NOT_USE_1 = 12,
|
||||||
|
NL80211_BAND_IFTYPE_ATTR_RESERVED_DO_NOT_USE_2 = 13,
|
||||||
|
NL80211_BAND_IFTYPE_ATTR_RESERVED_DO_NOT_USE_3 = 14,
|
||||||
|
NL80211_BAND_IFTYPE_ATTR_RESERVED_DO_NOT_USE_4 = 15,
|
||||||
|
NL80211_BAND_IFTYPE_ATTR_RESERVED_DO_NOT_USE_5 = 16,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST,
|
__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST,
|
||||||
|
@ -3912,6 +3967,10 @@ enum nl80211_band_attr {
|
||||||
NL80211_BAND_ATTR_EDMG_CHANNELS,
|
NL80211_BAND_ATTR_EDMG_CHANNELS,
|
||||||
NL80211_BAND_ATTR_EDMG_BW_CONFIG,
|
NL80211_BAND_ATTR_EDMG_BW_CONFIG,
|
||||||
|
|
||||||
|
NL80211_BAND_ATTR_RESERVED_DO_NOT_USE_1 = 12,
|
||||||
|
NL80211_BAND_ATTR_RESERVED_DO_NOT_USE_2 = 13,
|
||||||
|
NL80211_BAND_ATTR_RESERVED_DO_NOT_USE_3 = 14,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_BAND_ATTR_AFTER_LAST,
|
__NL80211_BAND_ATTR_AFTER_LAST,
|
||||||
NL80211_BAND_ATTR_MAX = __NL80211_BAND_ATTR_AFTER_LAST - 1
|
NL80211_BAND_ATTR_MAX = __NL80211_BAND_ATTR_AFTER_LAST - 1
|
||||||
|
@ -4878,6 +4937,11 @@ enum nl80211_bss {
|
||||||
NL80211_BSS_PARENT_BSSID,
|
NL80211_BSS_PARENT_BSSID,
|
||||||
NL80211_BSS_CHAIN_SIGNAL,
|
NL80211_BSS_CHAIN_SIGNAL,
|
||||||
NL80211_BSS_FREQUENCY_OFFSET,
|
NL80211_BSS_FREQUENCY_OFFSET,
|
||||||
|
NL80211_BSS_RESERVED_DO_NOT_USE_1 = 21,
|
||||||
|
NL80211_BSS_RESERVED_DO_NOT_USE_2 = 22,
|
||||||
|
NL80211_BSS_RESERVED_DO_NOT_USE_3 = 23,
|
||||||
|
NL80211_BSS_RESERVED_DO_NOT_USE_4 = 24,
|
||||||
|
NL80211_BSS_RESERVED_DO_NOT_USE_5 = 25,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_BSS_AFTER_LAST,
|
__NL80211_BSS_AFTER_LAST,
|
||||||
|
@ -5023,6 +5087,11 @@ enum nl80211_key_attributes {
|
||||||
NL80211_KEY_DEFAULT_TYPES,
|
NL80211_KEY_DEFAULT_TYPES,
|
||||||
NL80211_KEY_MODE,
|
NL80211_KEY_MODE,
|
||||||
NL80211_KEY_DEFAULT_BEACON,
|
NL80211_KEY_DEFAULT_BEACON,
|
||||||
|
NL80211_KEY_RESERVED_DO_NOT_USE_1 = 11,
|
||||||
|
NL80211_KEY_RESERVED_DO_NOT_USE_2 = 12,
|
||||||
|
NL80211_KEY_RESERVED_DO_NOT_USE_3 = 13,
|
||||||
|
NL80211_KEY_RESERVED_DO_NOT_USE_4 = 14,
|
||||||
|
NL80211_KEY_RESERVED_DO_NOT_USE_5 = 15,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_KEY_AFTER_LAST,
|
__NL80211_KEY_AFTER_LAST,
|
||||||
|
@ -5057,6 +5126,11 @@ enum nl80211_tx_rate_attributes {
|
||||||
NL80211_TXRATE_HE,
|
NL80211_TXRATE_HE,
|
||||||
NL80211_TXRATE_HE_GI,
|
NL80211_TXRATE_HE_GI,
|
||||||
NL80211_TXRATE_HE_LTF,
|
NL80211_TXRATE_HE_LTF,
|
||||||
|
NL80211_TXRATE_RESERVED_DO_NOT_USE_1 = 8,
|
||||||
|
NL80211_TXRATE_RESERVED_DO_NOT_USE_2 = 9,
|
||||||
|
NL80211_TXRATE_RESERVED_DO_NOT_USE_3 = 10,
|
||||||
|
NL80211_TXRATE_RESERVED_DO_NOT_USE_4 = 11,
|
||||||
|
NL80211_TXRATE_RESERVED_DO_NOT_USE_5 = 12,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
__NL80211_TXRATE_AFTER_LAST,
|
__NL80211_TXRATE_AFTER_LAST,
|
||||||
|
@ -6241,6 +6315,16 @@ enum nl80211_ext_feature_index {
|
||||||
NL80211_EXT_FEATURE_BSS_COLOR,
|
NL80211_EXT_FEATURE_BSS_COLOR,
|
||||||
NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD,
|
NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD,
|
||||||
NL80211_EXT_FEATURE_RADAR_BACKGROUND,
|
NL80211_EXT_FEATURE_RADAR_BACKGROUND,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_1 = 62,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_2 = 63,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_3 = 64,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_4 = 65,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_5 = 66,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_6 = 67,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_7 = 68,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_8 = 69,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_9 = 70,
|
||||||
|
NL80211_EXT_FEATURE_RESERVED_DO_NOT_USE_10 = 71,
|
||||||
|
|
||||||
/* add new features before the definition below */
|
/* add new features before the definition below */
|
||||||
NUM_NL80211_EXT_FEATURES,
|
NUM_NL80211_EXT_FEATURES,
|
||||||
|
@ -6545,6 +6629,9 @@ enum nl80211_tdls_peer_capability {
|
||||||
NL80211_TDLS_PEER_VHT = 1<<1,
|
NL80211_TDLS_PEER_VHT = 1<<1,
|
||||||
NL80211_TDLS_PEER_WMM = 1<<2,
|
NL80211_TDLS_PEER_WMM = 1<<2,
|
||||||
NL80211_TDLS_PEER_HE = 1<<3,
|
NL80211_TDLS_PEER_HE = 1<<3,
|
||||||
|
NL80211_TDLS_PEER_RESERVED_DO_NOT_USE_1 = 1<<4,
|
||||||
|
NL80211_TDLS_PEER_RESERVED_DO_NOT_USE_2 = 1<<5,
|
||||||
|
NL80211_TDLS_PEER_RESERVED_DO_NOT_USE_3 = 1<<6,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -16347,7 +16347,7 @@ static struct genl_family nl80211_fam __ro_after_init = {
|
||||||
.name = NL80211_GENL_NAME, /* have users key off the name instead */
|
.name = NL80211_GENL_NAME, /* have users key off the name instead */
|
||||||
.hdrsize = 0, /* no private header */
|
.hdrsize = 0, /* no private header */
|
||||||
.version = 1, /* no particular meaning now */
|
.version = 1, /* no particular meaning now */
|
||||||
.maxattr = NL80211_ATTR_MAX,
|
.maxattr = NL80211_ATTR_DISABLE_EHT,
|
||||||
.policy = nl80211_policy,
|
.policy = nl80211_policy,
|
||||||
.netnsok = true,
|
.netnsok = true,
|
||||||
.pre_doit = nl80211_pre_doit,
|
.pre_doit = nl80211_pre_doit,
|
||||||
|
|
Loading…
Reference in New Issue