QCA vendor subcommand and attributes to configure capture of CFR data
Add a subcommand for Channel Frequency Response (CFG) Capture Configuration and define attributes for configuring CFR capture parameters per peer and enabling/disabling CFR capture. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
parent
44fa13b17f
commit
77fcd74753
1 changed files with 66 additions and 0 deletions
|
@ -469,6 +469,11 @@ enum qca_radiotap_vendor_ids {
|
||||||
* qca_wlan_vendor_attr_roam_scan. Some drivers may not send these events
|
* qca_wlan_vendor_attr_roam_scan. Some drivers may not send these events
|
||||||
* in few cases, e.g., if the host processor is sleeping when this event
|
* in few cases, e.g., if the host processor is sleeping when this event
|
||||||
* is generated in firmware.
|
* is generated in firmware.
|
||||||
|
*
|
||||||
|
* @QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG: This command is used to
|
||||||
|
* configure parameters per peer to capture Channel Frequency Response
|
||||||
|
* (CFR) and enable Periodic CFR capture. The attributes for this command
|
||||||
|
* are defined in enum qca_wlan_vendor_peer_cfr_capture_attr.
|
||||||
*/
|
*/
|
||||||
enum qca_nl80211_vendor_subcmds {
|
enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
||||||
|
@ -630,6 +635,7 @@ enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_BSS_FILTER = 170,
|
QCA_NL80211_VENDOR_SUBCMD_BSS_FILTER = 170,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_NAN_EXT = 171,
|
QCA_NL80211_VENDOR_SUBCMD_NAN_EXT = 171,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_ROAM_SCAN_EVENT = 172,
|
QCA_NL80211_VENDOR_SUBCMD_ROAM_SCAN_EVENT = 172,
|
||||||
|
QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG = 173,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum qca_wlan_vendor_attr {
|
enum qca_wlan_vendor_attr {
|
||||||
|
@ -5920,4 +5926,64 @@ enum qca_wlan_vendor_attr_roam_scan {
|
||||||
QCA_WLAN_VENDOR_ATTR_ROAM_SCAN_AFTER_LAST - 1,
|
QCA_WLAN_VENDOR_ATTR_ROAM_SCAN_AFTER_LAST - 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* enum qca_wlan_vendor_cfr_method - QCA vendor CFR methods used by
|
||||||
|
* attribute QCA_WLAN_VENDOR_ATTR_PEER_CFR_METHOD as part of vendor
|
||||||
|
* command QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG.
|
||||||
|
*/
|
||||||
|
enum qca_wlan_vendor_cfr_method {
|
||||||
|
/* CFR method using QOS Null frame */
|
||||||
|
QCA_WLAN_VENDOR_CFR_METHOD_QOS_NULL = 0,
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* enum qca_wlan_vendor_peer_cfr_capture_attr - Used by the vendor command
|
||||||
|
* QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG to configure peer
|
||||||
|
* Channel Frequency Response capture parameters and enable periodic CFR
|
||||||
|
* capture.
|
||||||
|
*/
|
||||||
|
enum qca_wlan_vendor_peer_cfr_capture_attr {
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_CAPTURE_INVALID = 0,
|
||||||
|
/* 6-byte MAC address of the peer.
|
||||||
|
* This attribute is mandatory.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_CFR_PEER_MAC_ADDR = 1,
|
||||||
|
/* Enable peer CFR Capture, flag attribute.
|
||||||
|
* This attribute is mandatory to enable peer CFR capture.
|
||||||
|
* If this attribute is not present, peer CFR capture is disabled.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_ENABLE = 2,
|
||||||
|
/* BW of measurement, attribute uses the values in enum nl80211_chan_width
|
||||||
|
* Supported values: 20, 40, 80, 80+80, 160.
|
||||||
|
* Note that all targets may not support all bandwidths.
|
||||||
|
* u8 attribute. This attribute is mandatory if attribute
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_PEER_CFR_ENABLE is used.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_BANDWIDTH = 3,
|
||||||
|
/* Periodicity of CFR measurement in msec.
|
||||||
|
* Periodicity should be a multiple of Base timer.
|
||||||
|
* Current Base timer value supported is 10 msecs (default).
|
||||||
|
* 0 for one shot capture. u32 attribute.
|
||||||
|
* This attribute is mandatory if attribute
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_PEER_CFR_ENABLE is used.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_PERIODICITY = 4,
|
||||||
|
/* Method used to capture Channel Frequency Response.
|
||||||
|
* Attribute uses the values defined in enum qca_wlan_vendor_cfr_method.
|
||||||
|
* u8 attribute. This attribute is mandatory if attribute
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_PEER_CFR_ENABLE is used.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_METHOD = 5,
|
||||||
|
/* Enable periodic CFR capture, flag attribute.
|
||||||
|
* This attribute is mandatory to enable Periodic CFR capture.
|
||||||
|
* If this attribute is not present, periodic CFR capture is disabled.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PERIODIC_CFR_CAPTURE_ENABLE = 6,
|
||||||
|
|
||||||
|
/* Keep last */
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_AFTER_LAST,
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_MAX =
|
||||||
|
QCA_WLAN_VENDOR_ATTR_PEER_CFR_AFTER_LAST - 1,
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* QCA_VENDOR_H */
|
#endif /* QCA_VENDOR_H */
|
||||||
|
|
Loading…
Reference in a new issue