summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSrinivas Dasari <quic_dasaris@quicinc.com>2022-07-12 17:32:37 +0530
committerMadan Koyyalamudi <quic_mkoyyala@quicinc.com>2023-03-27 03:19:16 -0700
commitb1915647601e60bf1a4cfd0bedd60d411dd5b08d (patch)
treed9441bc7c873c23779ac620bad3bb3c564275623
parente92f1c271e143b0aa1f7900d6e60e3ddc3ec9f3e (diff)
downloadqcacld-b1915647601e60bf1a4cfd0bedd60d411dd5b08d.tar.gz
qcacld-3.0: Consider AUTO phy_mode in legacy platforms as well
Currently, phy_mode AUTO is not considered for candidate scoring config if the platform doesn't support 11BE currently. This is added as part of 11BE changes and the mode is considered fine before the change I7f35379b94dcb64dec0da463b95967125dc7fd14. This doesn't seem to be intentional. So, consider phy_mode AUTO also for legacy platforms. Change-Id: Id2eaa8208f5bf5a875e1e72a2117a24b070e6e6b CRs-Fixed: 3242455
-rw-r--r--core/sme/src/common/sme_api.c32
1 files changed, 24 insertions, 8 deletions
diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c
index abf4211001..0aa70384a5 100644
--- a/core/sme/src/common/sme_api.c
+++ b/core/sme/src/common/sme_api.c
@@ -15200,6 +15200,24 @@ sme_get_roam_scan_stats(mac_handle_t mac_handle,
return status;
}
+#ifdef WLAN_FEATURE_11BE
+static inline bool sme_is_phy_mode_11be(eCsrPhyMode phy_mode)
+{
+ if (phy_mode == eCSR_DOT11_MODE_AUTO ||
+ CSR_IS_DOT11_PHY_MODE_11BE(phy_mode) ||
+ CSR_IS_DOT11_PHY_MODE_11BE_ONLY(phy_mode)) {
+ return true;
+ }
+
+ return false;
+}
+#else
+static inline bool sme_is_phy_mode_11be(eCsrPhyMode phy_mode)
+{
+ return false;
+}
+#endif
+
void sme_update_score_config(mac_handle_t mac_handle, eCsrPhyMode phy_mode,
uint8_t num_rf_chains)
{
@@ -15217,15 +15235,13 @@ void sme_update_score_config(mac_handle_t mac_handle, eCsrPhyMode phy_mode,
config.vdev_nss_24g = vdev_ini_cfg.rx_nss[NSS_CHAINS_BAND_2GHZ];
config.vdev_nss_5g = vdev_ini_cfg.rx_nss[NSS_CHAINS_BAND_5GHZ];
-#ifdef WLAN_FEATURE_11BE
- if (phy_mode == eCSR_DOT11_MODE_AUTO ||
- CSR_IS_DOT11_PHY_MODE_11BE(phy_mode) ||
- CSR_IS_DOT11_PHY_MODE_11BE_ONLY(phy_mode)) {
+
+ if (sme_is_phy_mode_11be(phy_mode))
config.eht_cap = 1;
- config.he_cap = 1;
- }
-#endif
- if (phy_mode == eCSR_DOT11_MODE_11ax ||
+
+ if (config.eht_cap ||
+ phy_mode == eCSR_DOT11_MODE_AUTO ||
+ phy_mode == eCSR_DOT11_MODE_11ax ||
phy_mode == eCSR_DOT11_MODE_11ax_ONLY)
config.he_cap = 1;