|
@@ -1982,6 +1982,20 @@ enum nl80211_commands {
|
|
|
* @NL80211_ATTR_BSSID: The BSSID of the AP. Note that %NL80211_ATTR_MAC is also
|
|
|
* used in various commands/events for specifying the BSSID.
|
|
|
*
|
|
|
+ * @NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI: Relative RSSI threshold by which
|
|
|
+ * other BSSs has to be better or slightly worse than the current
|
|
|
+ * connected BSS so that they get reported to user space.
|
|
|
+ * This will give an opportunity to userspace to consider connecting to
|
|
|
+ * other matching BSSs which have better or slightly worse RSSI than
|
|
|
+ * the current connected BSS by using an offloaded operation to avoid
|
|
|
+ * unnecessary wakeups.
|
|
|
+ *
|
|
|
+ * @NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST: When present the RSSI level for BSSs in
|
|
|
+ * the specified band is to be adjusted before doing
|
|
|
+ * %NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI based comparision to figure out
|
|
|
+ * better BSSs. The attribute value is a packed structure
|
|
|
+ * value as specified by &struct nl80211_bss_select_rssi_adjust.
|
|
|
+ *
|
|
|
* @NUM_NL80211_ATTR: total number of nl80211_attrs available
|
|
|
* @NL80211_ATTR_MAX: highest attribute number currently defined
|
|
|
* @__NL80211_ATTR_AFTER_LAST: internal use
|
|
@@ -2388,6 +2402,9 @@ enum nl80211_attrs {
|
|
|
|
|
|
NL80211_ATTR_BSSID,
|
|
|
|
|
|
+ NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI,
|
|
|
+ NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST,
|
|
|
+
|
|
|
/* add attributes here, update the policy in nl80211.c */
|
|
|
|
|
|
__NL80211_ATTR_AFTER_LAST,
|
|
@@ -3080,6 +3097,13 @@ enum nl80211_reg_rule_attr {
|
|
|
* how this API was implemented in the past. Also, due to the same problem,
|
|
|
* the only way to create a matchset with only an RSSI filter (with this
|
|
|
* attribute) is if there's only a single matchset with the RSSI attribute.
|
|
|
+ * @NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI: Flag indicating whether
|
|
|
+ * %NL80211_SCHED_SCAN_MATCH_ATTR_RSSI to be used as absolute RSSI or
|
|
|
+ * relative to current bss's RSSI.
|
|
|
+ * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST: When present the RSSI level for
|
|
|
+ * BSS-es in the specified band is to be adjusted before doing
|
|
|
+ * RSSI-based BSS selection. The attribute value is a packed structure
|
|
|
+ * value as specified by &struct nl80211_bss_select_rssi_adjust.
|
|
|
* @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
|
|
|
* attribute number currently defined
|
|
|
* @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
|
|
@@ -3089,6 +3113,8 @@ enum nl80211_sched_scan_match_attr {
|
|
|
|
|
|
NL80211_SCHED_SCAN_MATCH_ATTR_SSID,
|
|
|
NL80211_SCHED_SCAN_MATCH_ATTR_RSSI,
|
|
|
+ NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI,
|
|
|
+ NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST,
|
|
|
|
|
|
/* keep last */
|
|
|
__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
|
|
@@ -4703,6 +4729,9 @@ enum nl80211_feature_flags {
|
|
|
* in @NL80211_CMD_FRAME while not associated.
|
|
|
* @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED: This driver supports
|
|
|
* randomized TA in @NL80211_CMD_FRAME while associated.
|
|
|
+ * @NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI: The driver supports sched_scan
|
|
|
+ * for reporting BSSs with better RSSI than the current connected BSS
|
|
|
+ * (%NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI).
|
|
|
*
|
|
|
* @NUM_NL80211_EXT_FEATURES: number of extended features.
|
|
|
* @MAX_NL80211_EXT_FEATURES: highest extended feature index.
|
|
@@ -4720,6 +4749,7 @@ enum nl80211_ext_feature_index {
|
|
|
NL80211_EXT_FEATURE_FILS_STA,
|
|
|
NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA,
|
|
|
NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED,
|
|
|
+ NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI,
|
|
|
|
|
|
/* add new features before the definition below */
|
|
|
NUM_NL80211_EXT_FEATURES,
|