diff options
| author | Kiran Kumar Lokere <klokere@codeaurora.org> | 2016-05-11 19:41:44 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2016-06-01 10:45:42 -0700 |
| commit | 9d41f61a0cbc8ee41d752a48103455255e745f59 (patch) | |
| tree | 82ec347804d2a5246120639cad184ac125e7e239 | |
| parent | 046eb8a26062c0b88eb1c3fb40f1634d36bbbf2b (diff) | |
qcacld-3.0: Send the correct phy mode in SAP+STA mode
In STA+SAP concurrency case the SAP channel is changed to due
to concurrency operation. Since the new channel params are not
updated in sap context, the old channel params are sent to WMA,
hence the PHY MODE is passed as UNKNOWN to FW.
Set the channel params when the SAP operating channel is changed
due to concurrent operation.
Change-Id: I8ac503a1b8993401b6fbdc247872539b72901564
CRs-Fixed: 1014368
| -rw-r--r-- | core/cds/src/cds_reg_service.c | 7 | ||||
| -rw-r--r-- | core/sap/src/sap_fsm.c | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/core/cds/src/cds_reg_service.c b/core/cds/src/cds_reg_service.c index 42cde31fe19f..67886938a56c 100644 --- a/core/cds/src/cds_reg_service.c +++ b/core/cds/src/cds_reg_service.c @@ -509,6 +509,13 @@ static void cds_set_2g_channel_params(uint16_t oper_ch, if (CH_WIDTH_MAX <= ch_params->ch_width) ch_params->ch_width = CH_WIDTH_40MHZ; + if ((cds_bw_value(ch_params->ch_width) > 20) && !sec_ch_2g) { + if (oper_ch >= 1 && oper_ch <= 5) + sec_ch_2g = oper_ch + 4; + else if (oper_ch >= 6 && oper_ch <= 13) + sec_ch_2g = oper_ch - 4; + } + while (ch_params->ch_width != CH_WIDTH_INVALID) { chan_state = cds_get_2g_bonded_channel_state(oper_ch, ch_params->ch_width, diff --git a/core/sap/src/sap_fsm.c b/core/sap/src/sap_fsm.c index 9be884d40020..faea47e5d849 100644 --- a/core/sap/src/sap_fsm.c +++ b/core/sap/src/sap_fsm.c @@ -2148,6 +2148,8 @@ QDF_STATUS sap_goto_channel_sel(ptSapContext sap_context, "%s: Override ch %d to %d due to CC Intf", __func__, sap_context->channel, con_ch); sap_context->channel = con_ch; + cds_set_channel_params(sap_context->channel, 0, + &sap_context->ch_params); } } #endif @@ -2180,6 +2182,8 @@ QDF_STATUS sap_goto_channel_sel(ptSapContext sap_context, "%s: Override ch %d to %d due to CC Intf", __func__, sap_context->channel, con_ch); sap_context->channel = con_ch; + cds_set_channel_params(sap_context->channel, 0, + &sap_context->ch_params); } } #endif |
