summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmar Singhal <asinghal@codeaurora.org>2016-10-25 15:42:27 -0700
committerqcabuildsw <qcabuildsw@localhost>2016-10-26 15:04:51 -0700
commit833aa96a5b4fa25a3f1aaf1e5a835b0631f741b9 (patch)
treee8c1296c78d077c406c4bf9a76a2cd6a11a36a24
parent21a4e5139f7405e4c1cf3351280726361b392fc6 (diff)
qcacld-3.0: Set maximum channel width correctly
In case channel width is defined to be CH_WIDTH_MAX; channel width set to CH_WIDTH_80P80MHZ. This can be incorrect if the secondary frequency segment is not defined. So conditionally set maximum channel width to CH_WITH_160MHZ. CRs-Fixed: 1082221 Change-Id: Iff28c56de56e5481814b4710eb51920a88f0f5f7
-rw-r--r--core/cds/src/cds_reg_service.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/core/cds/src/cds_reg_service.c b/core/cds/src/cds_reg_service.c
index 9b6b00d8d079..b486963516cb 100644
--- a/core/cds/src/cds_reg_service.c
+++ b/core/cds/src/cds_reg_service.c
@@ -469,8 +469,12 @@ static void cds_set_5g_channel_params(uint16_t oper_ch,
const struct bonded_chan *bonded_chan_ptr = NULL;
const struct bonded_chan *bonded_chan_ptr2 = NULL;
- if (CH_WIDTH_MAX <= ch_params->ch_width)
- ch_params->ch_width = CH_WIDTH_80P80MHZ;
+ if (CH_WIDTH_MAX <= ch_params->ch_width) {
+ if (0 != ch_params->center_freq_seg1)
+ ch_params->ch_width = CH_WIDTH_80P80MHZ;
+ else
+ ch_params->ch_width = CH_WIDTH_160MHZ;
+ }
while (ch_params->ch_width != CH_WIDTH_INVALID) {
bonded_chan_ptr = NULL;