qcacmn: Introduce QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO

This acts as a vendor event and is used to update the information
of a station from the driver to userspace.

Add an attribute for the driver to update the channels scanned in
the last connect/roam attempt.

Change-Id: I3e87292d6ef00c0242cb583183de2b441352c8a5
CRs-Fixed: 2622092
Tento commit je obsažen v:
Abhishek Ambure
2020-02-14 13:31:42 +05:30
odevzdal nshrivas
rodič 3a795702fc
revize ebb5e8667e

Zobrazit soubor

@@ -377,6 +377,10 @@
* user space for the SAR power limits configuration from user space. If
* the driver does not get the SAR power limits from user space for all
* the retried attempts, it can configure a default SAR power limit.
* @QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO: This acts as a vendor event and
* is used to update the information about the station from the driver to
* userspace. Uses attributes from enum
* qca_wlan_vendor_attr_update_sta_info.
*/
enum qca_nl80211_vendor_subcmds {
@@ -597,6 +601,7 @@ enum qca_nl80211_vendor_subcmds {
QCA_NL80211_VENDOR_SUBCMD_ADD_STA_NODE = 184,
QCA_NL80211_VENDOR_SUBCMD_BTC_CHAIN_MODE = 185,
QCA_NL80211_VENDOR_SUBCMD_GET_SAR_LIMITS_EVENT = 187,
QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO = 188,
};
enum qca_wlan_vendor_tos {
@@ -720,6 +725,29 @@ enum qca_wlan_vendor_attr_get_station {
QCA_WLAN_VENDOR_ATTR_GET_STATION_AFTER_LAST - 1,
};
/**
* enum qca_wlan_vendor_attr_update_sta_info - Defines attributes
* used by QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO vendor command.
*
* @QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_CONNECT_CHANNELS: Type is NLA_UNSPEC.
* Used in STA mode. This attribute represents the list of channel center
* frequencies in MHz (u32) the station has learnt during the last connection
* or roaming attempt. This information shall not signify the channels for
* an explicit scan request from the user space. Host drivers can update this
* information to the user space in both connected and disconnected state.
* In the disconnected state this information shall signify the channels
* scanned in the last connection/roam attempt that lead to the disconnection.
*/
enum qca_wlan_vendor_attr_update_sta_info {
QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_INVALID = 0,
QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_CONNECT_CHANNELS = 1,
/* keep last */
QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_AFTER_LAST,
QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_MAX =
QCA_WLAN_VENDOR_ATTR_UPDATE_STA_INFO_AFTER_LAST - 1,
};
/**
* enum qca_wlan_802_11_mode - dot11 mode
* @QCA_WLAN_802_11_MODE_11B: mode B
@@ -1034,6 +1062,7 @@ enum qca_nl80211_vendor_subcmds_index {
QCA_NL80211_VENDOR_SUBCMD_ROAM_INDEX,
QCA_NL80211_VENDOR_SUBCMD_OEM_DATA_INDEX,
QCA_NL80211_VENDOR_SUBCMD_REQUEST_SAR_LIMITS_INDEX,
QCA_NL80211_VENDOR_SUBCMD_UPDATE_STA_INFO_INDEX,
};
/**