diff options
| author | sheenam monga <shebala@codeaurora.org> | 2019-04-03 16:29:37 +0530 |
|---|---|---|
| committer | nshrivas <nshrivas@codeaurora.org> | 2019-04-04 04:14:50 -0700 |
| commit | 125bcaccd4a03ede387124025ef46ea9dc465e25 (patch) | |
| tree | 5e9d7cb97bb762b1ba4535cd414ede6b3831f2bd | |
| parent | 207cf0c0d491ae24a682ed485d9b857381d3461b (diff) | |
qcacld-3.0: Add new attribute for roam reason
Currently, there is no attribute to get information for roam reason.
Atrribute QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REASON is added in
QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH command to inform
the roam reason. An enum qca_roam_reason is defined for the valid
values of the QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_ROAM_REASON.
Change-Id: I7f51e1c0905840235098600530bb027f6badb76e
CRs-Fixed: 2425898
| -rw-r--r-- | uapi/linux/qca_vendor.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/uapi/linux/qca_vendor.h b/uapi/linux/qca_vendor.h index fdc95618cba4..1e4eeb944928 100644 --- a/uapi/linux/qca_vendor.h +++ b/uapi/linux/qca_vendor.h @@ -2066,6 +2066,51 @@ enum qca_roaming_policy { }; /** + * enum qca_roam_reason - Represents the reason codes for roaming. Used by + * QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REASON. + * + * @QCA_ROAM_REASON_UNKNOWN: Any reason that do not classify under the below + * reasons. + * + * @QCA_ROAM_REASON_PER: Roam triggered when packet error rates(PER) breached + * the configured threshold. + * + * @QCA_ROAM_REASON_BEACON_MISS: Roam triggered due to the continuous configured + * beacon misses from the then connected AP. + * + * @QCA_ROAM_REASON_POOR_RSSI: Roam triggered due to the poor RSSI reported + * by the connected AP. + * + * @QCA_ROAM_REASON_BETTER_RSSI: Roam triggered for finding a BSSID with a + * better RSSI than the connected BSSID. Here the RSSI of the current BSSID is + * not poor. + * + * @QCA_ROAM_REASON_CONGESTION: Roam triggered considering the connected channel + * or environment being very noisy / congested. + * + * @QCA_ROAM_REASON_EXPLICIT_REQUEST: Roam triggered due to an explicit request + * from the user (user space). + * + * @QCA_ROAM_REASON_BTM: Roam triggered due to BTM request frame received from + * connected AP. + * + * @QCA_ROAM_REASON_BSS_LOAD: Roam triggered due to the channel utilization + * breaching out the configured threshold. + * + */ +enum qca_roam_reason { + QCA_ROAM_REASON_UNKNOWN, + QCA_ROAM_REASON_PER, + QCA_ROAM_REASON_BEACON_MISS, + QCA_ROAM_REASON_POOR_RSSI, + QCA_ROAM_REASON_BETTER_RSSI, + QCA_ROAM_REASON_CONGESTION, + QCA_ROAM_REASON_USER_TRIGGER, + QCA_ROAM_REASON_BTM, + QCA_ROAM_REASON_BSS_LOAD, +}; + +/** * enum qca_wlan_vendor_attr_roam_auth - vendor event for roaming * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_BSSID: BSSID of the roamed AP * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REQ_IE: Request IE @@ -2082,6 +2127,9 @@ enum qca_roaming_policy { * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PMKID: AUTH PMKID * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_FILS_ERP_NEXT_SEQ_NUM: FILS erp next * seq number + * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REASON: A 16-bit unsigned value + * representing the reasons for the roaming. Defined by enum + * qca_roam_reason. */ enum qca_wlan_vendor_attr_roam_auth { QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_INVALID = 0, @@ -2114,6 +2162,7 @@ enum qca_wlan_vendor_attr_roam_auth { QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PMK, QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PMKID, QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_FILS_ERP_NEXT_SEQ_NUM, + QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REASON, QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AFTER_LAST, QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_MAX = QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AFTER_LAST - 1 |
