From 4252a2fc6f627d8bfe0515330dcfb7aa97bfd232 Mon Sep 17 00:00:00 2001 From: Ryan Hsu Date: Tue, 5 Jan 2016 11:18:24 -0800 Subject: [PATCH] qcacld-3.0: clean up the WLAN_FEATURE_MBSSID flag (phase 1) WLAN_FEATURE_MBSSID flag is originally added to support MBSSID, specifically for the MOBILE ROUTER build, and is now enabled for all builds, there is no longer needed to have a separate feature flag, so that removing it. This commit cleans up the following modules - cds/mac/sap/sme. Change-Id: I79ad9767b7945af0c567b6294ac07e7697898e9e CRs-fixed: 958154 --- core/cds/inc/cds_concurrency.h | 9 --- core/cds/inc/cds_sched.h | 7 +- core/cds/src/cds_api.c | 27 +------- core/cds/src/cds_concurrency.c | 37 +++-------- core/mac/src/pe/sch/sch_beacon_process.c | 31 +-------- core/sap/inc/sap_api.h | 15 +---- core/sap/src/sap_ch_select.c | 19 ++---- core/sap/src/sap_fsm.c | 9 ++- core/sap/src/sap_internal.h | 11 +--- core/sap/src/sap_module.c | 81 ++++-------------------- core/sme/src/common/sme_api.c | 46 -------------- core/sme/src/csr/csr_util.c | 32 ++-------- 12 files changed, 44 insertions(+), 280 deletions(-) diff --git a/core/cds/inc/cds_concurrency.h b/core/cds/inc/cds_concurrency.h index c5c30e2389fd..4e48d9f431d6 100644 --- a/core/cds/inc/cds_concurrency.h +++ b/core/cds/inc/cds_concurrency.h @@ -648,16 +648,7 @@ bool cds_max_concurrent_connections_reached(void); void cds_clear_concurrent_session_count(void); bool cds_is_multiple_active_sta_sessions(void); bool cds_is_sta_active_connection_exists(void); - -#ifdef WLAN_FEATURE_MBSSID bool cds_concurrent_beaconing_sessions_running(void); -#else -static inline bool cds_concurrent_beaconing_sessions_running(void) -{ - return true; -} -#endif - CDF_STATUS cdf_wait_for_connection_update(void); CDF_STATUS cdf_reset_connection_update(void); CDF_STATUS cdf_set_connection_update(void); diff --git a/core/cds/inc/cds_sched.h b/core/cds/inc/cds_sched.h index d58c3c21c168..cafff80dd699 100644 --- a/core/cds/inc/cds_sched.h +++ b/core/cds/inc/cds_sched.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2016 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -250,11 +250,6 @@ typedef struct _cds_context_type { /* MAC Module Context */ void *pMACContext; -#ifndef WLAN_FEATURE_MBSSID - /* SAP Context */ - void *pSAPContext; -#endif - cdf_event_t ProbeEvent; uint32_t driver_state; diff --git a/core/cds/src/cds_api.c b/core/cds/src/cds_api.c index 4f2477dedbe4..dc2ffef7d5d0 100644 --- a/core/cds/src/cds_api.c +++ b/core/cds/src/cds_api.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2016 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -863,14 +863,6 @@ void *cds_get_context(CDF_MODULE_ID moduleId) } switch (moduleId) { -#ifndef WLAN_FEATURE_MBSSID - case CDF_MODULE_ID_SAP: - { - pModContext = gp_cds_context->pSAPContext; - break; - } -#endif - case CDF_MODULE_ID_HDD: { pModContext = gp_cds_context->pHDDContext; @@ -1064,15 +1056,6 @@ CDF_STATUS cds_alloc_context(void *p_cds_context, CDF_MODULE_ID moduleID, } switch (moduleID) { - -#ifndef WLAN_FEATURE_MBSSID - case CDF_MODULE_ID_SAP: - { - pGpModContext = &(gp_cds_context->pSAPContext); - break; - } -#endif - case CDF_MODULE_ID_WMA: { pGpModContext = &(gp_cds_context->pWMAContext); @@ -1160,14 +1143,6 @@ CDF_STATUS cds_free_context(void *p_cds_context, CDF_MODULE_ID moduleID, } switch (moduleID) { -#ifndef WLAN_FEATURE_MBSSID - case CDF_MODULE_ID_SAP: - { - pGpModContext = &(gp_cds_context->pSAPContext); - break; - } -#endif - case CDF_MODULE_ID_WMA: { pGpModContext = &(gp_cds_context->pWMAContext); diff --git a/core/cds/src/cds_concurrency.c b/core/cds/src/cds_concurrency.c index f7bf7f0e64cf..a832dbb67452 100644 --- a/core/cds/src/cds_concurrency.c +++ b/core/cds/src/cds_concurrency.c @@ -6633,11 +6633,8 @@ static void cds_check_sta_ap_concurrent_ch_intf(void *data) if (hal_handle == NULL) return; -#ifdef WLAN_FEATURE_MBSSID intf_ch = wlansap_check_cc_intf(hdd_ap_ctx->sapContext); -#else - intf_ch = wlansap_check_cc_intf(hdd_ctx->pcds_context); -#endif + if (intf_ch == 0) return; @@ -7177,9 +7174,7 @@ void cds_set_mcc_latency(hdd_adapter_t *adapter, int set_value) #if defined(FEATURE_WLAN_MCC_TO_SCC_SWITCH) || \ defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) /** - * cds_restart_sap() - This function is used to restart SAP in - * driver internally - * + * cds_restart_sap() - to restart SAP in driver internally * @ap_adapter: Pointer to SAP hdd_adapter_t structure * * Return: None @@ -7194,9 +7189,11 @@ void cds_restart_sap(hdd_adapter_t *ap_adapter) struct tagCsrDelStaParams delStaParams; #endif tsap_Config_t *sap_config; + void *sap_ctx; hdd_ap_ctx = WLAN_HDD_GET_AP_CTX_PTR(ap_adapter); - sap_config = &ap_adapter->sessionCtx.ap.sapConfig; + sap_config = &hdd_ap_ctx.sapConfig; + sap_ctx = hdd_ap_ctx->sapContext; mutex_lock(&hdd_ctx->sap_lock); if (test_bit(SOFTAP_BSS_STARTED, &ap_adapter->event_flags)) { @@ -7214,13 +7211,7 @@ void cds_restart_sap(hdd_adapter_t *ap_adapter) hdd_cleanup_actionframe(hdd_ctx, ap_adapter); hostapd_state = WLAN_HDD_GET_HOSTAP_STATE_PTR(ap_adapter); cdf_event_reset(&hostapd_state->cdf_stop_bss_event); - if (CDF_STATUS_SUCCESS == wlansap_stop_bss( -#ifdef WLAN_FEATURE_MBSSID - hdd_ap_ctx->sapContext -#else - hdd_ctx->pcds_context -#endif - )) { + if (CDF_STATUS_SUCCESS == wlansap_stop_bss(sap_ctx)) { cdf_status = cdf_wait_single_event(&hostapd_state-> cdf_stop_bss_event, @@ -7243,16 +7234,9 @@ void cds_restart_sap(hdd_adapter_t *ap_adapter) goto end; } - if (wlansap_start_bss( -#ifdef WLAN_FEATURE_MBSSID - hdd_ap_ctx->sapContext, -#else - hdd_ctx->pcds_context, -#endif - hdd_hostapd_sap_event_cb, - &hdd_ap_ctx->sapConfig, - ap_adapter->dev) != - CDF_STATUS_SUCCESS) { + if (wlansap_start_bss(sap_ctx, hdd_hostapd_sap_event_cb, + sap_config, + ap_adapter->dev) != CDF_STATUS_SUCCESS) { cds_err("SAP Start Bss fail"); goto end; } @@ -7544,7 +7528,6 @@ bool cds_concurrent_open_sessions_running(void) return j > 1; } -#ifdef WLAN_FEATURE_MBSSID /** * cds_concurrent_beaconing_sessions_running() - Checks for concurrent beaconing * entities @@ -7567,7 +7550,7 @@ bool cds_concurrent_beaconing_sessions_running(void) } return i > 1; } -#endif + /** * cds_max_concurrent_connections_reached() - Check if max conccurrency is diff --git a/core/mac/src/pe/sch/sch_beacon_process.c b/core/mac/src/pe/sch/sch_beacon_process.c index 059a58712a36..489d75808d6b 100644 --- a/core/mac/src/pe/sch/sch_beacon_process.c +++ b/core/mac/src/pe/sch/sch_beacon_process.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -848,11 +848,10 @@ static void __sch_beacon_process_for_session(tpAniSirGlobal mac_ctx, /** * sch_beacon_process() - process the beacon frame - * * @mac_ctx: mac global context * @rx_pkt_info: pointer to buffer descriptor * - * @return None + * Return: None */ void sch_beacon_process(tpAniSirGlobal mac_ctx, uint8_t *rx_pkt_info, @@ -861,9 +860,7 @@ sch_beacon_process(tpAniSirGlobal mac_ctx, uint8_t *rx_pkt_info, static tSchBeaconStruct bcn; tUpdateBeaconParams bcn_prm; tpPESession ap_session = NULL; -#ifdef WLAN_FEATURE_MBSSID uint8_t i; -#endif cdf_mem_zero(&bcn_prm, sizeof(tUpdateBeaconParams)); bcn_prm.paramChangeBitmap = 0; @@ -889,7 +886,6 @@ sch_beacon_process(tpAniSirGlobal mac_ctx, uint8_t *rx_pkt_info, * on another concurrent link. In this case also, we want to apply the * protection settings(as advertised by Infra AP) to BTAP beacons */ -#ifdef WLAN_FEATURE_MBSSID for (i = 0; i < mac_ctx->lim.maxBssId; i++) { ap_session = pe_find_session_by_session_id(mac_ctx, i); if (!((ap_session != NULL) && @@ -918,30 +914,7 @@ sch_beacon_process(tpAniSirGlobal mac_ctx, uint8_t *rx_pkt_info, lim_send_beacon_params(mac_ctx, &bcn_prm, ap_session); } } -#else - ap_session = lim_is_ap_session_active(mac_ctx); - if ((ap_session != NULL) - && (!(WMA_GET_OFFLOADSCANLEARN(rx_pkt_info)))) { - bcn_prm.bssIdx = ap_session->bssIdx; - if (ap_session->gLimProtectionControl != - WNI_CFG_FORCE_POLICY_PROTECTION_DISABLE) - ap_beacon_process(mac_ctx, rx_pkt_info, &bcn, - &bcn_prm, ap_session); - if ((false == mac_ctx->sap.SapDfsInfo.is_dfs_cac_timer_running) - && bcn_prm.paramChangeBitmap) { - /* Update the bcn and apply the new settings to HAL */ - sch_set_fixed_beacon_fields(mac_ctx, ap_session); - PELOG1(sch_log(mac_ctx, LOG1, - FL("Beacon for PE session[%d] got changed."), - ap_session->peSessionId);) - PELOG1(sch_log(mac_ctx, LOG1, - FL("sending beacon param change bitmap: 0x%x "), - bcn_prm.paramChangeBitmap);) - lim_send_beacon_params(mac_ctx, &bcn_prm, ap_session); - } - } -#endif /* * Now process the beacon in the context of the BSS which is * transmitting the beacons, if one is found diff --git a/core/sap/inc/sap_api.h b/core/sap/inc/sap_api.h index 165efe61c290..1109ca023c59 100644 --- a/core/sap/inc/sap_api.h +++ b/core/sap/inc/sap_api.h @@ -69,11 +69,7 @@ extern "C" { #define MAX_TEXT_SIZE 32 #define MAX_CHANNEL_LIST_LEN 256 -#ifdef WLAN_FEATURE_MBSSID #define CDF_MAX_NO_OF_SAP_MODE 2 /* max # of SAP */ -#else -#define CDF_MAX_NO_OF_SAP_MODE 1 /* max # of SAP */ -#endif #define SAP_MAX_NUM_SESSION 5 #define SAP_MAX_OBSS_STA_CNT 1 /* max # of OBSS STA */ #define SAP_ACS_WEIGHT_MAX (4444) @@ -803,23 +799,14 @@ typedef struct { bool isSafe; } sapSafeChannelType; #endif /* FEATURE_WLAN_CH_AVOID */ -#ifdef WLAN_FEATURE_MBSSID void sap_cleanup_channel_list(void *sapContext); -#else -void sap_cleanup_channel_list(void); -#endif void sapCleanupAllChannelList(void); CDF_STATUS wlansap_set_wps_ie(void *p_cds_gctx, tSap_WPSIE *pWPSIe); CDF_STATUS wlansap_update_wps_ie(void *p_cds_gctx); CDF_STATUS wlansap_stop_Wps(void *p_cds_gctx); CDF_STATUS wlansap_get_wps_state(void *p_cds_gctx, bool *pbWPSState); -#ifdef WLAN_FEATURE_MBSSID -void * -#else -CDF_STATUS -#endif -wlansap_open(void *p_cds_gctx); +void *wlansap_open(void *p_cds_gctx); CDF_STATUS wlansap_start(void *p_cds_gctx); CDF_STATUS wlansap_stop(void *p_cds_gctx); CDF_STATUS wlansap_close(void *p_cds_gctx); diff --git a/core/sap/src/sap_ch_select.c b/core/sap/src/sap_ch_select.c index 9e7aabc01787..b22f6cffdb96 100644 --- a/core/sap/src/sap_ch_select.c +++ b/core/sap/src/sap_ch_select.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -434,8 +434,7 @@ void sap_update_unsafe_channel_list(ptSapContext pSapCtx) } /* Try to find unsafe channel */ -#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) || \ - defined(WLAN_FEATURE_MBSSID) +#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) for (i = 0; i < NUM_20MHZ_RF_CHANNELS; i++) { if (pSapCtx->dfs_ch_disable == true) { if (CDS_IS_DFS_CH(safe_channels[i].channelNumber)) { @@ -501,16 +500,8 @@ void sap_update_unsafe_channel_list(ptSapContext pSapCtx) NULL ============================================================================*/ -void sap_cleanup_channel_list( -#ifdef WLAN_FEATURE_MBSSID - void *p_cds_gctx -#else - void -#endif - ) { -#ifndef WLAN_FEATURE_MBSSID - void *p_cds_gctx = cds_get_global_context(); -#endif +void sap_cleanup_channel_list(void *p_cds_gctx) +{ ptSapContext pSapCtx; CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_INFO, @@ -647,7 +638,7 @@ bool sap_chan_sel_init(tHalHandle halHandle, pChans = pMac->scan.base_channels.channelList; -#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) || defined(WLAN_FEATURE_MBSSID) +#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) if (pSapCtx->dfs_ch_disable == true) include_dfs_ch = false; #endif diff --git a/core/sap/src/sap_fsm.c b/core/sap/src/sap_fsm.c index 771fc58cf699..b66bf04e6ee1 100644 --- a/core/sap/src/sap_fsm.c +++ b/core/sap/src/sap_fsm.c @@ -1981,11 +1981,11 @@ CDF_STATUS sap_goto_channel_sel(ptSapContext sap_context, FL("invalid h_hal")); return CDF_STATUS_E_FAULT; } -#ifdef WLAN_FEATURE_MBSSID + if (cds_concurrent_beaconing_sessions_running()) { con_ch = sme_get_concurrent_operation_channel(h_hal); - +#ifdef FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE if (con_ch && sap_context->channel == AUTO_CHANNEL_SELECT) { sap_context->dfs_ch_disable = true; } else if (con_ch && sap_context->channel != con_ch && @@ -1994,6 +1994,7 @@ CDF_STATUS sap_goto_channel_sel(ptSapContext sap_context, FL("MCC DFS not supported in AP_AP Mode")); return CDF_STATUS_E_ABORTED; } +#endif #ifdef FEATURE_WLAN_MCC_TO_SCC_SWITCH if (sap_context->cc_switch_mode != CDF_MCC_TO_SCC_SWITCH_DISABLE) { @@ -2011,7 +2012,6 @@ CDF_STATUS sap_goto_channel_sel(ptSapContext sap_context, } #endif } -#endif if (cds_get_concurrency_mode() == (CDF_STA_MASK | CDF_SAP_MASK)) { #ifdef FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE @@ -3251,7 +3251,6 @@ static CDF_STATUS sap_fsm_state_ch_select(ptSapContext sap_ctx, eCSR_DOT11_MODE_11g_ONLY)) sap_ctx->csr_roamProfile.phyMode = eCSR_DOT11_MODE_11a; -#ifdef WLAN_FEATURE_MBSSID /* * when AP2 is started while AP1 is performing ACS, we may not * have the AP1 channel yet.So here after the completion of AP2 @@ -3265,7 +3264,7 @@ static CDF_STATUS sap_fsm_state_ch_select(ptSapContext sap_ctx, if (con_ch && CDS_IS_DFS_CH(con_ch)) sap_ctx->channel = con_ch; } -#endif + /* * Transition from eSAP_CH_SELECT to eSAP_STARTING * (both without substates) diff --git a/core/sap/src/sap_internal.h b/core/sap/src/sap_internal.h index a94c251c581b..1e88ffccf549 100644 --- a/core/sap/src/sap_internal.h +++ b/core/sap/src/sap_internal.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2015 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -58,13 +58,9 @@ extern "C" { #define SAP_DEBUG /* Used to enable or disable security on the BT-AMP link */ #define WLANSAP_SECURITY_ENABLED_STATE true -#ifdef WLAN_FEATURE_MBSSID + /* When MBSSID feature is enabled, SAP context is directly passed to SAP APIs */ #define CDS_GET_SAP_CB(ctx) (ptSapContext)(ctx) -#else -/* How do I get SAP context from cds context? */ -#define CDS_GET_SAP_CB(ctx) cds_get_context(CDF_MODULE_ID_SAP) -#endif #define CDS_GET_HAL_CB(ctx) cds_get_context(CDF_MODULE_ID_PE) /* MAC Address length */ @@ -239,8 +235,7 @@ typedef struct sSapContext { uint8_t cc_switch_mode; #endif -#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) || \ - defined(WLAN_FEATURE_MBSSID) +#if defined(FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE) bool dfs_ch_disable; #endif bool isCacEndNotified; diff --git a/core/sap/src/sap_module.c b/core/sap/src/sap_module.c index 2bbeccc2e7bb..581db3d8bdc2 100644 --- a/core/sap/src/sap_module.c +++ b/core/sap/src/sap_module.c @@ -99,54 +99,22 @@ ptSapContext gp_sap_ctx; * all its internal resources and will wait for the call to start to * register with the other modules. * - * Return: The result code associated with performing the operation - * - * #ifdef WLAN_FEATURE_MBSSID - * void *: Pointer to the SAP context - * #else - * CDF_STATUS_E_FAULT: Pointer to SAP cb is NULL ; - * access would cause a page fault - * CDF_STATUS_SUCCESS: Success - * #endif + * Return: Pointer to the SAP context */ -#ifdef WLAN_FEATURE_MBSSID -void * -#else -CDF_STATUS -#endif -wlansap_open(void *p_cds_gctx) { +void *wlansap_open(void *p_cds_gctx) +{ ptSapContext pSapCtx = NULL; - /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/ -#ifdef WLAN_FEATURE_MBSSID - /* amically allocate the sapContext */ + /* dynamically allocate the sapContext */ pSapCtx = (ptSapContext) cdf_mem_malloc(sizeof(tSapContext)); -#else - if (NULL == p_cds_gctx) { - CDF_ASSERT(p_cds_gctx); - return CDF_STATUS_E_NOMEM; - } - /*------------------------------------------------------------------------ - Allocate (and sanity check?!) SAP control block - ------------------------------------------------------------------------*/ - cds_alloc_context(p_cds_gctx, CDF_MODULE_ID_SAP, (void **)&pSapCtx, - sizeof(tSapContext)); -#endif if (NULL == pSapCtx) { CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_ERROR, "%s: Invalid SAP pointer from p_cds_gctx", __func__); -#ifdef WLAN_FEATURE_MBSSID return NULL; -#else - return CDF_STATUS_E_FAULT; -#endif } - - /*------------------------------------------------------------------------ - Clean up SAP control block, initialize all values - ------------------------------------------------------------------------*/ + /* Clean up SAP control block, initialize all values */ CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_INFO_HIGH, "wlansap_open"); wlansap_clean_cb(pSapCtx, 0); /*do not empty */ @@ -157,15 +125,7 @@ wlansap_open(void *p_cds_gctx) { /* Store a pointer to the SAP context provided by CDS */ gp_sap_ctx = pSapCtx; - /*------------------------------------------------------------------------ - Allocate internal resources - ------------------------------------------------------------------------*/ - -#ifdef WLAN_FEATURE_MBSSID return pSapCtx; -#else - return CDF_STATUS_SUCCESS; -#endif } /* wlansap_open */ /** @@ -253,10 +213,7 @@ CDF_STATUS wlansap_stop(void *pCtx) { ptSapContext pSapCtx = NULL; - /*------------------------------------------------------------------------ - Sanity check - Extract SAP control block - ------------------------------------------------------------------------*/ + /* Sanity check - Extract SAP control block */ CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_INFO_HIGH, "wlansap_stop invoked successfully "); @@ -274,9 +231,6 @@ CDF_STATUS wlansap_stop(void *pCtx) "wlansap_stop failed destroy lock"); return CDF_STATUS_E_FAULT; } - /*------------------------------------------------------------------------ - Stop SAP (de-register RSN handler!?) - ------------------------------------------------------------------------*/ return CDF_STATUS_SUCCESS; } @@ -299,12 +253,7 @@ CDF_STATUS wlansap_close(void *pCtx) { ptSapContext pSapCtx = NULL; - /*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/ - - /*------------------------------------------------------------------------ - Sanity check - Extract SAP control block - ------------------------------------------------------------------------*/ + /* Sanity check - Extract SAP control block */ CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_INFO_HIGH, "wlansap_close invoked"); @@ -315,22 +264,14 @@ CDF_STATUS wlansap_close(void *pCtx) return CDF_STATUS_E_FAULT; } - /*------------------------------------------------------------------------ - Cleanup SAP control block. - ------------------------------------------------------------------------*/ + /* Cleanup SAP control block */ CDF_TRACE(CDF_MODULE_ID_SAP, CDF_TRACE_LEVEL_INFO_HIGH, "wlansap_close"); - wlansap_clean_cb(pSapCtx, - true); /* empty queues/lists/pkts if any */ -#ifdef WLAN_FEATURE_MBSSID + /* empty queues/lists/pkts if any */ + wlansap_clean_cb(pSapCtx, true); + cdf_mem_free(pSapCtx); -#else - /*------------------------------------------------------------------------ - Free SAP context from CDS global - ------------------------------------------------------------------------*/ - cds_free_context(pCtx, CDF_MODULE_ID_SAP, pSapCtx); -#endif return CDF_STATUS_SUCCESS; } /* wlansap_close */ diff --git a/core/sme/src/common/sme_api.c b/core/sme/src/common/sme_api.c index 1d45f67c78c8..8fd48ac788e0 100644 --- a/core/sme/src/common/sme_api.c +++ b/core/sme/src/common/sme_api.c @@ -1045,9 +1045,6 @@ CDF_STATUS sme_open(tHalHandle hHal) { CDF_STATUS status = CDF_STATUS_E_FAILURE; tpAniSirGlobal pMac = PMAC_STRUCT(hHal); -#ifndef WLAN_FEATURE_MBSSID - void *p_cds_gctx = cds_get_global_context(); -#endif pMac->sme.state = SME_STATE_STOP; pMac->sme.currDeviceMode = CDF_STA_MODE; @@ -1092,18 +1089,6 @@ CDF_STATUS sme_open(tHalHandle hHal) status = init_sme_cmd_list(pMac); if (!CDF_IS_STATUS_SUCCESS(status)) return status; -#ifndef WLAN_FEATURE_MBSSID - if (NULL == p_cds_gctx) { - sms_log(pMac, LOGE, FL("p_cds_gctx is NULL")); - return CDF_STATUS_E_FAILURE; - } - status = wlansap_open(p_cds_gctx); - if (!CDF_IS_STATUS_SUCCESS(status)) { - sms_log(pMac, LOGE, FL("wlansap_open failed, status=%d"), - status); - return status; - } -#endif #if defined WLAN_FEATURE_VOWIFI status = rrm_open(pMac); @@ -1754,17 +1739,6 @@ CDF_STATUS sme_start(tHalHandle hHal) status); break; } - -#ifndef WLAN_FEATURE_MBSSID - status = wlansap_start(cds_get_global_context()); - if (!CDF_IS_STATUS_SUCCESS(status)) { - sms_log(pMac, LOGE, - "wlansap_start failed during smeStart with status=%d", - status); - break; - } -#endif - pMac->sme.state = SME_STATE_START; } while (0); @@ -2870,16 +2844,6 @@ CDF_STATUS sme_stop(tHalHandle hHal, tHalStopType stopType) CDF_STATUS fail_status = CDF_STATUS_SUCCESS; tpAniSirGlobal pMac = PMAC_STRUCT(hHal); -#ifndef WLAN_FEATURE_MBSSID - status = wlansap_stop(cds_get_global_context()); - if (!CDF_IS_STATUS_SUCCESS(status)) { - sms_log(pMac, LOGE, - "wlansap_stop failed during smeStop with status=%d", - status); - fail_status = status; - } -#endif - p2p_stop(hHal); status = csr_stop(pMac, stopType); @@ -2936,16 +2900,6 @@ CDF_STATUS sme_close(tHalHandle hHal) status); fail_status = status; } -#ifndef WLAN_FEATURE_MBSSID - status = wlansap_close(cds_get_global_context()); - if (!CDF_IS_STATUS_SUCCESS(status)) { - sms_log(pMac, LOGE, - "WLANSAP_close failed during sme close with status=%d", - status); - fail_status = status; - } -#endif - #ifndef WLAN_MDM_CODE_REDUCTION_OPT status = sme_qos_close(pMac); if (!CDF_IS_STATUS_SUCCESS(status)) { diff --git a/core/sme/src/csr/csr_util.c b/core/sme/src/csr/csr_util.c index e78d8b518ddc..41ede0889193 100644 --- a/core/sme/src/csr/csr_util.c +++ b/core/sme/src/csr/csr_util.c @@ -1912,40 +1912,20 @@ csr_isconcurrentsession_valid(tpAniSirGlobal mac_ctx, uint32_t cur_sessionid, case CDF_SAP_MODE: temp = eCSR_ASSOC_STATE_TYPE_IBSS_DISCONNECTED; -#ifndef WLAN_FEATURE_MBSSID - if ((bss_persona == CDF_SAP_MODE) && - (connect_state != - eCSR_ASSOC_STATE_TYPE_NOT_CONNECTED)) { + if ((bss_persona == CDF_IBSS_MODE) + && (connect_state != temp)) { + /* allow IBSS+SAP for Emulation only */ +#ifndef QCA_WIFI_3_0_EMU CDF_TRACE(CDF_MODULE_ID_SME, CDF_TRACE_LEVEL_ERROR, - FL("sap mode already exist")); + FL("Can't start SAP")); return CDF_STATUS_E_FAILURE; - } else #endif - if ((bss_persona == CDF_IBSS_MODE) - && (connect_state != temp)) { - /* allow IBSS+SAP for Emulation only */ -#ifndef QCA_WIFI_3_0_EMU - CDF_TRACE(CDF_MODULE_ID_SME, - CDF_TRACE_LEVEL_ERROR, - FL("Can't start SAP")); - return CDF_STATUS_E_FAILURE; -#endif - } + } break; case CDF_P2P_GO_MODE: temp = eCSR_ASSOC_STATE_TYPE_IBSS_DISCONNECTED; -#ifndef WLAN_FEATURE_MBSSID - if ((bss_persona == CDF_P2P_GO_MODE) && - (connect_state != - eCSR_ASSOC_STATE_TYPE_NOT_CONNECTED)) { - CDF_TRACE(CDF_MODULE_ID_SME, - CDF_TRACE_LEVEL_ERROR, - FL("GO mode already exists")); - return CDF_STATUS_E_FAILURE; - } -#endif if ((bss_persona == CDF_IBSS_MODE) && (connect_state != temp)) { CDF_TRACE(CDF_MODULE_ID_SME,