Add QCA vendor definitions for BSS transition status
Introduce definitions for QCA vendor specific subcommands and attributes for fetching BSS transition status. Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
parent
53d171440f
commit
70407ee5c3
1 changed files with 60 additions and 0 deletions
|
@ -267,6 +267,19 @@ enum qca_radiotap_vendor_ids {
|
||||||
* @QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_GET: Get the NUD statistics. These
|
* @QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_GET: Get the NUD statistics. These
|
||||||
* statistics are represented by the enum qca_attr_nud_stats_get
|
* statistics are represented by the enum qca_attr_nud_stats_get
|
||||||
* attributes.
|
* attributes.
|
||||||
|
*
|
||||||
|
* @QCA_NL80211_VENDOR_SUBCMD_FETCH_BSS_TRANSITION_STATUS: Sub-command to fetch
|
||||||
|
* the BSS transition status, whether accept or reject, for a list of
|
||||||
|
* candidate BSSIDs provided by the userspace. This uses the vendor
|
||||||
|
* attributes QCA_WLAN_VENDOR_ATTR_BTM_MBO_TRANSITION_REASON and
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO. The userspace shall specify
|
||||||
|
* the attributes QCA_WLAN_VENDOR_ATTR_BTM_MBO_TRANSITION_REASON and an
|
||||||
|
* array of QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_BSSID nested in
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO in the request. In the response
|
||||||
|
* the driver shall specify array of
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_BSSID and
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_STATUS pairs nested in
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO.
|
||||||
*/
|
*/
|
||||||
enum qca_nl80211_vendor_subcmds {
|
enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0,
|
||||||
|
@ -392,6 +405,7 @@ enum qca_nl80211_vendor_subcmds {
|
||||||
QCA_NL80211_VENDOR_SUBCMD_CHIP_PWRSAVE_FAILURE = 148,
|
QCA_NL80211_VENDOR_SUBCMD_CHIP_PWRSAVE_FAILURE = 148,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_SET = 149,
|
QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_SET = 149,
|
||||||
QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_GET = 150,
|
QCA_NL80211_VENDOR_SUBCMD_NUD_STATS_GET = 150,
|
||||||
|
QCA_NL80211_VENDOR_SUBCMD_FETCH_BSS_TRANSITION_STATUS = 151,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -534,6 +548,22 @@ enum qca_wlan_vendor_attr {
|
||||||
*/
|
*/
|
||||||
QCA_WLAN_VENDOR_ATTR_RX_AGGREGATION_STATS_HOLES_NUM = 34,
|
QCA_WLAN_VENDOR_ATTR_RX_AGGREGATION_STATS_HOLES_NUM = 34,
|
||||||
QCA_WLAN_VENDOR_ATTR_RX_AGGREGATION_STATS_HOLES_INFO = 35,
|
QCA_WLAN_VENDOR_ATTR_RX_AGGREGATION_STATS_HOLES_INFO = 35,
|
||||||
|
/* Unsigned 8-bit value representing MBO transition reason code as
|
||||||
|
* provided by the AP used by subcommand
|
||||||
|
* QCA_NL80211_VENDOR_SUBCMD_FETCH_BSS_TRANSITION_STATUS. This is
|
||||||
|
* specified by the userspace in the request to the driver.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_MBO_TRANSITION_REASON = 36,
|
||||||
|
/* Array of nested attributes, BSSID and status code, used by subcommand
|
||||||
|
* QCA_NL80211_VENDOR_SUBCMD_FETCH_BSS_TRANSITION_STATUS, where each
|
||||||
|
* entry is taken from enum qca_wlan_vendor_attr_btm_candidate_info.
|
||||||
|
* The userspace space specifies the list/array of candidate BSSIDs in
|
||||||
|
* the order of preference in the request. The driver specifies the
|
||||||
|
* status code, for each BSSID in the list, in the response. The
|
||||||
|
* acceptable candidates are listed in the order preferred by the
|
||||||
|
* driver.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO = 37,
|
||||||
|
|
||||||
/* keep last */
|
/* keep last */
|
||||||
QCA_WLAN_VENDOR_ATTR_AFTER_LAST,
|
QCA_WLAN_VENDOR_ATTR_AFTER_LAST,
|
||||||
|
@ -3304,4 +3334,34 @@ enum qca_attr_nud_stats_get {
|
||||||
QCA_ATTR_NUD_STATS_GET_LAST - 1,
|
QCA_ATTR_NUD_STATS_GET_LAST - 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum qca_wlan_btm_candidate_status {
|
||||||
|
QCA_STATUS_ACCEPT = 0,
|
||||||
|
QCA_STATUS_REJECT_EXCESSIVE_FRAME_LOSS_EXPECTED = 1,
|
||||||
|
QCA_STATUS_REJECT_EXCESSIVE_DELAY_EXPECTED = 2,
|
||||||
|
QCA_STATUS_REJECT_INSUFFICIENT_QOS_CAPACITY = 3,
|
||||||
|
QCA_STATUS_REJECT_LOW_RSSI = 4,
|
||||||
|
QCA_STATUS_REJECT_HIGH_INTERFERENCE = 5,
|
||||||
|
QCA_STATUS_REJECT_UNKNOWN = 6,
|
||||||
|
};
|
||||||
|
|
||||||
|
enum qca_wlan_vendor_attr_btm_candidate_info {
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_INVALID = 0,
|
||||||
|
|
||||||
|
/* 6-byte MAC address representing the BSSID of transition candidate */
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_BSSID = 1,
|
||||||
|
/* Unsigned 32-bit value from enum qca_wlan_btm_candidate_status
|
||||||
|
* returned by the driver. It says whether the BSSID provided in
|
||||||
|
* QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_BSSID is acceptable by
|
||||||
|
* the driver, if not it specifies the reason for rejection.
|
||||||
|
* Note that the user-space can overwrite the transition reject reason
|
||||||
|
* codes provided by driver based on more information.
|
||||||
|
*/
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_STATUS = 2,
|
||||||
|
|
||||||
|
/* keep last */
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_AFTER_LAST,
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_MAX =
|
||||||
|
QCA_WLAN_VENDOR_ATTR_BTM_CANDIDATE_INFO_AFTER_LAST - 1,
|
||||||
|
};
|
||||||
|
|
||||||
#endif /* QCA_VENDOR_H */
|
#endif /* QCA_VENDOR_H */
|
||||||
|
|
Loading…
Reference in a new issue