summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2017-02-13 09:44:13 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2017-02-13 09:44:13 -0800
commitc62b5b553b3d97d52cf9d978932fa2cccb1e470f (patch)
treed4ac3bdac5d9f3a59c13d08fd26d13fa5dbc924c
parentd733ee1d6b7a43849d750542e7fc1e5c96c126c8 (diff)
parentd04af1ff76fa12a652adc9c21107393ffc93204e (diff)
Merge "qcacld-2.0: Fix channel switch fail in static 5/10M mode" into wlan-cld2.driver.lnx.1.0-dev
-rw-r--r--CORE/SYS/legacy/src/utils/src/parserApi.c18
1 files changed, 15 insertions, 3 deletions
diff --git a/CORE/SYS/legacy/src/utils/src/parserApi.c b/CORE/SYS/legacy/src/utils/src/parserApi.c
index 9006771635ee..0da9a22ae37e 100644
--- a/CORE/SYS/legacy/src/utils/src/parserApi.c
+++ b/CORE/SYS/legacy/src/utils/src/parserApi.c
@@ -376,15 +376,27 @@ populate_dot11f_sub_20_channel_width_ie(
tDot11fIEQComVendorIE *dot11f_ptr,
tpPESession pe_session)
{
- if (mac_ctx_ptr->sub20_dynamic_channelwidth == 0)
+ uint8_t sub20_static_channelwidth;
+ uint8_t sub20_dynamic_channelwidth;
+ uint8_t sub20_capability;
+
+ sub20_static_channelwidth = mac_ctx_ptr->sub20_channelwidth;
+ sub20_dynamic_channelwidth = mac_ctx_ptr->sub20_dynamic_channelwidth;
+
+ if (sub20_static_channelwidth == 0 &&
+ sub20_dynamic_channelwidth == 0)
return;
+ if (sub20_dynamic_channelwidth != 0)
+ sub20_capability = sub20_dynamic_channelwidth;
+ else
+ sub20_capability = sub20_static_channelwidth;
+
if (LIM_IS_AP_ROLE(pe_session) ||
LIM_IS_STA_ROLE(pe_session)) {
dot11f_ptr->present = true;
dot11f_ptr->Sub20Info.present = true;
- dot11f_ptr->Sub20Info.capability =
- mac_ctx_ptr->sub20_dynamic_channelwidth;
+ dot11f_ptr->Sub20Info.capability = sub20_capability;
}
if (LIM_IS_AP_ROLE(pe_session) &&