diff options
author | Purushottam Kushwaha <quic_pkushwah@quicinc.com> | 2022-06-28 11:06:42 +0530 |
---|---|---|
committer | Purushottam Kushwaha <quic_pkushwah@quicinc.com> | 2022-07-26 18:17:00 +0530 |
commit | a49d7330bf0bc1902703887b3ab7f97aa008825c (patch) | |
tree | 95a2feb1fee10168e0b64c882460f6a81760b218 /wifi/1.6/default/wifi_legacy_hal.cpp | |
parent | aa5def6aa9b8f14fd6e1b4b6619dba35d8295e08 (diff) |
Wifi: Add support to query and use driver advertised interface combination
Interface combinations in legacy-hal is predefined with
'WIFI_HAL_INTERFACE_COMBINATIONS' build flag. Netlink interface
already provides supported interface combination via
'NL80211_CMD_GET_WIPHY' using attribute
'NL80211_ATTR_INTERFACE_COMBINATIONS' , thus build time dependency
to configure interface combination for each target can be removed
by querying the combination at runtime.
Change-Id: I28f95b048de4b7b1ca49f16c3ef4afe7941bb25e
CRs-Fixed: 3230634
Diffstat (limited to 'wifi/1.6/default/wifi_legacy_hal.cpp')
-rw-r--r-- | wifi/1.6/default/wifi_legacy_hal.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/wifi/1.6/default/wifi_legacy_hal.cpp b/wifi/1.6/default/wifi_legacy_hal.cpp index 2211897cd2..aff1b8cfbf 100644 --- a/wifi/1.6/default/wifi_legacy_hal.cpp +++ b/wifi/1.6/default/wifi_legacy_hal.cpp @@ -1589,6 +1589,18 @@ wifi_error WifiLegacyHal::enableWifiTxPowerLimits(const std::string& iface_name, return global_func_table_.wifi_enable_tx_power_limits(getIfaceHandle(iface_name), enable); } +std::pair<wifi_error, wifi_iface_concurrency_matrix*> +WifiLegacyHal::getSupportedIfaceConcurrencyMatrix() { + wifi_iface_concurrency_matrix *iface_concurrency_matrix_ptr = + &iface_concurrency_matrix_; + wifi_error status = global_func_table_.wifi_get_supported_iface_concurrency_matrix( + global_handle_, iface_concurrency_matrix_ptr); + if (status != WIFI_SUCCESS) + return {status, nullptr}; + + return {status, iface_concurrency_matrix_ptr}; +} + void WifiLegacyHal::invalidate() { global_handle_ = nullptr; iface_name_to_handle_.clear(); |