diff options
| author | Balaji Pothunoori <bpothuno@codeaurora.org> | 2019-12-05 15:48:58 +0530 |
|---|---|---|
| committer | nshrivas <nshrivas@codeaurora.org> | 2019-12-09 15:53:34 -0800 |
| commit | 01266363f0e00ed21e7e7d2fbf0ebac2debcf198 (patch) | |
| tree | e5829bcfa6bc46a4755e779eff6baa2fc5a437a8 | |
| parent | 01acdfec1f8eaa8bd2753a64051e589cc288778b (diff) | |
qcacld-3.0: enable shortgi for 160mhz based on firmware capability
Add check to enable shortgi for 160mhz based on firmware capability
Change-Id: I26cefe0b304a101350322a2d0b0c5a9ccdeba352
CRs-Fixed: 2580466
| -rw-r--r-- | core/hdd/inc/wlan_hdd_cfg.h | 2 | ||||
| -rw-r--r-- | core/hdd/src/wlan_hdd_cfg.c | 7 | ||||
| -rw-r--r-- | core/hdd/src/wlan_hdd_main.c | 2 |
3 files changed, 7 insertions, 4 deletions
diff --git a/core/hdd/inc/wlan_hdd_cfg.h b/core/hdd/inc/wlan_hdd_cfg.h index 11817f9704af..808cc768b6a0 100644 --- a/core/hdd/inc/wlan_hdd_cfg.h +++ b/core/hdd/inc/wlan_hdd_cfg.h @@ -16526,6 +16526,8 @@ struct hdd_config { uint16_t thermal_throt_dc; #endif bool disable_4way_hs_offload; + bool ShortGI80MhzEnable; + bool ShortGI160MhzEnable; }; #define VAR_OFFSET(_Struct, _Var) (offsetof(_Struct, _Var)) diff --git a/core/hdd/src/wlan_hdd_cfg.c b/core/hdd/src/wlan_hdd_cfg.c index edda70828e15..c47987d70367 100644 --- a/core/hdd/src/wlan_hdd_cfg.c +++ b/core/hdd/src/wlan_hdd_cfg.c @@ -8571,15 +8571,14 @@ static bool hdd_update_vht_cap_in_cfg(hdd_context_t *hdd_ctx) (config->dot11Mode == eHDD_DOT11_MODE_11ac)) { /* Currently shortGI40Mhz is used for shortGI80Mhz and 160MHz*/ if (sme_cfg_set_int(hdd_ctx->hHal, WNI_CFG_VHT_SHORT_GI_80MHZ, - config->ShortGI40MhzEnable) == QDF_STATUS_E_FAILURE) { + config->ShortGI80MhzEnable) == QDF_STATUS_E_FAILURE) { status = false; hdd_err("Couldn't pass WNI_VHT_SHORT_GI_80MHZ to CFG"); } if (sme_cfg_set_int(hdd_ctx->hHal, - WNI_CFG_VHT_SHORT_GI_160_AND_80_PLUS_80MHZ, - config->ShortGI40MhzEnable) == - QDF_STATUS_E_FAILURE) { + WNI_CFG_VHT_SHORT_GI_160_AND_80_PLUS_80MHZ, + config->ShortGI160MhzEnable) == QDF_STATUS_E_FAILURE) { status = false; hdd_err("Couldn't pass SHORT_GI_160MHZ to CFG"); } diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 6747d89d69e5..8a4591825f7a 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -1593,6 +1593,7 @@ static void hdd_update_tgt_vht_cap(hdd_context_t *hdd_ctx, hdd_err("could not get GI 80 & 160"); value = 0; } + pconfig->ShortGI160MhzEnable = cfg->vht_short_gi_160; /* set the Guard interval 160MHz */ if (value && !cfg->vht_short_gi_160) { status = sme_cfg_set_int(hdd_ctx->hHal, @@ -1623,6 +1624,7 @@ static void hdd_update_tgt_vht_cap(hdd_context_t *hdd_ctx, } } + pconfig->ShortGI80MhzEnable = cfg->vht_short_gi_80; if (cfg->vht_short_gi_80 & WMI_VHT_CAP_SGI_80MHZ) band_5g->vht_cap.cap |= IEEE80211_VHT_CAP_SHORT_GI_80; |
