aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux
diff options
context:
space:
mode:
authorAvraham Stern <avraham.stern@intel.com>2016-07-05 10:10:13 -0400
committerJohannes Berg <johannes.berg@intel.com>2016-07-06 08:51:31 -0400
commit1d76250bd34af86c6498fc51e50cab3bfbbeceaa (patch)
tree36b75a19f179f9225619d6ca28ff10df90956805 /include/uapi/linux
parentf1724b0258b412144964f2074b9b6edcf0dce87c (diff)
nl80211: support beacon report scanning
Beacon report radio measurement requires reporting observed BSSs on the channels specified in the beacon request. If the measurement mode is set to passive or active, it requires actually performing a scan (passive or active, accordingly), and reporting the time that the scan was started and the time each beacon/probe was received (both in terms of TSF of the BSS of the requesting AP). If the request mode is table, this information is optional. In addition, the radio measurement request specifies the channel dwell time for the measurement. In order to use scan for beacon report when the mode is active or passive, add a parameter to scan request that specifies the channel dwell time, and add scan start time and beacon received time to scan results information. Supporting beacon report is required for Multi Band Operation (MBO). Signed-off-by: Assaf Krauss <assaf.krauss@intel.com> Signed-off-by: David Spinadel <david.spinadel@intel.com> Signed-off-by: Avraham Stern <avraham.stern@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include/uapi/linux')
-rw-r--r--include/uapi/linux/nl80211.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h
index 1d7da7888dcf..b39ccab45333 100644
--- a/include/uapi/linux/nl80211.h
+++ b/include/uapi/linux/nl80211.h
@@ -1848,6 +1848,22 @@ enum nl80211_commands {
1848 * to turn that feature off set an invalid mac address 1848 * to turn that feature off set an invalid mac address
1849 * (e.g. FF:FF:FF:FF:FF:FF) 1849 * (e.g. FF:FF:FF:FF:FF:FF)
1850 * 1850 *
1851 * @NL80211_ATTR_SCAN_START_TIME_TSF: The time at which the scan was actually
1852 * started (u64). The time is the TSF of the BSS the interface that
1853 * requested the scan is connected to (if available, otherwise this
1854 * attribute must not be included).
1855 * @NL80211_ATTR_SCAN_START_TIME_TSF_BSSID: The BSS according to which
1856 * %NL80211_ATTR_SCAN_START_TIME_TSF is set.
1857 * @NL80211_ATTR_MEASUREMENT_DURATION: measurement duration in TUs (u16). If
1858 * %NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY is not set, this is the
1859 * maximum measurement duration allowed. This attribute is used with
1860 * measurement requests. It can also be used with %NL80211_CMD_TRIGGER_SCAN
1861 * if the scan is used for beacon report radio measurement.
1862 * @NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY: flag attribute that indicates
1863 * that the duration specified with %NL80211_ATTR_MEASUREMENT_DURATION is
1864 * mandatory. If this flag is not set, the duration is the maximum duration
1865 * and the actual measurement duration may be shorter.
1866 *
1851 * @NUM_NL80211_ATTR: total number of nl80211_attrs available 1867 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
1852 * @NL80211_ATTR_MAX: highest attribute number currently defined 1868 * @NL80211_ATTR_MAX: highest attribute number currently defined
1853 * @__NL80211_ATTR_AFTER_LAST: internal use 1869 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2235,6 +2251,11 @@ enum nl80211_attrs {
2235 NL80211_ATTR_MU_MIMO_GROUP_DATA, 2251 NL80211_ATTR_MU_MIMO_GROUP_DATA,
2236 NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR, 2252 NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR,
2237 2253
2254 NL80211_ATTR_SCAN_START_TIME_TSF,
2255 NL80211_ATTR_SCAN_START_TIME_TSF_BSSID,
2256 NL80211_ATTR_MEASUREMENT_DURATION,
2257 NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY,
2258
2238 /* add attributes here, update the policy in nl80211.c */ 2259 /* add attributes here, update the policy in nl80211.c */
2239 2260
2240 __NL80211_ATTR_AFTER_LAST, 2261 __NL80211_ATTR_AFTER_LAST,
@@ -3496,6 +3517,12 @@ enum nl80211_bss_scan_width {
3496 * was last updated by a received frame. The value is expected to be 3517 * was last updated by a received frame. The value is expected to be
3497 * accurate to about 10ms. (u64, nanoseconds) 3518 * accurate to about 10ms. (u64, nanoseconds)
3498 * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment 3519 * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment
3520 * @NL80211_BSS_PARENT_TSF: the time at the start of reception of the first
3521 * octet of the timestamp field of the last beacon/probe received for
3522 * this BSS. The time is the TSF of the BSS specified by
3523 * @NL80211_BSS_PARENT_BSSID. (u64).
3524 * @NL80211_BSS_PARENT_BSSID: the BSS according to which @NL80211_BSS_PARENT_TSF
3525 * is set.
3499 * @__NL80211_BSS_AFTER_LAST: internal 3526 * @__NL80211_BSS_AFTER_LAST: internal
3500 * @NL80211_BSS_MAX: highest BSS attribute 3527 * @NL80211_BSS_MAX: highest BSS attribute
3501 */ 3528 */
@@ -3517,6 +3544,8 @@ enum nl80211_bss {
3517 NL80211_BSS_PRESP_DATA, 3544 NL80211_BSS_PRESP_DATA,
3518 NL80211_BSS_LAST_SEEN_BOOTTIME, 3545 NL80211_BSS_LAST_SEEN_BOOTTIME,
3519 NL80211_BSS_PAD, 3546 NL80211_BSS_PAD,
3547 NL80211_BSS_PARENT_TSF,
3548 NL80211_BSS_PARENT_BSSID,
3520 3549
3521 /* keep last */ 3550 /* keep last */
3522 __NL80211_BSS_AFTER_LAST, 3551 __NL80211_BSS_AFTER_LAST,
@@ -4507,6 +4536,16 @@ enum nl80211_feature_flags {
4507 * %NL80211_ATTR_MU_MIMO_GROUP_DATA attribute, 4536 * %NL80211_ATTR_MU_MIMO_GROUP_DATA attribute,
4508 * or can be configured to follow a station by configuring the 4537 * or can be configured to follow a station by configuring the
4509 * %NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR attribute. 4538 * %NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR attribute.
4539 * @NL80211_EXT_FEATURE_SCAN_START_TIME: This driver includes the actual
4540 * time the scan started in scan results event. The time is the TSF of
4541 * the BSS that the interface that requested the scan is connected to
4542 * (if available).
4543 * @NL80211_EXT_FEATURE_BSS_PARENT_TSF: Per BSS, this driver reports the
4544 * time the last beacon/probe was received. The time is the TSF of the
4545 * BSS that the interface that requested the scan is connected to
4546 * (if available).
4547 * @NL80211_EXT_FEATURE_SET_SCAN_DWELL: This driver supports configuration of
4548 * channel dwell time.
4510 * 4549 *
4511 * @NUM_NL80211_EXT_FEATURES: number of extended features. 4550 * @NUM_NL80211_EXT_FEATURES: number of extended features.
4512 * @MAX_NL80211_EXT_FEATURES: highest extended feature index. 4551 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -4515,6 +4554,9 @@ enum nl80211_ext_feature_index {
4515 NL80211_EXT_FEATURE_VHT_IBSS, 4554 NL80211_EXT_FEATURE_VHT_IBSS,
4516 NL80211_EXT_FEATURE_RRM, 4555 NL80211_EXT_FEATURE_RRM,
4517 NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER, 4556 NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER,
4557 NL80211_EXT_FEATURE_SCAN_START_TIME,
4558 NL80211_EXT_FEATURE_BSS_PARENT_TSF,
4559 NL80211_EXT_FEATURE_SET_SCAN_DWELL,
4518 4560
4519 /* add new features before the definition below */ 4561 /* add new features before the definition below */
4520 NUM_NL80211_EXT_FEATURES, 4562 NUM_NL80211_EXT_FEATURES,