summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbhinav Kumar <abhikuma@codeaurora.org>2018-08-24 18:59:24 +0530
committernshrivas <nshrivas@codeaurora.org>2018-09-06 13:30:43 -0700
commitf9262912843696f3bd6644e497f16aafdaa52ae5 (patch)
tree1316fb201a7db14afa8a1658c8c2b49140229b38
parentecd54bdb6334f6f0f26dbce998661ec21014989d (diff)
qcacld-3.0: Update secondary channel params for SAP after SSR
In case of recovery of SAP after SSR, driver is not updating params for secondary channel as per primary channel (Operation channel) for SAP. Update parameters for secondary channel as per primary channel before SAP start. Change-Id: I2da2eff62881fe4e65208be778618d0b9c05bf88 CRs-Fixed: 2292645
-rw-r--r--core/hdd/src/wlan_hdd_hostapd.c9
-rw-r--r--core/hdd/src/wlan_hdd_main.c3
2 files changed, 10 insertions, 2 deletions
diff --git a/core/hdd/src/wlan_hdd_hostapd.c b/core/hdd/src/wlan_hdd_hostapd.c
index 849bd5be2d97..b8d2ff72750a 100644
--- a/core/hdd/src/wlan_hdd_hostapd.c
+++ b/core/hdd/src/wlan_hdd_hostapd.c
@@ -1657,6 +1657,7 @@ QDF_STATUS hdd_hostapd_sap_event_cb(tpSap_Event pSapEvent,
hdd_station_info_t *stainfo;
cds_context_type *cds_ctx;
hdd_adapter_t *sta_adapter;
+ tsap_Config_t *sap_config;
dev = (struct net_device *)usrDataForCallback;
if (!dev) {
@@ -1705,6 +1706,7 @@ QDF_STATUS hdd_hostapd_sap_event_cb(tpSap_Event pSapEvent,
dfs_info.channel = pHddApCtx->operatingChannel;
sme_get_country_code(pHddCtx->hHal, dfs_info.country_code, &cc_len);
+ sap_config = &pHostapdAdapter->sessionCtx.ap.sapConfig;
switch (sapEvent) {
case eSAP_START_BSS_EVENT:
@@ -1718,13 +1720,16 @@ QDF_STATUS hdd_hostapd_sap_event_cb(tpSap_Event pSapEvent,
pHostapdAdapter->sessionId =
pSapEvent->sapevt.sapStartBssCompleteEvent.sessionId;
- pHostapdAdapter->sessionCtx.ap.sapConfig.channel =
+ sap_config->channel =
pSapEvent->sapevt.sapStartBssCompleteEvent.
operatingChannel;
- pHostapdAdapter->sessionCtx.ap.sapConfig.ch_params.ch_width =
+ sap_config->ch_params.ch_width =
pSapEvent->sapevt.sapStartBssCompleteEvent.ch_width;
+ cds_set_channel_params(sap_config->channel, 0,
+ &sap_config->ch_params);
+
pHostapdState->qdf_status =
pSapEvent->sapevt.sapStartBssCompleteEvent.status;
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index 9791b741fa58..46269a9f4f73 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -12109,6 +12109,9 @@ void wlan_hdd_start_sap(hdd_adapter_t *ap_adapter, bool reinit)
goto end;
}
+ cds_set_channel_params(hdd_ap_ctx->sapConfig.channel, 0,
+ &hdd_ap_ctx->sapConfig.ch_params);
+
qdf_event_reset(&hostapd_state->qdf_event);
if (wlansap_start_bss(hdd_ap_ctx->sapContext, hdd_hostapd_sap_event_cb,
&hdd_ap_ctx->sapConfig,