summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2014-11-05 11:49:35 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2014-11-05 11:49:35 -0800
commitf8fa24043d1c0fe2765d867d455b103abbda00de (patch)
tree339351a3da336ab8cacf9e17a2dcc915d947c10a
parent1aa9baaefbdf188171b8e91e34b2f45e539bab3b (diff)
parent2bc208bbb8c8a5fcbf659ec79ad1312d74d99d23 (diff)
Merge "Release 1.0.0.225 QCACLD WLAN Drive"
-rw-r--r--CORE/HDD/inc/wlan_hdd_tdls.h5
-rwxr-xr-xCORE/HDD/src/wlan_hdd_main.c13
-rw-r--r--CORE/HDD/src/wlan_hdd_tdls.c9
-rw-r--r--CORE/MAC/inc/qwlan_version.h4
-rw-r--r--CORE/SERVICES/COMMON/ol_if_athvar.h2
-rw-r--r--CORE/SERVICES/HIF/PCIe/if_pci.c36
-rw-r--r--CORE/SERVICES/WMA/wma.c2
-rw-r--r--CORE/SME/inc/sme_Api.h4
-rw-r--r--CORE/SVC/src/logging/wlan_logging_sock_svc.c8
-rwxr-xr-xfirmware_bin/WCNSS_qcom_cfg.ini2
10 files changed, 38 insertions, 47 deletions
diff --git a/CORE/HDD/inc/wlan_hdd_tdls.h b/CORE/HDD/inc/wlan_hdd_tdls.h
index 0e6fcc28f575..8bb257caf8ab 100644
--- a/CORE/HDD/inc/wlan_hdd_tdls.h
+++ b/CORE/HDD/inc/wlan_hdd_tdls.h
@@ -69,6 +69,11 @@ should not be more than 2000 */
#define ENA_TDLS_OFFCHAN (1 << 0) /* TDLS Off Channel support */
#define ENA_TDLS_BUFFER_STA (1 << 1) /* TDLS Buffer STA support */
#define ENA_TDLS_SLEEP_STA (1 << 2) /* TDLS Sleep STA support */
+#define TDLS_SEC_OFFCHAN_OFFSET_0 0
+#define TDLS_SEC_OFFCHAN_OFFSET_40PLUS 40
+#define TDLS_SEC_OFFCHAN_OFFSET_40MINUS (-40)
+#define TDLS_SEC_OFFCHAN_OFFSET_80 80
+#define TDLS_SEC_OFFCHAN_OFFSET_160 160
#define TDLS_PEER_LIST_SIZE 256
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index 475fe7b8b132..1172b2b75748 100755
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -5196,11 +5196,15 @@ static int hdd_driver_command(hdd_adapter_t *pAdapter,
tANI_U8 *value = command;
tANI_U8 channel = 0;
tSirMacAddr targetApBssid;
+ tHalHandle hHal;
+ v_U32_t roamId = 0;
+ tCsrRoamModifyProfileFields modProfileFields;
#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
tCsrHandoffRequest handoffInfo;
#endif
hdd_station_ctx_t *pHddStaCtx = NULL;
pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
+ hHal = WLAN_HDD_GET_HAL_CTX(pAdapter);
/* if not associated, no need to proceed with reassoc */
if (eConnectionState_Associated != pHddStaCtx->conn_info.connState)
@@ -5220,13 +5224,16 @@ static int hdd_driver_command(hdd_adapter_t *pAdapter,
}
/* if the target bssid is same as currently associated AP,
- then no need to proceed with reassoc */
+ issue reassoc to same AP */
if (VOS_TRUE == vos_mem_compare(targetApBssid,
pHddStaCtx->conn_info.bssId, sizeof(tSirMacAddr)))
{
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s:Reassoc BSSID is same as currently associated AP bssid",__func__);
- ret = -EINVAL;
- goto exit;
+ sme_GetModifyProfileFields(hHal, pAdapter->sessionId,
+ &modProfileFields);
+ sme_RoamReassoc(hHal, pAdapter->sessionId,
+ NULL, modProfileFields, &roamId, 1);
+ return 0;
}
/* Check channel number is a valid channel number */
diff --git a/CORE/HDD/src/wlan_hdd_tdls.c b/CORE/HDD/src/wlan_hdd_tdls.c
index 137194fe069e..8b8e1630deaa 100644
--- a/CORE/HDD/src/wlan_hdd_tdls.c
+++ b/CORE/HDD/src/wlan_hdd_tdls.c
@@ -2814,16 +2814,17 @@ int hdd_set_tdls_secoffchanneloffset(hdd_context_t *pHddCtx, int offchanoffset)
eTDLS_SUPPORT_EXPLICIT_TRIGGER_ONLY == pHddCtx->tdls_mode)) {
pHddCtx->tdls_channel_offset = 0;
switch (offchanoffset) {
- case BW_20:
+ case TDLS_SEC_OFFCHAN_OFFSET_0:
pHddCtx->tdls_channel_offset = (1 << BW_20_OFFSET_BIT);
break;
- case BW_40:
+ case TDLS_SEC_OFFCHAN_OFFSET_40PLUS:
+ case TDLS_SEC_OFFCHAN_OFFSET_40MINUS:
pHddCtx->tdls_channel_offset = (1 << BW_40_OFFSET_BIT);
break;
- case BW_80:
+ case TDLS_SEC_OFFCHAN_OFFSET_80:
pHddCtx->tdls_channel_offset = (1 << BW_80_OFFSET_BIT);
break;
- case BW_160:
+ case TDLS_SEC_OFFCHAN_OFFSET_160:
pHddCtx->tdls_channel_offset = (1 << BW_160_OFFSET_BIT);
break;
default:
diff --git a/CORE/MAC/inc/qwlan_version.h b/CORE/MAC/inc/qwlan_version.h
index 5edd741c2f79..30a8ec4bf19c 100644
--- a/CORE/MAC/inc/qwlan_version.h
+++ b/CORE/MAC/inc/qwlan_version.h
@@ -42,9 +42,9 @@ BRIEF DESCRIPTION:
#define QWLAN_VERSION_MINOR 0
#define QWLAN_VERSION_PATCH 0
#define QWLAN_VERSION_EXTRA ""
-#define QWLAN_VERSION_BUILD 224
+#define QWLAN_VERSION_BUILD 225
-#define QWLAN_VERSIONSTR "1.0.0.224"
+#define QWLAN_VERSIONSTR "1.0.0.225"
#define AR6320_REV1_VERSION 0x5000000
diff --git a/CORE/SERVICES/COMMON/ol_if_athvar.h b/CORE/SERVICES/COMMON/ol_if_athvar.h
index 967e2cc561e1..c5537cb78f73 100644
--- a/CORE/SERVICES/COMMON/ol_if_athvar.h
+++ b/CORE/SERVICES/COMMON/ol_if_athvar.h
@@ -274,7 +274,7 @@ struct ol_softc {
struct ol_fw_files fw_files;
#endif
#if defined(CONFIG_CNSS) || defined(HIF_SDIO)
- void __iomem *ramdump_base;
+ void *ramdump_base;
unsigned long ramdump_address;
unsigned long ramdump_size;
#endif
diff --git a/CORE/SERVICES/HIF/PCIe/if_pci.c b/CORE/SERVICES/HIF/PCIe/if_pci.c
index 97e2f6f7dda9..0dc0c0f95820 100644
--- a/CORE/SERVICES/HIF/PCIe/if_pci.c
+++ b/CORE/SERVICES/HIF/PCIe/if_pci.c
@@ -935,16 +935,11 @@ again:
#ifdef CONFIG_CNSS
/* Get RAM dump memory address and size */
- if (!cnss_get_ramdump_mem(&ol_sc->ramdump_address, &ol_sc->ramdump_size)) {
- ol_sc->ramdump_base = ioremap(ol_sc->ramdump_address,
- ol_sc->ramdump_size);
- if (!ol_sc->ramdump_base) {
- pr_err("%s: Cannot map ramdump_address 0x%lx!\n",
- __func__, ol_sc->ramdump_address);
- }
- } else {
+ ol_sc->ramdump_base = cnss_get_virt_ramdump_mem(&ol_sc->ramdump_size);
+
+ if (ol_sc->ramdump_base == NULL || !ol_sc->ramdump_size) {
pr_info("%s: Failed to get RAM dump memory address or size!\n",
- __func__);
+ __func__);
}
#endif
@@ -1275,16 +1270,11 @@ again:
#ifdef CONFIG_CNSS
/* Get RAM dump memory address and size */
- if (!cnss_get_ramdump_mem(&ol_sc->ramdump_address, &ol_sc->ramdump_size)) {
- ol_sc->ramdump_base = ioremap(ol_sc->ramdump_address,
- ol_sc->ramdump_size);
- if (!ol_sc->ramdump_base) {
- pr_err("%s: Cannot map ramdump_address 0x%lx!\n",
- __func__, ol_sc->ramdump_address);
- }
- } else {
+ ol_sc->ramdump_base = cnss_get_virt_ramdump_mem(&ol_sc->ramdump_size);
+
+ if (ol_sc->ramdump_base == NULL || !ol_sc->ramdump_size) {
pr_info("%s: Failed to get RAM dump memory address or size!\n",
- __func__);
+ __func__);
}
#endif
@@ -1634,11 +1624,6 @@ hif_pci_remove(struct pci_dev *pdev)
pci_disable_msi(pdev);
-#ifdef CONFIG_CNSS
- if (scn->ramdump_base)
- iounmap(scn->ramdump_base);
-#endif
-
A_FREE(scn);
A_FREE(sc->hif_device);
A_FREE(sc);
@@ -1693,11 +1678,6 @@ void hif_pci_shutdown(struct pci_dev *pdev)
pci_disable_msi(pdev);
-#ifdef CONFIG_CNSS
- if (scn->ramdump_base)
- iounmap(scn->ramdump_base);
-#endif
-
A_FREE(scn);
A_FREE(sc->hif_device);
A_FREE(sc);
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index 881471e674cf..d7179e057a35 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -17255,12 +17255,14 @@ int wma_enable_wow_in_fw(WMA_HANDLE handle)
WMA_LOGD("Credits:%d; Pending_Cmds: %d",
host_credits, wmi_pending_cmds);
+#if !defined(HIF_SDIO)
if (host_credits < WMI_WOW_REQUIRED_CREDITS) {
WMA_LOGE("%s: Host Doesn't have enough credits to Post WMI_WOW_ENABLE_CMDID! "
"Credits:%d, pending_cmds:%d\n", __func__,
host_credits, wmi_pending_cmds);
goto error;
}
+#endif
ret = wmi_unified_cmd_send(wma->wmi_handle, buf, len,
WMI_WOW_ENABLE_CMDID);
diff --git a/CORE/SME/inc/sme_Api.h b/CORE/SME/inc/sme_Api.h
index 74498840fda9..2875078c7082 100644
--- a/CORE/SME/inc/sme_Api.h
+++ b/CORE/SME/inc/sme_Api.h
@@ -168,10 +168,6 @@ typedef struct _smeTdlsPeerStateParams
#define ENABLE_CHANSWITCH 1
#define DISABLE_CHANSWITCH 2
-#define BW_20 20
-#define BW_40 40
-#define BW_80 80
-#define BW_160 160
#define BW_20_OFFSET_BIT 0
#define BW_40_OFFSET_BIT 1
#define BW_80_OFFSET_BIT 2
diff --git a/CORE/SVC/src/logging/wlan_logging_sock_svc.c b/CORE/SVC/src/logging/wlan_logging_sock_svc.c
index bdfb28fb2275..f8e77ce2549b 100644
--- a/CORE/SVC/src/logging/wlan_logging_sock_svc.c
+++ b/CORE/SVC/src/logging/wlan_logging_sock_svc.c
@@ -514,10 +514,10 @@ static int wlan_logging_thread(void *Arg)
}
}
- complete_and_exit(&gwlan_logging.shutdown_comp, 0);
-
pr_info("%s: Terminating\n", __func__);
+ complete_and_exit(&gwlan_logging.shutdown_comp, 0);
+
return 0;
}
@@ -643,10 +643,10 @@ int wlan_logging_sock_deactivate_svc(void)
clear_default_logtoapp_log_level();
gapp_pid = INVALID_PID;
- gwlan_logging.exit = true;
INIT_COMPLETION(gwlan_logging.shutdown_comp);
+ gwlan_logging.exit = true;
wake_up_interruptible(&gwlan_logging.wait_queue);
- wait_for_completion_interruptible(&gwlan_logging.shutdown_comp);
+ wait_for_completion(&gwlan_logging.shutdown_comp);
spin_lock_irqsave(&gwlan_logging.spin_lock, irq_flag);
vfree(gplog_msg);
diff --git a/firmware_bin/WCNSS_qcom_cfg.ini b/firmware_bin/WCNSS_qcom_cfg.ini
index 3909c3a6a08a..c20c8f0ed14c 100755
--- a/firmware_bin/WCNSS_qcom_cfg.ini
+++ b/firmware_bin/WCNSS_qcom_cfg.ini
@@ -589,7 +589,7 @@ gIbssTxSpEndInactivityTime=10
# Enable/Disable Roaming Offload Support (a.k.a Key Management Offload)
# 0 to disable, 1 to enable
-gRoamOffloadEnabled=1
+gRoamOffloadEnabled=0
# Enable support for TDLS
# 0 - disable