]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - include/uapi/linux/nl80211.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
[linux.git] / include / uapi / linux / nl80211.h
index bea982af9cfb80a3081f50af90145a3b9758185c..d6c62ee9bd1dcd89fba555382b23398ab6d6a00e 100644 (file)
@@ -1822,6 +1822,8 @@ enum nl80211_commands {
  *     and remove functions. NAN notifications will be sent in unicast to that
  *     socket. Without this attribute, any socket can add functions and the
  *     notifications will be sent to the %NL80211_MCGRP_NAN multicast group.
+ *     If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
+ *     station will deauthenticate when the socket is closed.
  *
  * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
  *     the TDLS link initiator.
@@ -1982,6 +1984,24 @@ 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.
+ *
+ * @NL80211_ATTR_TIMEOUT_REASON: The reason for which an operation timed out.
+ *     u32 attribute with an &enum nl80211_timeout_reason value. This is used,
+ *     e.g., with %NL80211_CMD_CONNECT event.
+ *
  * @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 +2408,11 @@ enum nl80211_attrs {
 
        NL80211_ATTR_BSSID,
 
+       NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI,
+       NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST,
+
+       NL80211_ATTR_TIMEOUT_REASON,
+
        /* add attributes here, update the policy in nl80211.c */
 
        __NL80211_ATTR_AFTER_LAST,
@@ -3080,6 +3105,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 +3121,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,
@@ -4699,6 +4733,13 @@ enum nl80211_feature_flags {
  *     configuration (AP/mesh) with VHT rates.
  * @NL80211_EXT_FEATURE_FILS_STA: This driver supports Fast Initial Link Setup
  *     with user space SME (NL80211_CMD_AUTHENTICATE) in station mode.
+ * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA: This driver supports randomized TA
+ *     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.
@@ -4714,6 +4755,9 @@ enum nl80211_ext_feature_index {
        NL80211_EXT_FEATURE_BEACON_RATE_HT,
        NL80211_EXT_FEATURE_BEACON_RATE_VHT,
        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,
@@ -4752,6 +4796,21 @@ enum nl80211_connect_failed_reason {
        NL80211_CONN_FAIL_BLOCKED_CLIENT,
 };
 
+/**
+ * enum nl80211_timeout_reason - timeout reasons
+ *
+ * @NL80211_TIMEOUT_UNSPECIFIED: Timeout reason unspecified.
+ * @NL80211_TIMEOUT_SCAN: Scan (AP discovery) timed out.
+ * @NL80211_TIMEOUT_AUTH: Authentication timed out.
+ * @NL80211_TIMEOUT_ASSOC: Association timed out.
+ */
+enum nl80211_timeout_reason {
+       NL80211_TIMEOUT_UNSPECIFIED,
+       NL80211_TIMEOUT_SCAN,
+       NL80211_TIMEOUT_AUTH,
+       NL80211_TIMEOUT_ASSOC,
+};
+
 /**
  * enum nl80211_scan_flags -  scan request control flags
  *
@@ -4966,8 +5025,9 @@ enum nl80211_sched_scan_plan {
 /**
  * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters.
  *
- * @band: band of BSS that must match for RSSI value adjustment.
- * @delta: value used to adjust the RSSI value of matching BSS.
+ * @band: band of BSS that must match for RSSI value adjustment. The value
+ *     of this field is according to &enum nl80211_band.
+ * @delta: value used to adjust the RSSI value of matching BSS in dB.
  */
 struct nl80211_bss_select_rssi_adjust {
        __u8 band;