Merge changes I174a45c1,I0ee93760,I432e85e3,I639d4fb5,I22f41e6b,I1200fa57,I301031a0,I4abd9d26,I4fbd8f9d into wlan-cld3.driver.lnx.2.0

* changes:
  Release 5.2.0.73T
  qcacld-3.0: Compile out WMI non_tlv file from Kbuild
  Release 5.2.0.73S
  qcacld-3.0: Update io smmu mapping to osdev
  Release 5.2.0.73R
  qcacld-3.0: Remove WLAN_AP_STA_CONCURRENCY feature flag
  qcacld-3.0: Kbuild: Define CONFIG_FEATURE_SKB_PRE_ALLOC
  qcacld-3.0: Fix a race btw tx and tx-compl
  Release 5.2.0.73Q
This commit is contained in:
CNSS_WLAN Service 2018-04-15 00:12:43 -07:00 • committed by Gerrit - the friendly Code Review server
commit 12c237f2ed
14 changed files with 65 additions and 69 deletions

20
Kbuild
View file

@ -394,6 +394,14 @@ CONFIG_ENABLE_SMMU_S1_TRANSLATION := y
endif
endif
ifeq ($(CONFIG_ARCH_SDX20), y)
ifeq ($(CONFIG_QCA_WIFI_SDIO), y)
ifeq ($(CONFIG_WCNSS_SKB_PRE_ALLOC), y)
CONFIG_FEATURE_SKB_PRE_ALLOC := y
endif
endif
endif
#Enable Signed firmware support for split binary format
CONFIG_QCA_SIGNED_SPLIT_BINARY_SUPPORT := n
@ -1255,8 +1263,7 @@ WMI_OBJS := $(WMI_OBJ_DIR)/wmi_unified.o \
$(WMI_OBJ_DIR)/wmi_unified_api.o \
$(WMI_OBJ_DIR)/wmi_unified_pmo_api.o \
$(WMI_OBJ_DIR)/wmi_unified_reg_api.o \
$(WMI_OBJ_DIR)/wmi_unified_dfs_api.o \
$(WMI_OBJ_DIR)/wmi_unified_non_tlv.o
$(WMI_OBJ_DIR)/wmi_unified_dfs_api.o
ifeq ($(CONFIG_WLAN_FEATURE_DSRC), y)
ifeq ($(CONFIG_OCB_UT_FRAMEWORK), y)
@ -1860,7 +1867,6 @@ CDEFINES := -DANI_OS_TYPE_ANDROID=6 \
-Werror\
-D__linux__ \
-DSOFTAP_CHANNEL_RANGE \
-DWLAN_AP_STA_CONCURRENCY \
-DFEATURE_WLAN_SCAN_PNO \
-DWLAN_FEATURE_PACKET_FILTERING \
-DWLAN_ENABLE_AGEIE_ON_SCAN_RESULTS \
@ -2202,13 +2208,7 @@ endif
endif
ifeq ($(CONFIG_ARCH_SDX20), y)
ifeq ($(CONFIG_QCA_WIFI_SDIO), y)
ifeq ($(CONFIG_WCNSS_SKB_PRE_ALLOC), y)
CDEFINES += -DFEATURE_SKB_PRE_ALLOC
endif
endif
endif
ccflags-$(CONFIG_FEATURE_SKB_PRE_ALLOC) += -DFEATURE_SKB_PRE_ALLOC
#Enable USB specific APIS
ifeq ($(CONFIG_HIF_USB), y)

View file

@ -2913,6 +2913,7 @@ QDF_STATUS cds_smmu_mem_map_setup(qdf_device_t osdev, bool ipa_present)
}
}
}
osdev->iommu_mapping = mapping;
return QDF_STATUS_SUCCESS;
}
@ -2933,6 +2934,7 @@ int cds_smmu_map_unmap(bool map, uint32_t num_buf, qdf_mem_info_t *buf_arr)
QDF_STATUS cds_smmu_mem_map_setup(qdf_device_t osdev, bool ipa_present)
{
osdev->smmu_s1_enabled = false;
osdev->iommu_mapping = NULL;
return QDF_STATUS_SUCCESS;
}

View file

@ -1527,6 +1527,7 @@ htt_tx_desc_fill_tso_info(htt_pdev_handle pdev, void *desc,
if (tso_seg->seg.num_frags < FRAG_NUM_MAX)
*word = 0;
qdf_tso_seg_dbg_record(tso_seg, TSOSEG_LOC_FILLHTTSEG);
}
#endif /* FEATURE_TSO */

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2011-2017 The Linux Foundation. All rights reserved.
* Copyright (c) 2011-2018 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@ -153,6 +153,7 @@ void ol_free_remaining_tso_segs(ol_txrx_vdev_handle vdev,
}
next_seg = free_seg->next;
free_seg->force_free = 1;
ol_tso_free_segment(pdev, free_seg);
free_seg = next_seg;
}
@ -163,6 +164,7 @@ void ol_free_remaining_tso_segs(ol_txrx_vdev_handle vdev,
*/
while (free_seg) {
next_seg = free_seg->next;
free_seg->force_free = 1;
ol_tso_free_segment(pdev, free_seg);
free_seg = next_seg;
}
@ -697,6 +699,7 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
struct ol_txrx_msdu_info_t msdu_info;
uint32_t tso_msdu_stats_idx = 0;
qdf_mem_zero(&msdu_info, sizeof(msdu_info));
msdu_info.htt.info.l2_hdr_type = vdev->pdev->htt_pkt_type;
msdu_info.htt.action.tx_comp_req = 0;
/*
@ -714,7 +717,7 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
msdu_info.peer = NULL;
if (qdf_unlikely(ol_tx_prepare_tso(vdev, msdu, &msdu_info))) {
ol_txrx_dbg("ol_tx_prepare_tso failed\n");
ol_txrx_err("ol_tx_prepare_tso failed\n");
TXRX_STATS_MSDU_LIST_INCR(vdev->pdev,
tx.dropped.host_reject, msdu);
return msdu;
@ -773,6 +776,8 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
TXRX_STATS_MSDU_INCR(pdev, tx.from_stack, msdu);
if (qdf_likely(tx_desc)) {
struct qdf_tso_seg_elem_t *next_seg;
/*
* if this is a jumbo nbuf, then increment the
@ -801,6 +806,17 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
sizeof(struct htt_tx_msdu_desc_ext_t);
htt_tx_desc_display(tx_desc->htt_tx_desc);
/* mark the relevant tso_seg free-able */
if (msdu_info.tso_info.curr_seg) {
msdu_info.tso_info.curr_seg->
sent_to_target = 1;
next_seg = msdu_info.tso_info.
curr_seg->next;
} else {
next_seg = NULL;
}
if ((0 == ce_send_fast(pdev->ce_tx_hdl, msdu,
ep_id, pkt_download_len))) {
struct qdf_tso_info_t *tso_info =
@ -811,8 +827,7 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
*/
if (tx_desc->pkt_type ==
OL_TX_FRM_TSO) {
tso_info->curr_seg =
tso_info->curr_seg->next;
tso_info->curr_seg = next_seg;
ol_free_remaining_tso_segs(vdev,
&msdu_info, true);
}
@ -827,10 +842,9 @@ ol_tx_ll_fast(ol_txrx_vdev_handle vdev, qdf_nbuf_t msdu_list)
htt_tx_status_download_fail);
return msdu;
}
if (msdu_info.tso_info.curr_seg) {
msdu_info.tso_info.curr_seg =
msdu_info.tso_info.curr_seg->next;
}
if (msdu_info.tso_info.curr_seg)
msdu_info.tso_info.curr_seg = next_seg;
if (msdu_info.tso_info.is_tso) {
qdf_nbuf_reset_num_frags(msdu);
@ -2103,7 +2117,7 @@ void ol_tso_seg_list_init(struct ol_txrx_pdev_t *pdev, uint32_t num_seg)
c_element->cookie = TSO_SEG_MAGIC_COOKIE;
#ifdef TSOSEG_DEBUG
c_element->dbg.txdesc = NULL;
c_element->dbg.cur = -1; /* history empty */
qdf_atomic_init(&c_element->dbg.cur); /* history empty */
qdf_tso_seg_dbg_record(c_element, TSOSEG_LOC_INIT1);
#endif /* TSOSEG_DEBUG */
c_element->next =
@ -2126,8 +2140,7 @@ void ol_tso_seg_list_init(struct ol_txrx_pdev_t *pdev, uint32_t num_seg)
c_element->on_freelist = 1;
c_element->cookie = TSO_SEG_MAGIC_COOKIE;
#ifdef TSOSEG_DEBUG
c_element->dbg.txdesc = NULL;
c_element->dbg.cur = -1; /* history empty */
qdf_tso_seg_dbg_init(c_element);
qdf_tso_seg_dbg_record(c_element, TSOSEG_LOC_INIT2);
#endif /* TSOSEG_DEBUG */
c_element->next = NULL;
@ -2167,11 +2180,10 @@ void ol_tso_seg_list_deinit(struct ol_txrx_pdev_t *pdev)
while (i-- > 0 && c_element) {
temp = c_element->next;
if (c_element->on_freelist != 1) {
qdf_tso_seg_dbg_bug("this seg already freed (double?)");
qdf_tso_seg_dbg_bug("seg already freed (double?)");
return;
} else if (c_element->cookie != TSO_SEG_MAGIC_COOKIE) {
qdf_print("this seg cookie is bad (memory corruption?)");
QDF_BUG(0);
qdf_tso_seg_dbg_bug("seg cookie is bad (corruption?)");
return;
}
/* free this seg, so reset the cookie value*/

View file

@ -895,20 +895,22 @@ struct qdf_tso_seg_elem_t *ol_tso_alloc_segment(struct ol_txrx_pdev_t *pdev)
pdev->tso_seg_pool.num_free--;
tso_seg = pdev->tso_seg_pool.freelist;
if (tso_seg->on_freelist != 1) {
qdf_print("Do not alloc tso seg as this seg is not in freelist\n");
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
qdf_print("tso seg alloc failed: not in freelist");
QDF_BUG(0);
return NULL;
} else if (tso_seg->cookie != TSO_SEG_MAGIC_COOKIE) {
qdf_print("Do not alloc tso seg as cookie is not good\n");
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
qdf_print("tso seg alloc failed: bad cookie");
QDF_BUG(0);
return NULL;
}
/*this tso seg is not a part of freelist now.*/
tso_seg->on_freelist = 0;
qdf_tso_seg_dbg_record(tso_seg, TSOSEG_LOC_ALLOC);
tso_seg->sent_to_target = 0;
tso_seg->force_free = 0;
pdev->tso_seg_pool.freelist = pdev->tso_seg_pool.freelist->next;
qdf_tso_seg_dbg_record(tso_seg, TSOSEG_LOC_ALLOC);
}
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
@ -932,11 +934,18 @@ void ol_tso_free_segment(struct ol_txrx_pdev_t *pdev,
qdf_spin_lock_bh(&pdev->tso_seg_pool.tso_mutex);
if (tso_seg->on_freelist != 0) {
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
qdf_tso_seg_dbg_bug("Do not free tso seg, already freed");
qdf_print("Do not free tso seg, already freed");
QDF_BUG(0);
return;
} else if (tso_seg->cookie != TSO_SEG_MAGIC_COOKIE) {
qdf_print("Do not free the tso seg as cookie is not good. Looks like memory corruption");
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
qdf_print("Do not free tso seg: cookie is not good.");
QDF_BUG(0);
return;
} else if ((tso_seg->sent_to_target != 1) &&
(tso_seg->force_free != 1)) {
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
qdf_print("Do not free tso seg: yet to be sent to target");
QDF_BUG(0);
return;
}
@ -948,10 +957,14 @@ void ol_tso_free_segment(struct ol_txrx_pdev_t *pdev,
qdf_tso_seg_dbg_zero(tso_seg);
tso_seg->next = pdev->tso_seg_pool.freelist;
tso_seg->on_freelist = 1;
tso_seg->sent_to_target = 0;
tso_seg->cookie = TSO_SEG_MAGIC_COOKIE;
qdf_tso_seg_dbg_record(tso_seg, TSOSEG_LOC_FREE);
pdev->tso_seg_pool.freelist = tso_seg;
pdev->tso_seg_pool.num_free++;
qdf_tso_seg_dbg_record(tso_seg, tso_seg->force_free
? TSOSEG_LOC_FORCE_FREE
: TSOSEG_LOC_FREE);
tso_seg->force_free = 0;
qdf_spin_unlock_bh(&pdev->tso_seg_pool.tso_mutex);
}

View file

@ -3074,7 +3074,6 @@ enum hdd_dot11_mode {
#define CFG_VCC_UL_MAC_LOSS_THRESH_MAX (9)
#define CFG_VCC_UL_MAC_LOSS_THRESH_DEFAULT (9)
#ifdef WLAN_AP_STA_CONCURRENCY
/*
* <ini>
* gPassiveMaxChannelTimeConc - Maximum passive scan time in milliseconds.
@ -3239,7 +3238,6 @@ enum hdd_dot11_mode {
#define CFG_IDLE_TIME_MIN (0)
#define CFG_IDLE_TIME_MAX (25)
#define CFG_IDLE_TIME_DEFAULT (25)
#endif
#define CFG_MAX_PS_POLL_NAME "gMaxPsPoll"
#define CFG_MAX_PS_POLL_MIN WNI_CFG_MAX_PS_POLL_STAMIN
@ -14036,7 +14034,6 @@ struct hdd_config {
uint32_t nInitialDwellTime; /* in units of milliseconds */
bool initial_scan_no_dfs_chnl;
#ifdef WLAN_AP_STA_CONCURRENCY
uint32_t nPassiveMinChnTimeConc; /* in units of milliseconds */
uint32_t nPassiveMaxChnTimeConc; /* in units of milliseconds */
uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
@ -14046,7 +14043,6 @@ struct hdd_config {
uint32_t min_rest_time_conc;
/* In units of milliseconds */
uint32_t idle_time_conc;
#endif
uint8_t nMaxPsPoll;

View file

@ -751,7 +751,6 @@ struct reg_table_entry g_registry_table[] = {
CFG_SCAN_PROBE_REPEAT_TIME_MIN,
CFG_SCAN_PROBE_REPEAT_TIME_MAX),
#ifdef WLAN_AP_STA_CONCURRENCY
REG_VARIABLE(CFG_PASSIVE_MAX_CHANNEL_TIME_CONC_NAME, WLAN_PARAM_Integer,
struct hdd_config, nPassiveMaxChnTimeConc,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
@ -800,7 +799,6 @@ struct reg_table_entry g_registry_table[] = {
CFG_IDLE_TIME_DEFAULT,
CFG_IDLE_TIME_MIN,
CFG_IDLE_TIME_MAX),
#endif
REG_VARIABLE(CFG_MAX_PS_POLL_NAME, WLAN_PARAM_Integer,
struct hdd_config, nMaxPsPoll,
@ -8550,7 +8548,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
smeConfig->csrConfig.nActiveMinChnTime = pConfig->nActiveMinChnTime;
smeConfig->csrConfig.nPassiveMaxChnTime = pConfig->nPassiveMaxChnTime;
smeConfig->csrConfig.nPassiveMinChnTime = pConfig->nPassiveMinChnTime;
#ifdef WLAN_AP_STA_CONCURRENCY
smeConfig->csrConfig.nActiveMaxChnTimeConc =
pConfig->nActiveMaxChnTimeConc;
smeConfig->csrConfig.nActiveMinChnTimeConc =
@ -8563,7 +8560,6 @@ QDF_STATUS hdd_set_sme_config(struct hdd_context *hdd_ctx)
smeConfig->csrConfig.min_rest_time_conc = pConfig->min_rest_time_conc;
smeConfig->csrConfig.idle_time_conc = pConfig->idle_time_conc;
#endif
smeConfig->csrConfig.Is11eSupportEnabled = pConfig->b80211eIsEnabled;
smeConfig->csrConfig.WMMSupportMode =
hdd_to_csr_wmm_mode(pConfig->WmmMode);

View file

@ -3065,9 +3065,7 @@ __wlan_hdd_cfg80211_get_supported_features(struct wiphy *wiphy,
fset |= WIFI_FEATURE_TDLS_OFFCHANNEL;
}
#endif
#ifdef WLAN_AP_STA_CONCURRENCY
fset |= WIFI_FEATURE_AP_STA;
#endif
fset |= WIFI_FEATURE_RSSI_MONITOR;
fset |= WIFI_FEATURE_TX_TRANSMIT_POWER;
fset |= WIFI_FEATURE_SET_TX_POWER_LIMIT;

View file

@ -41,9 +41,9 @@
#define QWLAN_VERSION_MAJOR 5
#define QWLAN_VERSION_MINOR 2
#define QWLAN_VERSION_PATCH 0
#define QWLAN_VERSION_EXTRA "P"
#define QWLAN_VERSION_EXTRA "T"
#define QWLAN_VERSION_BUILD 73
#define QWLAN_VERSIONSTR "5.2.0.73P"
#define QWLAN_VERSIONSTR "5.2.0.73T"
#endif /* QWLAN_VERSION_H */

View file

@ -1124,13 +1124,11 @@ typedef struct tagCsrConfigParam {
uint32_t nActiveMaxChnTime; /* in units of milliseconds */
uint32_t nInitialDwellTime; /* in units of milliseconds */
bool initial_scan_no_dfs_chnl;
#ifdef WLAN_AP_STA_CONCURRENCY
uint32_t nPassiveMinChnTimeConc; /* in units of milliseconds */
uint32_t nPassiveMaxChnTimeConc; /* in units of milliseconds */
uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
uint32_t nActiveMaxChnTimeConc; /* in units of milliseconds */
uint32_t nRestTimeConc; /* in units of milliseconds */
#endif
/*In units of milliseconds*/
uint32_t min_rest_time_conc;
/*In units of milliseconds*/

View file

@ -466,7 +466,6 @@ struct csr_config {
uint32_t nInitialDwellTime; /* in units of milliseconds */
bool initial_scan_no_dfs_chnl;
#ifdef WLAN_AP_STA_CONCURRENCY
uint32_t nPassiveMinChnTimeConc;/* in units of milliseconds */
uint32_t nPassiveMaxChnTimeConc;/* in units of milliseconds */
uint32_t nActiveMinChnTimeConc; /* in units of milliseconds */
@ -476,8 +475,6 @@ struct csr_config {
uint32_t min_rest_time_conc;
/* In units of milliseconds */
uint32_t idle_time_conc;
#endif
/*
* in dBm, the max TX power. The actual TX power is the lesser of this
* value & 11d. If 11d is disable, the lesser of this & default setting.
@ -682,9 +679,6 @@ struct csr_scanstruct {
bool fFirstScanOnly2GChnl;
bool fDropScanCmd; /* true means we don't accept scan commands */
#ifdef WLAN_AP_STA_CONCURRENCY
tDblLinkList scanCmdPendingList;
#endif
/* This includes all channels on which candidate APs are found */
struct csr_channel occupiedChannels[CSR_ROAM_SESSION_MAX];
int8_t roam_candidate_count[CSR_ROAM_SESSION_MAX];

View file

@ -1575,7 +1575,6 @@ static void init_config_param(tpAniSirGlobal pMac)
CSR_PASSIVE_MAX_CHANNEL_TIME;
pMac->roam.configParam.nPassiveMinChnTime =
CSR_PASSIVE_MIN_CHANNEL_TIME;
#ifdef WLAN_AP_STA_CONCURRENCY
pMac->roam.configParam.nActiveMaxChnTimeConc =
CSR_ACTIVE_MAX_CHANNEL_TIME_CONC;
pMac->roam.configParam.nActiveMinChnTimeConc =
@ -1587,7 +1586,6 @@ static void init_config_param(tpAniSirGlobal pMac)
pMac->roam.configParam.nRestTimeConc = CSR_REST_TIME_CONC;
pMac->roam.configParam.min_rest_time_conc = CSR_MIN_REST_TIME_CONC;
pMac->roam.configParam.idle_time_conc = CSR_IDLE_TIME_CONC;
#endif
pMac->roam.configParam.nTxPowerCap = CSR_MAX_TX_POWER;
pMac->roam.configParam.allow_tpc_from_ap = true;
pMac->roam.configParam.statsReqPeriodicity =
@ -2716,7 +2714,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac,
cfg_set_int(pMac, WNI_CFG_PASSIVE_MINIMUM_CHANNEL_TIME,
pParam->nPassiveMinChnTime);
}
#ifdef WLAN_AP_STA_CONCURRENCY
if (pParam->nActiveMaxChnTimeConc) {
pMac->roam.configParam.nActiveMaxChnTimeConc =
pParam->nActiveMaxChnTimeConc;
@ -2738,7 +2735,6 @@ QDF_STATUS csr_change_default_config_param(tpAniSirGlobal pMac,
pParam->min_rest_time_conc;
pMac->roam.configParam.idle_time_conc = pParam->idle_time_conc;
#endif
pMac->roam.configParam.eBand = pParam->eBand;
pMac->roam.configParam.uCfgDot11Mode =
csr_get_cfg_dot11_mode_from_csr_phy_mode(NULL,
@ -3207,7 +3203,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam)
pParam->nActiveMinChnTime = cfg_params->nActiveMinChnTime;
pParam->nPassiveMaxChnTime = cfg_params->nPassiveMaxChnTime;
pParam->nPassiveMinChnTime = cfg_params->nPassiveMinChnTime;
#ifdef WLAN_AP_STA_CONCURRENCY
pParam->nActiveMaxChnTimeConc = cfg_params->nActiveMaxChnTimeConc;
pParam->nActiveMinChnTimeConc = cfg_params->nActiveMinChnTimeConc;
pParam->nPassiveMaxChnTimeConc = cfg_params->nPassiveMaxChnTimeConc;
@ -3215,7 +3210,6 @@ QDF_STATUS csr_get_config_param(tpAniSirGlobal pMac, tCsrConfigParam *pParam)
pParam->nRestTimeConc = cfg_params->nRestTimeConc;
pParam->min_rest_time_conc = cfg_params->min_rest_time_conc;
pParam->idle_time_conc = cfg_params->idle_time_conc;
#endif
pParam->eBand = cfg_params->eBand;
pParam->nScanResultAgeCount = cfg_params->agingCount;
pParam->bCatRssiOffset = cfg_params->bCatRssiOffset;

View file

@ -556,7 +556,6 @@ static void csr_set_default_scan_timing(tpAniSirGlobal pMac,
tSirScanType scanType,
tCsrScanRequest *pScanRequest)
{
#ifdef WLAN_AP_STA_CONCURRENCY
if (csr_is_any_session_connected(pMac)) {
/* Reset passive scan time as per ini parameter. */
cfg_set_int(pMac, WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME,
@ -583,11 +582,12 @@ static void csr_set_default_scan_timing(tpAniSirGlobal pMac,
/* Return so that fields set above will not be overwritten. */
return;
}
#endif
/* This portion of the code executed if multi-session not supported */
/* (WLAN_AP_STA_CONCURRENCY not defined) or no multi-session. */
/* Use the "regular" (non-concurrency) default scan timing. */
/*
* This portion of the code is executed if no multi-session.
* Use the "regular" (non-concurrency) default scan timing if
* no multi session.
*/
cfg_set_int(pMac, WNI_CFG_PASSIVE_MAXIMUM_CHANNEL_TIME,
pMac->roam.configParam.nPassiveMaxChnTime);
if (pScanRequest->scanType == eSIR_ACTIVE_SCAN) {
@ -601,14 +601,11 @@ static void csr_set_default_scan_timing(tpAniSirGlobal pMac,
pScanRequest->minChnTime =
pMac->roam.configParam.nPassiveMinChnTime;
}
#ifdef WLAN_AP_STA_CONCURRENCY
/* No rest time/Idle time if no sessions are connected. */
pScanRequest->restTime = 0;
pScanRequest->min_rest_time = 0;
pScanRequest->idle_time = 0;
#endif
}
static QDF_STATUS
@ -775,7 +772,6 @@ QDF_STATUS csr_scan_request(tpAniSirGlobal pMac, uint16_t sessionId,
sme_debug("Setting default min %d and max %d ChnTime",
scan_req->minChnTime, scan_req->maxChnTime);
}
#ifdef WLAN_AP_STA_CONCURRENCY
/*
* Need to set restTime/min_Ret_time/idle_time
* only if at least one session is connected
@ -792,7 +788,6 @@ QDF_STATUS csr_scan_request(tpAniSirGlobal pMac, uint16_t sessionId,
scan_req->minChnTime = cfg_prm->nPassiveMinChnTimeConc;
}
}
#endif
/* Increase dwell time in case P2P Search and Miracast is not present */
if (scan_req->p2pSearch && scan_req->ChannelInfo.numOfChannels
== P2P_SOCIAL_CHANNELS && (!(pMac->sme.miracast_value))) {

View file

@ -44,7 +44,6 @@
#define CSR_ACTIVE_MAX_CHANNEL_TIME 40
#define CSR_ACTIVE_MIN_CHANNEL_TIME 20
#ifdef WLAN_AP_STA_CONCURRENCY
#define CSR_PASSIVE_MAX_CHANNEL_TIME_CONC 110
#define CSR_PASSIVE_MIN_CHANNEL_TIME_CONC 60
@ -55,8 +54,6 @@
#define CSR_MIN_REST_TIME_CONC 50
#define CSR_IDLE_TIME_CONC 25
#endif
#define CSR_MAX_NUM_SUPPORTED_CHANNELS 55
#define CSR_MAX_2_4_GHZ_SUPPORTED_CHANNELS 14