Document the attributes used by QCA_NL80211_VENDOR_SUBCMD_ROAM

This commit documents the attributes used by
QCA_NL80211_VENDOR_SUBCMD_ROAM.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
Sunil Dutt 2019-08-06 15:43:29 +05:30 committed by Jouni Malinen
parent b0b25c5bbc
commit f131196319

View File

@ -3359,6 +3359,97 @@ enum qca_wlan_vendor_attr_logger_results {
QCA_WLAN_VENDOR_ATTR_LOGGER_RESULTS_AFTER_LAST - 1,
};
/*
* enum qca_wlan_vendor_attr_roaming_config_params: Attributes for data used by
* QCA_NL80211_VENDOR_SUBCMD_ROAM sub command.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_SUBCMD: Unsigned 32-bit value.
* Represents the different roam sub commands referred by
* enum qca_wlan_vendor_attr_roam_subcmd.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_REQ_ID: Unsigned 32-bit value.
* Represents the Request ID for the specific set of commands.
* This also helps to map specific set of commands to the respective
* ID / client. e.g., helps to identify the user entity configuring the
* Blacklist BSSID and accordingly clear the respective ones with the
* matching ID.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_NUM_NETWORKS: Unsigned
* 32-bit value.Represents the number of whitelist SSIDs configured.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_LIST: Nested attribute
* to carry the list of Whitelist SSIDs.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID: SSID (binary attribute,
* 0..32 octets). Represents the white list SSID. Whitelist SSIDs
* represent the list of SSIDs to which the firmware/driver can consider
* to roam to.
*
* The following PARAM_A_BAND_XX attributes are applied to 5GHz BSSIDs when
* comparing with a 2.4GHz BSSID. They are not applied when comparing two
* 5GHz BSSIDs.The following attributes are set through the Roaming SUBCMD -
* QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_GSCAN_ROAM_PARAMS.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_THRESHOLD: Signed 32-bit
* value, RSSI threshold above which 5GHz RSSI is favored.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_THRESHOLD: Signed 32-bit
* value, RSSI threshold below which 5GHz RSSI is penalized.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_FACTOR: Unsigned 32-bit
* value, factor by which 5GHz RSSI is boosted.
* boost=(RSSI_measured-5GHz_boost_threshold)*5GHz_boost_factor
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_FACTOR: Unsigned 32-bit
* value, factor by which 5GHz RSSI is penalized.
* penalty=(5GHz_penalty_threshold-RSSI_measured)*5GHz_penalty_factor
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_MAX_BOOST: Unsigned 32-bit
* value, maximum boost that can be applied to a 5GHz RSSI.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_LAZY_ROAM_HISTERESYS: Unsigned 32-bit
* value, boost applied to current BSSID to ensure the currently
* associated BSSID is favored so as to prevent ping-pong situations.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_ALERT_ROAM_RSSI_TRIGGER: Signed 32-bit
* value, RSSI below which "Alert" roam is enabled.
* "Alert" mode roaming - firmware is "urgently" hunting for another BSSID
* because the RSSI is low, or because many successive beacons have been
* lost or other bad link conditions.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_ENABLE: Unsigned 32-bit
* value. 1-Enable, 0-Disable. Represents "Lazy" mode, where
* firmware is hunting for a better BSSID or white listed SSID even though
* the RSSI of the link is good. The parameters enabling the roaming are
* configured through the PARAM_A_BAND_XX attrbutes.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PREFS: Nested attribute,
* represents the BSSIDs preferred over others while evaluating them
* for the roaming.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_NUM_BSSID: Unsigned
* 32-bit value. Represents the number of preferred BSSIDs set.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_BSSID: 6-byte MAC
* address representing the BSSID to be preferred.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_RSSI_MODIFIER: Signed
* 32-bit value, representing the modifier to be applied to the RSSI of
* the BSSID for the purpose of comparing it with other roam candidate.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS: Nested attribute,
* represents the BSSIDs to get blacklisted for roaming.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_NUM_BSSID: Unsigned
* 32-bit value, represents the number of blacklisted BSSIDs.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_BSSID: 6-byte MAC
* address representing the Blacklisted BSSID.
*
* @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_HINT: Flag attribute,
* indicates this BSSID blacklist as a hint to the driver. The driver can
* select this BSSID in the worst case (when no other BSSIDs are better).
*/
enum qca_wlan_vendor_attr_roaming_config_params {
QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_INVALID = 0,
@ -3402,8 +3493,33 @@ enum qca_wlan_vendor_attr_roaming_config_params {
};
/*
* enum qca_wlan_vendor_attr_roam_subcmd: Attributes for data used by
* QCA_NL80211_VENDOR_SUBCMD_ROAM sub command.
* enum qca_wlan_vendor_attr_roam_subcmd: Referred by
* QCA_WLAN_VENDOR_ATTR_ROAMING_SUBCMD.
*
* @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SSID_WHITE_LIST: Sub command to
* configure the white list SSIDs. These are configured through
* the following attributes.
* QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_NUM_NETWORKS,
* QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_LIST,
* QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID
*
* @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_GSCAN_ROAM_PARAMS: Sub command to
* configure the Roam params. These parameters are evaluated on the GScan
* results. Refers the attributes PARAM_A_BAND_XX above to configure the
* params.
*
* @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_LAZY_ROAM: Sets the Lazy roam. Uses
* the attribute QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_ENABLE
* to enable/disable Lazy roam.
*
* @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BSSID_PREFS: Sets the BSSID
* preference. Contains the attribute
* QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PREFS to set the BSSID
* preference.
*
* @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BLACKLIST_BSSID: Sets the Blacklist
* BSSIDs. Refers QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS to
* set the same.
*/
enum qca_wlan_vendor_attr_roam_subcmd {
QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_INVALID = 0,