From a064c840c7435442bce2a9f82393c765ae4ce103 Mon Sep 17 00:00:00 2001 From: Vinay Krishna Eranna Date: Fri, 28 Mar 2014 13:47:43 -0700 Subject: wlan: Change nl_srv_ucast to take in flag argument Modify the nl_srv_ucast function to take in flag argument which will be used to indicate to do blocking or non blocking netlink send. Change-Id: I94fa6ae87c169b588a78d3191cd8d7b8c301eb60 Crs-Fixed: 640606 --- CORE/HDD/src/wlan_hdd_oemdata.c | 10 +++++----- CORE/SVC/inc/wlan_nlink_srv.h | 2 +- CORE/SVC/src/btc/wlan_btc_svc.c | 2 +- CORE/SVC/src/nlink/wlan_nlink_srv.c | 4 ++-- CORE/SVC/src/ptt/wlan_ptt_sock_svc.c | 2 +- CORE/UTILS/FWLOG/dbglog_host.c | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/CORE/HDD/src/wlan_hdd_oemdata.c b/CORE/HDD/src/wlan_hdd_oemdata.c index 71699cca137e..4a8e94743d63 100644 --- a/CORE/HDD/src/wlan_hdd_oemdata.c +++ b/CORE/HDD/src/wlan_hdd_oemdata.c @@ -452,7 +452,7 @@ void send_oem_reg_rsp_nlink_msg(void) "%s: sending App Reg Response length (%d) to process pid (%d)", __func__, aniHdr->length, pHddCtx->oem_pid); - (void)nl_srv_ucast(skb, pHddCtx->oem_pid); + (void)nl_srv_ucast(skb, pHddCtx->oem_pid, MSG_DONTWAIT); return; } @@ -504,7 +504,7 @@ void send_oem_err_rsp_nlink_msg(v_SINT_t app_pid, tANI_U8 error_code) "%s: sending oem error response to process pid (%d)", __func__, app_pid); - (void)nl_srv_ucast(skb, app_pid); + (void)nl_srv_ucast(skb, app_pid, MSG_DONTWAIT); return; } @@ -572,7 +572,7 @@ void send_oem_data_rsp_msg(int length, tANI_U8 *oemDataRsp) "%s: sending Oem Data Response of len (%d) to process pid (%d)", __func__, length, pHddCtx->oem_pid); - (void)nl_srv_ucast(skb, pHddCtx->oem_pid); + (void)nl_srv_ucast(skb, pHddCtx->oem_pid, MSG_DONTWAIT); return; } @@ -736,7 +736,7 @@ int oem_process_channel_info_req_msg(int numOfChannels, char *chanList) "%s: sending channel info resp for num channels (%d) to pid (%d)", __func__, numOfChannels, pHddCtx->oem_pid); - (void)nl_srv_ucast(skb, pHddCtx->oem_pid); + (void)nl_srv_ucast(skb, pHddCtx->oem_pid, MSG_DONTWAIT); return 0; } @@ -842,7 +842,7 @@ void hdd_SendPeerStatusIndToOemApp(v_MACADDR_t *peerMac, __func__, MAC_ADDR_ARRAY(peerMac->bytes), peerStatus, peerTimingMeasCap, sessionId, chanId, pHddCtx->oem_pid); - (void)nl_srv_ucast(skb, pHddCtx->oem_pid); + (void)nl_srv_ucast(skb, pHddCtx->oem_pid, MSG_DONTWAIT); return; } diff --git a/CORE/SVC/inc/wlan_nlink_srv.h b/CORE/SVC/inc/wlan_nlink_srv.h index 43d5766c40e0..f746626a7060 100644 --- a/CORE/SVC/inc/wlan_nlink_srv.h +++ b/CORE/SVC/inc/wlan_nlink_srv.h @@ -56,7 +56,7 @@ void nl_srv_exit(void); #endif /* WLAN_KD_READY_NOTIFIER */ int nl_srv_register(tWlanNlModTypes msg_type, nl_srv_msg_callback msg_handler); int nl_srv_unregister(tWlanNlModTypes msg_type, nl_srv_msg_callback msg_handler); -int nl_srv_ucast(struct sk_buff * skb, int dst_pid); +int nl_srv_ucast(struct sk_buff * skb, int dst_pid, int flag); int nl_srv_bcast(struct sk_buff * skb); #ifdef WLAN_KD_READY_NOTIFIER void nl_srv_nl_ready_indication(void); diff --git a/CORE/SVC/src/btc/wlan_btc_svc.c b/CORE/SVC/src/btc/wlan_btc_svc.c index 411be6a560be..7d4aeaf7538f 100644 --- a/CORE/SVC/src/btc/wlan_btc_svc.c +++ b/CORE/SVC/src/btc/wlan_btc_svc.c @@ -200,7 +200,7 @@ void send_btc_nlink_msg (int type, int dest_pid) if(dest_pid == 0) (void)nl_srv_bcast(skb); else - (void)nl_srv_ucast(skb, dest_pid); + (void)nl_srv_ucast(skb, dest_pid, MSG_DONTWAIT); } /* * Activate BTC handler. This will register a handler to receive diff --git a/CORE/SVC/src/nlink/wlan_nlink_srv.c b/CORE/SVC/src/nlink/wlan_nlink_srv.c index 62f3efb4e1c0..721f75652974 100644 --- a/CORE/SVC/src/nlink/wlan_nlink_srv.c +++ b/CORE/SVC/src/nlink/wlan_nlink_srv.c @@ -160,7 +160,7 @@ int nl_srv_unregister(tWlanNlModTypes msg_type, nl_srv_msg_callback msg_handler) * Unicast the message to the process in user space identfied * by the dst-pid */ -int nl_srv_ucast(struct sk_buff *skb, int dst_pid) +int nl_srv_ucast(struct sk_buff *skb, int dst_pid, int flag) { int err; @@ -171,7 +171,7 @@ int nl_srv_ucast(struct sk_buff *skb, int dst_pid) #endif NETLINK_CB(skb).dst_group = 0; //not multicast - err = netlink_unicast(nl_srv_sock, skb, dst_pid, MSG_DONTWAIT); + err = netlink_unicast(nl_srv_sock, skb, dst_pid, flag); if (err < 0) VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN, diff --git a/CORE/SVC/src/ptt/wlan_ptt_sock_svc.c b/CORE/SVC/src/ptt/wlan_ptt_sock_svc.c index c53d8530d33b..3732d26fce90 100644 --- a/CORE/SVC/src/ptt/wlan_ptt_sock_svc.c +++ b/CORE/SVC/src/ptt/wlan_ptt_sock_svc.c @@ -118,7 +118,7 @@ int ptt_sock_send_msg_to_app(tAniHdr *wmsg, int radio, int src_mod, int pid) #ifdef PTT_SOCK_DEBUG_VERBOSE ptt_sock_dump_buf((const unsigned char *)skb->data, skb->len); #endif - err = nl_srv_ucast(skb, pid); + err = nl_srv_ucast(skb, pid, MSG_DONTWAIT); return err; } /* diff --git a/CORE/UTILS/FWLOG/dbglog_host.c b/CORE/UTILS/FWLOG/dbglog_host.c index 668d5f4d8a99..6703a7c34ac1 100644 --- a/CORE/UTILS/FWLOG/dbglog_host.c +++ b/CORE/UTILS/FWLOG/dbglog_host.c @@ -1500,7 +1500,7 @@ send_fw_diag_nl_data(wmi_unified_t wmi_handle, const u_int8_t *buffer, memcpy(nlmsg_data(nlh), buffer, len); NETLINK_CB(skb_out).dst_group = 0; /* not in mcast group */ - res = nl_srv_ucast(skb_out, cnss_diag_pid); + res = nl_srv_ucast(skb_out, cnss_diag_pid, MSG_DONTWAIT); if (res < 0) { AR_DEBUG_PRINTF(ATH_DEBUG_INFO, @@ -1551,7 +1551,7 @@ dbglog_process_netlink_data(wmi_unified_t wmi_handle, const u_int8_t *buffer, memcpy(slot->payload, buffer, len); NETLINK_CB(skb_out).dst_group = 0; /* not in mcast group */ - res = nl_srv_ucast(skb_out, cnss_diag_pid); + res = nl_srv_ucast(skb_out, cnss_diag_pid, MSG_DONTWAIT); if (res < 0) { AR_DEBUG_PRINTF(ATH_DEBUG_INFO, -- cgit v1.2.3 From 5753655ea4b87871f792e4c48b9f38379bf3c0a4 Mon Sep 17 00:00:00 2001 From: Dhanashri Atre Date: Thu, 13 Feb 2014 15:22:14 -0800 Subject: wlan: Change the default reorder time Change the default reorder aging time for BE, BK and VI traffic. Change-Id: Iaf31f6dc16bb47a7e3910ec10701d5ba6aaa646d CRs-Fixed: 643592 --- CORE/HDD/inc/wlan_hdd_cfg.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CORE/HDD/inc/wlan_hdd_cfg.h b/CORE/HDD/inc/wlan_hdd_cfg.h index ce45a6c2f8c7..319bd46e9581 100644 --- a/CORE/HDD/inc/wlan_hdd_cfg.h +++ b/CORE/HDD/inc/wlan_hdd_cfg.h @@ -1002,17 +1002,17 @@ typedef enum #define CFG_REORDER_TIME_BK_NAME "BkReorderTime" #define CFG_REORDER_TIME_BK_MIN 30 #define CFG_REORDER_TIME_BK_MAX 1000 -#define CFG_REORDER_TIME_BK_DEFAULT 300 +#define CFG_REORDER_TIME_BK_DEFAULT 100 #define CFG_REORDER_TIME_BE_NAME "BeReorderTime" #define CFG_REORDER_TIME_BE_MIN 30 #define CFG_REORDER_TIME_BE_MAX 1000 -#define CFG_REORDER_TIME_BE_DEFAULT 300 +#define CFG_REORDER_TIME_BE_DEFAULT 100 #define CFG_REORDER_TIME_VI_NAME "ViReorderTime" #define CFG_REORDER_TIME_VI_MIN 30 #define CFG_REORDER_TIME_VI_MAX 1000 -#define CFG_REORDER_TIME_VI_DEFAULT 300 +#define CFG_REORDER_TIME_VI_DEFAULT 100 #define CFG_REORDER_TIME_VO_NAME "VoReorderTime" #define CFG_REORDER_TIME_VO_MIN 30 -- cgit v1.2.3 From 3415bb9efcb54add4f3932a40295d29b8e6028eb Mon Sep 17 00:00:00 2001 From: c_hpothu Date: Mon, 17 Feb 2014 12:55:36 +0530 Subject: wlan: Resolved returning incorrect RSSI value. Invalid RRSI is read by upper layer because of returning incorrect length of buffer. Returning correct length by by including SSIDLEN to the return value of scnprintf(), in iw_get_rssi(). Change-Id: I9e5f03c04605069f610b20321553799ab933a43b CRs-Fixed: 643551 --- CORE/HDD/src/wlan_hdd_wext.c | 1 + 1 file changed, 1 insertion(+) diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c index 7aa13084f1a5..7f84de4aaf17 100644 --- a/CORE/HDD/src/wlan_hdd_wext.c +++ b/CORE/HDD/src/wlan_hdd_wext.c @@ -2980,6 +2980,7 @@ static int iw_get_rssi(struct net_device *dev, /* append the rssi to the ssid in the format required by the WiFI Framework */ rc = scnprintf(&cmd[ssidlen], len - ssidlen, " rssi %d", s7Rssi); + rc += ssidlen; } else { -- cgit v1.2.3 From 348f45287fb10bac27799dfab743034196bc10a4 Mon Sep 17 00:00:00 2001 From: Srinivas Girigowda Date: Fri, 4 Apr 2014 10:38:19 -0700 Subject: qcacld: HDD: add logpinprogress check for ioctl calls Add logpinprogress check to prevent powerstate change during loading through wlan_hdd_enter_bmps. This helps to prevent access to any uninitialized null pointer during loading stage of driver. Change-Id: I0d3285a468b1b79731c0a1d60bf82d1f74f984d6 CRs-Fixed: 643824 --- CORE/HDD/src/wlan_hdd_wext.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c index 7f84de4aaf17..a110cdef89db 100644 --- a/CORE/HDD/src/wlan_hdd_wext.c +++ b/CORE/HDD/src/wlan_hdd_wext.c @@ -3040,6 +3040,12 @@ VOS_STATUS wlan_hdd_enter_bmps(hdd_adapter_t *pAdapter, int mode) hddLog(VOS_TRACE_LEVEL_INFO_HIGH, "power mode=%d", mode); pHddCtx = WLAN_HDD_GET_CTX(pAdapter); + if (pHddCtx->isLogpInProgress) { + VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR, + "%s:LOGP in Progress. Ignore!!!", __func__); + return VOS_STATUS_E_FAILURE; + } + init_completion(&context.completion); context.pAdapter = pAdapter; -- cgit v1.2.3 From 5850424cf0eeff66c3dd37bea8491dc362ec5584 Mon Sep 17 00:00:00 2001 From: Yuanyuan Liu Date: Mon, 31 Mar 2014 16:44:11 -0700 Subject: qcacld: CL 893571 - update FW interface debug log file Add dbglog for reset module/wow modules Change-Id: Ie6e12f647773e87d6646880f2b0a64e96145f347 CRs-Fixed: 641301 --- CORE/SERVICES/COMMON/dbglog_id.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/CORE/SERVICES/COMMON/dbglog_id.h b/CORE/SERVICES/COMMON/dbglog_id.h index b556420cb602..25e221ef663f 100644 --- a/CORE/SERVICES/COMMON/dbglog_id.h +++ b/CORE/SERVICES/COMMON/dbglog_id.h @@ -290,7 +290,8 @@ extern "C" { #define WHAL_ERROR_POWER_MODE_SCALED_PWR 45 #define WHAL_ERROR_POWER_EDGE_PWR_TPSCALE 46 #define WHAL_ERROR_POWER_CHAN_REGALLOW 47 -#define WHAL_DBGID_DEFINITION_END 48 +#define WHAL_ERROR_WAIT_REG_TIMEOUT 48 +#define WHAL_DBGID_DEFINITION_END 49 #define COEX_DEBUGID_START 0 #define BTCOEX_DBG_MCI_1 1 @@ -829,7 +830,9 @@ extern "C" { #define WOW_NS_REPLIED 18 #define WOW_ARP_RECEIVED 19 #define WOW_ARP_REPLIED 20 -#define WOW_DBGID_DEFINITION_END 21 +#define WOW_BEACON_OFFLOAD_TX 21 +#define WOW_BEACON_OFFLOAD_CFG 22 +#define WOW_DBGID_DEFINITION_END 23 /* SWBMISS module DBGIDs */ #define SWBMISS_DBGID_DEFINITION_START 0 -- cgit v1.2.3 From a100c08bfb45698db05dfd3c740c4f080c2ef9b2 Mon Sep 17 00:00:00 2001 From: Akash Patel Date: Tue, 8 Apr 2014 12:41:32 -0700 Subject: Cafstaging Release 1.0.0.87 Cafstaging Release 1.0.0.87 Change-Id: I4921a3abb8621ef89a27d84233fa5069a7b3ec71 --- CORE/MAC/inc/qwlan_version.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CORE/MAC/inc/qwlan_version.h b/CORE/MAC/inc/qwlan_version.h index b7c931f7df2f..67776107365d 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 86 +#define QWLAN_VERSION_BUILD 87 -#define QWLAN_VERSIONSTR "1.0.0.86" +#define QWLAN_VERSIONSTR "1.0.0.87" #ifdef QCA_WIFI_2_0 -- cgit v1.2.3