Add QCA vendor interface to support per-MLO link configurations

Add support for per-MLO link configurations in
QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION and
QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION commands.

Additionally, add documentation for
QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION and
QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION commands.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
This commit is contained in:
Veerendranath Jakkam 2023-06-22 10:51:21 +05:30 committed by Jouni Malinen
parent f83cc05aa4
commit 3d1ec9d0af

View file

@ -142,6 +142,32 @@ enum qca_radiotap_vendor_ids {
* @QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_INFO: Get information from the driver.
* Attributes defined in enum qca_wlan_vendor_attr_get_wifi_info.
*
* @QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION: This command is used to
* configure various wiphy or interface level configurations. Attributes
* are defined in enum qca_wlan_vendor_attr_config. Userspace can send one
* or more configuration attributes with a single command. The driver
* accepts the command only if all the configurations are known, otherwise
* it rejects the command. The driver returns success only if processing of
* all the configurations succeeds. The driver continues to process all the
* configurations even if processing of some configurations failed and
* returns the last error occurred while processing the failed
* configurations.
*
* @QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION: This command is used to
* get the current values of the various wiphy or interface level
* configurations. Attributes are defined in enum
* qca_wlan_vendor_attr_config. Userspace needs to specify the
* configuration attributes for which it wants to get the values in the
* command, there is no significance for the value sent in the attribute
* unless explicitly specified in the corresponding configuration
* attribute documentation. The driver accepts the command only if all the
* configurations are known, otherwise it rejects the command. The driver
* returns success only if fetching of all configuration values succeeds
* and indicates the configuration values in corresponding attributes in
* the response. The driver continues to process all the configurations
* even if processing of some configurations failed and returns the last
* error occurred while processing the failed configurations.
*
* @QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET: Get the feature bitmap
* based on enum wifi_logger_supported_features. Attributes defined in
* enum qca_wlan_vendor_attr_get_logger_features.
@ -3136,6 +3162,40 @@ enum qca_wlan_vendor_attr_config {
*/
QCA_WLAN_VENDOR_ATTR_CONFIG_EPCS_FUNCTION = 98,
/* 8-bit unsigned value. Used only for representing MLO link ID of a
* link inside %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINKS.
*/
QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID = 99,
/* Array of nested links each identified by
* %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID. This uses values defined in
* enum qca_wlan_vendor_attr_config, explicit documentation shall be
* added for the attributes in enum qca_wlan_vendor_attr_config to
* support per-MLO link configuration through
* %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINKS.
*
* Userspace can configure a single link or multiple links with this
* attribute by nesting the corresponding configuration attributes and
* %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID for each link.
*
* Userspace can fetch the configuration attribute values for a single
* link or multiple links with this attribute by nesting the
* corresponding configuration attributes and
* %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID for each link.
*
* For STA interface, this attribute is applicable only in connected
* state when the current connection is MLO capable. The valid values of
* %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID are the link IDs of the
* connected AP MLD links.
*
* For AP interface, this configuration applicable only after adding
* MLO links to the AP interface with %NL80211_CMD_ADD_LINK and the
* valid values of %QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINK_ID are the link
* IDs specified in %NL80211_CMD_ADD_LINK while adding the MLO links to
* the AP interface.
*/
QCA_WLAN_VENDOR_ATTR_CONFIG_MLO_LINKS = 100,
/* keep last */
QCA_WLAN_VENDOR_ATTR_CONFIG_AFTER_LAST,
QCA_WLAN_VENDOR_ATTR_CONFIG_MAX =