summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2014-03-04 09:00:50 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2014-03-04 09:00:50 -0800
commite064dfbccfa91ea8551f69fbfb82bb719f19d651 (patch)
tree7a682984a88c5473f2185edcffc73efaa94a86eb
parent408308884875c73a08a428d997d1501f30b1e91b (diff)
parent21966f6d720bd631706157c2b78b9e006ce118c9 (diff)
Merge "Merge remote-tracking branch 'origin/caf/caf-wlan/master'"
-rw-r--r--CORE/BAP/src/btampFsm.c3
-rw-r--r--CORE/CLD_TXRX/TLSHIM/tl_shim.c117
-rw-r--r--CORE/HDD/inc/bap_hdd_main.h38
-rw-r--r--CORE/HDD/inc/bap_hdd_misc.h88
-rw-r--r--CORE/HDD/inc/qc_sap_ioctl.h20
-rw-r--r--CORE/HDD/inc/wlan_hdd_assoc.h24
-rw-r--r--CORE/HDD/inc/wlan_hdd_cfg80211.h6
-rw-r--r--CORE/HDD/inc/wlan_hdd_debugfs.h1
-rw-r--r--CORE/HDD/inc/wlan_hdd_dev_pwr.h2
-rw-r--r--CORE/HDD/inc/wlan_hdd_dp_utils.h4
-rw-r--r--CORE/HDD/inc/wlan_hdd_ftm.h14
-rw-r--r--CORE/HDD/inc/wlan_hdd_host_offload.h1
-rw-r--r--CORE/HDD/inc/wlan_hdd_hostapd.h18
-rw-r--r--CORE/HDD/inc/wlan_hdd_includes.h16
-rw-r--r--CORE/HDD/inc/wlan_hdd_keep_alive.h3
-rw-r--r--CORE/HDD/inc/wlan_hdd_mib.h58
-rw-r--r--CORE/HDD/inc/wlan_hdd_oemdata.h6
-rw-r--r--CORE/HDD/inc/wlan_hdd_p2p.h2
-rw-r--r--CORE/HDD/inc/wlan_hdd_power.h6
-rw-r--r--CORE/HDD/inc/wlan_hdd_softap_tx_rx.h122
-rw-r--r--CORE/HDD/inc/wlan_hdd_tx_rx.h94
-rw-r--r--CORE/HDD/inc/wlan_hdd_version.h30
-rw-r--r--CORE/HDD/inc/wlan_hdd_wext.h65
-rw-r--r--CORE/HDD/inc/wlan_hdd_wmm.h10
-rw-r--r--CORE/HDD/inc/wlan_hdd_wowl.h28
-rw-r--r--CORE/HDD/inc/wlan_qct_driver.h16
-rw-r--r--CORE/HDD/src/bap_hdd_main.c34
-rw-r--r--CORE/HDD/src/wlan_hdd_cfg80211.c37
-rw-r--r--CORE/HDD/src/wlan_hdd_debugfs.c1
-rw-r--r--CORE/HDD/src/wlan_hdd_dev_pwr.c42
-rw-r--r--CORE/HDD/src/wlan_hdd_dp_utils.c15
-rw-r--r--CORE/HDD/src/wlan_hdd_early_suspend.c52
-rw-r--r--CORE/HDD/src/wlan_hdd_hostapd.c6
-rw-r--r--CORE/HDD/src/wlan_hdd_main.c247
-rw-r--r--CORE/HDD/src/wlan_hdd_mib.c46
-rw-r--r--CORE/HDD/src/wlan_hdd_oemdata.c40
-rw-r--r--CORE/HDD/src/wlan_hdd_p2p.c81
-rw-r--r--CORE/HDD/src/wlan_hdd_scan.c57
-rw-r--r--CORE/HDD/src/wlan_hdd_softap_tx_rx.c290
-rw-r--r--CORE/HDD/src/wlan_hdd_tx_rx.c256
-rw-r--r--CORE/HDD/src/wlan_hdd_wext.c60
-rw-r--r--CORE/HDD/src/wlan_hdd_wowl.c78
-rw-r--r--CORE/MAC/inc/qwlan_version.h4
-rw-r--r--CORE/MAC/inc/sirApi.h2
-rw-r--r--CORE/MAC/src/dph/dphHashTable.c46
-rw-r--r--CORE/MAC/src/pe/lim/limApi.c7
-rw-r--r--CORE/MAC/src/pe/lim/limProcessCfgUpdates.c14
-rw-r--r--CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c4
-rw-r--r--CORE/MAC/src/pe/lim/limSerDesUtils.c32
-rw-r--r--CORE/MAC/src/pe/lim/limSession.c25
-rw-r--r--CORE/MAC/src/pe/lim/limTimerUtils.c4
-rw-r--r--CORE/MAC/src/pe/lim/limUtils.c2
-rw-r--r--CORE/SAP/inc/sapApi.h705
-rw-r--r--CORE/SAP/src/sapApiLinkCntl.c118
-rw-r--r--CORE/SAP/src/sapChSelect.c181
-rw-r--r--CORE/SAP/src/sapChSelect.h13
-rw-r--r--CORE/SAP/src/sapFsm.c1
-rw-r--r--CORE/SAP/src/sapInternal.h275
-rw-r--r--CORE/SERVICES/HIF/DXE/dmux_dxe.c42
-rw-r--r--CORE/SERVICES/HIF/DXE/dmux_dxe_api.h8
-rw-r--r--CORE/SERVICES/HIF/DXE/dmux_dxe_internal.h2
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe.c182
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe.h58
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe_config.c25
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe_hw_pvt.h4
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe_os.h46
-rw-r--r--CORE/SERVICES/HIF/DXE/hif_dxe_pvt.h24
-rw-r--r--CORE/SERVICES/HIF/DXE/linux/hif_dxe_os.c172
-rw-r--r--CORE/SERVICES/HIF/DXE/linux/hif_dxe_ospvt.h5
-rw-r--r--CORE/SERVICES/HIF/PCIe/cepci.h6
-rw-r--r--CORE/SERVICES/HIF/PCIe/copy_engine.c46
-rw-r--r--CORE/SERVICES/HIF/PCIe/copy_engine_api.h4
-rw-r--r--CORE/SERVICES/HIF/PCIe/copy_engine_internal.h14
-rw-r--r--CORE/SERVICES/HIF/PCIe/hif_pci.c74
-rw-r--r--CORE/SERVICES/HIF/PCIe/if_pci.c28
-rw-r--r--CORE/SERVICES/HIF/PCIe/if_pci.h2
-rw-r--r--CORE/SERVICES/HTC/htc_send.c2
-rw-r--r--CORE/SERVICES/WMA/wma.c36
-rw-r--r--CORE/SERVICES/WMI/wmi_unified.c2
-rw-r--r--CORE/SME/inc/csrLinkList.h4
-rw-r--r--CORE/SME/src/csr/csrApiRoam.c55
-rw-r--r--CORE/SME/src/csr/csrApiScan.c84
-rw-r--r--CORE/SME/src/sme_common/sme_Api.c70
-rw-r--r--CORE/UTILS/FWLOG/dbglog_host.c67
-rw-r--r--CORE/VOSS/inc/wlan_hdd_misc.h1
-rw-r--r--CORE/VOSS/src/vos_api.c11
-rw-r--r--CORE/VOSS/src/vos_memory.c8
-rw-r--r--CORE/VOSS/src/vos_sched.c14
-rw-r--r--CORE/WDA/src/wlan_qct_wda.c3
-rw-r--r--CORE/WDI/CP/src/wlan_qct_wdi.c3
-rw-r--r--CORE/WDI/TRP/CTS/inc/wlan_qct_wdi_cts.h106
-rw-r--r--CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c6
-rw-r--r--tools/fwdebuglog/cld-fwlog-parser.c69
-rw-r--r--tools/fwdebuglog/parser.c99
94 files changed, 2547 insertions, 2402 deletions
diff --git a/CORE/BAP/src/btampFsm.c b/CORE/BAP/src/btampFsm.c
index 15534b6da942..262a8f7ad75f 100644
--- a/CORE/BAP/src/btampFsm.c
+++ b/CORE/BAP/src/btampFsm.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -1530,7 +1530,6 @@ tANI_U8 pRSNOui03[ WLANBAP_RSN_OUI_SIZE ] = { 0x00, 0x0F, 0xAC, 0x03 }; // Reser
tANI_U8 pRSNOui04[ WLANBAP_RSN_OUI_SIZE ] = { 0x00, 0x0F, 0xAC, 0x04 }; // AES-CCMP
tANI_U8 pRSNOui05[ WLANBAP_RSN_OUI_SIZE ] = { 0x00, 0x0F, 0xAC, 0x05 }; // WEP-104
-#define GET_IE_LEN_IN_BSS(lenInBss) ( lenInBss + sizeof(lenInBss) - ((int) OFFSET_OF( tSirBssDescription, ieFields)))
/* Incoming Association indication validation predicate */
v_U32_t
validAssocInd
diff --git a/CORE/CLD_TXRX/TLSHIM/tl_shim.c b/CORE/CLD_TXRX/TLSHIM/tl_shim.c
index 17c9260ece85..5b1975f06980 100644
--- a/CORE/CLD_TXRX/TLSHIM/tl_shim.c
+++ b/CORE/CLD_TXRX/TLSHIM/tl_shim.c
@@ -275,14 +275,15 @@ tlshim_mgmt_over_data_rx_handler_non_interrupt_ctx(pVosContextType pVosGCtx,
*/
bool
tlshim_check_n_process_iapp_frame (pVosContextType pVosGCtx,
- adf_nbuf_t msdu, u_int16_t sta_id)
+ adf_nbuf_t *msdu, u_int16_t sta_id)
{
- u_int8_t *data = adf_nbuf_data(msdu);
+ u_int8_t *data;
u_int8_t offset_snap_header;
struct ol_txrx_pdev_t *pdev = pVosGCtx->pdev_txrx_ctx;
struct ol_txrx_peer_t *peer =
ol_txrx_peer_find_by_local_id(pVosGCtx->pdev_txrx_ctx, sta_id);
struct ol_txrx_vdev_t *vdev = peer->vdev;
+ adf_nbuf_t new_head = NULL, buf, new_list = NULL, next_buf;
/* frame format is natve wifi */
if(pdev->frame_format == wlan_frm_fmt_native_wifi)
@@ -290,21 +291,36 @@ tlshim_check_n_process_iapp_frame (pVosContextType pVosGCtx,
else
offset_snap_header = ETHERNET_HDR_LEN;
- if(vos_mem_compare( &data[offset_snap_header],
- &AIRONET_SNAP_HEADER[0], LLC_SNAP_SIZE) == VOS_TRUE) {
- /* process IAPP frames */
- tlshim_mgmt_over_data_rx_handler_non_interrupt_ctx(pVosGCtx,
- msdu, vdev);
- /* if returned true: the packet will not be passed to upper layer */
- return true;
+ buf = *msdu;
+ while (buf) {
+ data = adf_nbuf_data(buf);
+ next_buf = adf_nbuf_queue_next(buf);
+ if (vos_mem_compare( &data[offset_snap_header],
+ &AIRONET_SNAP_HEADER[0], LLC_SNAP_SIZE) == VOS_TRUE) {
+ /* process IAPP frames */
+ tlshim_mgmt_over_data_rx_handler_non_interrupt_ctx(pVosGCtx,
+ buf, vdev);
+ } else { /* Add the packet onto a new list */
+ if (new_list == NULL)
+ new_head = buf;
+ else
+ adf_nbuf_set_next(new_list, buf);
+ new_list = buf;
+ adf_nbuf_set_next(buf, NULL);
+ }
+ buf = next_buf;
}
+ if (!new_list)
+ return true;
+
+ *msdu = new_head;
/* if returned false the packet will be handled by the upper layer */
return false;
}
-
#endif /* defined(FEATURE_WLAN_CCX) && !defined(FEATURE_WLAN_CCX_UPLOAD) */
+
#ifdef QCA_WIFI_ISOC
static void tlshim_mgmt_rx_dxe_handler(void *context, adf_nbuf_t buflist)
{
@@ -657,34 +673,50 @@ static void tl_shim_flush_rx_frames(void *vos_ctx,
clear_bit(TLSHIM_FLUSH_CACHE_IN_PROGRESS, &sta_info->flags);
}
-static VOS_STATUS tlshim_data_rx_cb(struct txrx_tl_shim_ctx *tl_shim,
- adf_nbuf_t buf, u_int16_t staid)
+static void tlshim_data_rx_cb(struct txrx_tl_shim_ctx *tl_shim,
+ adf_nbuf_t buf_list, u_int16_t staid)
{
void *vos_ctx = vos_get_global_context(VOS_MODULE_ID_TL, tl_shim);
struct tlshim_sta_info *sta_info;
+ adf_nbuf_t buf, next_buf;
VOS_STATUS ret;
- if (!vos_ctx)
- return VOS_STATUS_E_FAILURE;
+ if (unlikely(!vos_ctx))
+ goto free_buf;
+
sta_info = &tl_shim->sta_info[staid];
- if (unlikely(!sta_info->registered)) {
- adf_nbuf_free(buf);
- return VOS_STATUS_E_FAILURE;
- }
+ if (unlikely(!sta_info->registered))
+ goto free_buf;
adf_os_spin_lock_bh(&tl_shim->bufq_lock);
- sta_info->suspend_flush = 1;
- adf_os_spin_unlock_bh(&tl_shim->bufq_lock);
+ if (!list_empty(&sta_info->cached_bufq)) {
+ sta_info->suspend_flush = 1;
+ adf_os_spin_unlock_bh(&tl_shim->bufq_lock);
+ /* Flush the cached frames to HDD before passing new rx frame */
+ tl_shim_flush_rx_frames(vos_ctx, tl_shim, staid, 0);
+ } else
+ adf_os_spin_unlock_bh(&tl_shim->bufq_lock);
- /* Flush the cached frames to HDD before passing new rx frame */
- tl_shim_flush_rx_frames(vos_ctx, tl_shim, staid, 0);
- ret = sta_info->data_rx(vos_ctx, buf, staid);
- if (ret != VOS_STATUS_SUCCESS) {
- TLSHIM_LOGW("Frame Rx to HDD failed");
+ buf = buf_list;
+ while (buf) {
+ next_buf = adf_nbuf_queue_next(buf);
+ ret = sta_info->data_rx(vos_ctx, buf, staid);
+ if (ret != VOS_STATUS_SUCCESS) {
+ TLSHIM_LOGE("Frame Rx to HDD failed");
+ adf_nbuf_free(buf);
+ }
+ buf = next_buf;
+ }
+ return;
+
+free_buf:
+ TLSHIM_LOGW("%s:Dropping frames", __func__);
+ buf = buf_list;
+ while (buf) {
+ next_buf = adf_nbuf_queue_next(buf);
adf_nbuf_free(buf);
- return VOS_STATUS_E_FAILURE;
+ buf = next_buf;
}
- return VOS_STATUS_SUCCESS;
}
/*
@@ -750,9 +782,6 @@ static void tlshim_data_rx_handler(void *context, u_int16_t staid,
ret = sta_info->data_rx(vos_ctx, rx_buf_list, staid);
if (ret == VOS_STATUS_E_INVAL) {
#endif
- buf = rx_buf_list;
- while (buf) {
- next_buf = adf_nbuf_queue_next(buf);
#if defined(FEATURE_WLAN_CCX) && !defined(FEATURE_WLAN_CCX_UPLOAD)
/*
@@ -762,11 +791,9 @@ static void tlshim_data_rx_handler(void *context, u_int16_t staid,
* 2) send to PE/LIM
* 3) free the involved sk_buff
*/
- if(tlshim_check_n_process_iapp_frame(vos_ctx,
- buf, staid)) {
- buf = next_buf;
- continue;
- }
+ if (tlshim_check_n_process_iapp_frame(vos_ctx,
+ &rx_buf_list, staid))
+ return;
/*
* above returned false, the packet was not IAPP.
@@ -779,36 +806,30 @@ static void tlshim_data_rx_handler(void *context, u_int16_t staid,
* better use multicores.
*/
if (!tl_shim->enable_rxthread) {
- tlshim_data_rx_cb(tl_shim, buf, staid);
+ tlshim_data_rx_cb(tl_shim, rx_buf_list, staid);
} else {
pVosSchedContext sched_ctx =
get_vos_sched_ctxt();
struct VosTlshimPkt *pkt;
- if (unlikely(!sched_ctx)) {
- adf_nbuf_free(buf);
- buf = next_buf;
- continue;
- }
+ if (unlikely(!sched_ctx))
+ goto drop_rx_buf;
+
pkt = vos_alloc_tlshim_pkt(sched_ctx);
if (!pkt) {
TLSHIM_LOGW("No available Rx message buffer");
- adf_nbuf_free(buf);
- buf = next_buf;
- continue;
+ goto drop_rx_buf;
}
pkt->callback = (vos_tlshim_cb)
tlshim_data_rx_cb;
pkt->context = (void *) tl_shim;
- pkt->Rxpkt = (void *) buf;
+ pkt->Rxpkt = (void *) rx_buf_list;
pkt->staId = staid;
vos_indicate_rxpkt(sched_ctx, pkt);
}
#else /* QCA_CONFIG_SMP */
- tlshim_data_rx_cb(tl_shim, buf, staid);
+ tlshim_data_rx_cb(tl_shim, rx_buf_list, staid);
#endif /* QCA_CONFIG_SMP */
- buf = next_buf;
- }
#ifdef IPA_OFFLOAD
}
#endif
diff --git a/CORE/HDD/inc/bap_hdd_main.h b/CORE/HDD/inc/bap_hdd_main.h
index ea1eaa4f3f3d..e9f58da105a9 100644
--- a/CORE/HDD/inc/bap_hdd_main.h
+++ b/CORE/HDD/inc/bap_hdd_main.h
@@ -29,17 +29,17 @@
#define BAP_HDD_MAIN_H
/**===========================================================================
-
+
\file BAP_HDD_MAIN_H.h
-
+
\brief Linux HDD Adapter Type
-
+
==========================================================================*/
-
-/*---------------------------------------------------------------------------
+
+/*---------------------------------------------------------------------------
Include files
- -------------------------------------------------------------------------*/
-
+ -------------------------------------------------------------------------*/
+
#include <linux/netdevice.h>
#include <linux/skbuff.h>
#include <vos_list.h>
@@ -51,34 +51,34 @@
#define BSL_MAX_CLIENTS 1
#define BSL_MAX_PHY_LINK_PER_CLIENT 1
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Function declarations and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
/**---------------------------------------------------------------------------
-
+
\brief BSL_Init() - Initialize the BSL Misc char driver
-
+
This is called in by WLANBAP_Open() as part of bringing up the BT-AMP PAL (BAP)
WLANBAP_Open() will pass in the device context created.
-
+
\param - NA
-
+
\return - 0 for success non-zero for failure
-
+
--------------------------------------------------------------------------*/
int BSL_Init (void *pCtx);
/**---------------------------------------------------------------------------
-
+
\brief BSL_Deinit() - De-initialize the BSL Misc char driver
-
+
This is called in by WLANBAP_Close() as part of bringing down the BT-AMP PAL (BAP)
-
+
\param - NA
-
+
\return - 0 for success non-zero for failure
-
+
--------------------------------------------------------------------------*/
int BSL_Deinit(void *pCtx);
diff --git a/CORE/HDD/inc/bap_hdd_misc.h b/CORE/HDD/inc/bap_hdd_misc.h
index ecbcdb51dfc2..889961d4a0b1 100644
--- a/CORE/HDD/inc/bap_hdd_misc.h
+++ b/CORE/HDD/inc/bap_hdd_misc.h
@@ -29,39 +29,39 @@
#define BAP_HDD_MISC_H
/**===========================================================================
-
+
\file BAP_HDD_MISC.h
-
+
\brief Linux HDD Adapter Type
-
+
==========================================================================*/
-
-/*---------------------------------------------------------------------------
+
+/*---------------------------------------------------------------------------
Include files
- -------------------------------------------------------------------------*/
-
+ -------------------------------------------------------------------------*/
+
#include <bapApi.h>
#include <vos_types.h>
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Function declarations and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
/**---------------------------------------------------------------------------
-
+
\brief WLANBAP_SetConfig() - To updates some configuration for BAP module in
SME
-
+
This should be called after WLANBAP_Start().
-
+
\param - NA
-
+
\return -
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAILURE: failed to set the config in SME BAP
+ VOS_STATUS_E_FAILURE: failed to set the config in SME BAP
VOS_STATUS_SUCCESS: Success
-
+
--------------------------------------------------------------------------*/
VOS_STATUS WLANBAP_SetConfig
(
@@ -69,71 +69,71 @@ VOS_STATUS WLANBAP_SetConfig
);
/**---------------------------------------------------------------------------
-
+
\brief WLANBAP_RegisterWithHCI() - To register WLAN PAL with HCI
-
-
+
+
\param
pAdapter : HDD adapter
-
+
\return -
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAILURE: failed to register with HCI
+ VOS_STATUS_E_FAILURE: failed to register with HCI
VOS_STATUS_SUCCESS: Success
-
+
--------------------------------------------------------------------------*/
VOS_STATUS WLANBAP_RegisterWithHCI(hdd_adapter_t *pAdapter);
/**---------------------------------------------------------------------------
-
+
\brief WLANBAP_DeregisterFromHCI() - To deregister WLAN PAL with HCI
-
-
+
+
\param - NA
-
+
\return -
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAILURE: failed to deregister with HCI
+ VOS_STATUS_E_FAILURE: failed to deregister with HCI
VOS_STATUS_SUCCESS: Success
-
+
--------------------------------------------------------------------------*/
VOS_STATUS WLANBAP_DeregisterFromHCI(void);
/**---------------------------------------------------------------------------
-
+
\brief WLANBAP_StopAmp() - To stop the current AMP traffic/connection
-
-
+
+
\param - NA
-
+
\return -
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAILURE: failed to stop AMP connection
+ VOS_STATUS_E_FAILURE: failed to stop AMP connection
VOS_STATUS_SUCCESS: Success
-
+
--------------------------------------------------------------------------*/
VOS_STATUS WLANBAP_StopAmp(void);
/**---------------------------------------------------------------------------
-
+
\brief WLANBAP_AmpSessionOn() - To check if AMP connection is on currently
-
-
+
+
\param - NA
-
+
\return -
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_TRUE: AMP connection is on
+ VOS_TRUE: AMP connection is on
VOS_FALSE: AMP connection is not on
-
+
--------------------------------------------------------------------------*/
v_BOOL_t WLANBAP_AmpSessionOn(void);
#endif // end #if !defined( BAP_HDD_MISC_H )
diff --git a/CORE/HDD/inc/qc_sap_ioctl.h b/CORE/HDD/inc/qc_sap_ioctl.h
index bcf78bd54b39..7c900dda74dd 100644
--- a/CORE/HDD/inc/qc_sap_ioctl.h
+++ b/CORE/HDD/inc/qc_sap_ioctl.h
@@ -49,7 +49,7 @@ typedef struct sSSID
typedef struct sSSIDInfo
{
- tSSID ssid;
+ tSSID ssid;
u_int8_t ssidHidden;
}tSSIDInfo;
@@ -83,7 +83,7 @@ typedef enum {
eQC_AUTH_TYPE_OPEN_SYSTEM,
eQC_AUTH_TYPE_SHARED_KEY,
eQC_AUTH_TYPE_AUTO_SWITCH
-} eQcAuthType;
+} eQcAuthType;
typedef enum {
eQC_WPS_BEACON_IE,
@@ -110,7 +110,7 @@ typedef struct s_CommitConfig {
QC_ACCEPT_UNLESS_DENIED = 0,
QC_DENY_UNLESS_ACCEPTED = 1,
} qc_macaddr_acl;
-
+
struct qc_mac_acl_entry *accept_mac; /* MAC filtering */
u_int32_t num_accept_mac;
struct qc_mac_acl_entry *deny_mac; /* MAC filtering */
@@ -124,10 +124,10 @@ typedef struct s_CommitConfig {
u_int32_t countryCode[3]; //it ignored if [0] is 0.
u_int32_t ht_op_mode_fixed;
-
+
/*HT capability information to enable/diabale protection
* bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8
- * (overlap) from11a from11b from11g Ht20 NonGf LsigTxop Rifs OBSS
+ * (overlap) from11a from11b from11g Ht20 NonGf LsigTxop Rifs OBSS
* bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
* from11a from11b from11g ht20 nonGf lsigTxop rifs obss*/
u_int16_t ht_capab;
@@ -187,7 +187,7 @@ struct sQcSapreq_wscie {
typedef struct sQcSapreq_WPSPBCProbeReqIES {
u_int8_t macaddr[QCSAP_ADDR_LEN];
u_int16_t probeReqIELen;
- u_int8_t probeReqIE[512];
+ u_int8_t probeReqIE[512];
} sQcSapreq_WPSPBCProbeReqIES_t ;
/*
@@ -196,7 +196,7 @@ typedef struct sQcSapreq_WPSPBCProbeReqIES {
typedef struct
{
- v_U8_t num_channels;
+ v_U8_t num_channels;
v_U8_t channels[WNI_CFG_VALID_CHANNEL_LIST_LEN];
}tChannelListInfo, *tpChannelListInfo;
@@ -239,7 +239,7 @@ typedef struct
#define QCSAP_IOCTL_MODIFY_ACL (SIOCIWFIRSTPRIV+18)
#define QCSAP_IOCTL_GET_CHANNEL_LIST (SIOCIWFIRSTPRIV+19)
-#define QCSAP_IOCTL_SET_TX_POWER (SIOCIWFIRSTPRIV+20)
+#define QCSAP_IOCTL_SET_TX_POWER (SIOCIWFIRSTPRIV+20)
#define QCSAP_IOCTL_GET_STA_INFO (SIOCIWFIRSTPRIV+21)
#define QCSAP_IOCTL_SET_MAX_TX_POWER (SIOCIWFIRSTPRIV+22)
#define QCSAP_IOCTL_DATAPATH_SNAP_SHOT (SIOCIWFIRSTPRIV+23)
@@ -298,7 +298,7 @@ typedef struct
#define QCSAP_GET_GTX_BWMASK 67
#endif /* QCA_WIFI_2_0 */
-enum {
+enum {
QCSAP_PARAM_MAX_ASSOC = 1,
QCSAP_PARAM_GET_WLAN_DBG = 4,
QCSAP_PARAM_MODULE_DOWN_IND = 5,
@@ -312,7 +312,7 @@ enum {
QCSAP_PARAM_SET_MCC_CHANNEL_QUOTA = 13,
};
-int iw_softap_get_channel_list(struct net_device *dev,
+int iw_softap_get_channel_list(struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu, char *extra);
diff --git a/CORE/HDD/inc/wlan_hdd_assoc.h b/CORE/HDD/inc/wlan_hdd_assoc.h
index 6dd6914be2b7..7ba62db11533 100644
--- a/CORE/HDD/inc/wlan_hdd_assoc.h
+++ b/CORE/HDD/inc/wlan_hdd_assoc.h
@@ -26,7 +26,7 @@
*
*/
-#if !defined( HDD_CONNECTION_H__ )
+#if !defined( HDD_CONNECTION_H__ )
#define HDD_CONNECTION_H__
#include <wlan_hdd_mib.h>
#define HDD_MAX_NUM_IBSS_STA ( 32 )
@@ -41,7 +41,7 @@
#endif
#endif
#define TKIP_COUNTER_MEASURE_STARTED 1
-#define TKIP_COUNTER_MEASURE_STOPED 0
+#define TKIP_COUNTER_MEASURE_STOPED 0
/* Timeout (in ms) for Link to Up before Registering Station */
#define ASSOC_LINKUP_TIMEOUT 60
@@ -53,7 +53,7 @@
#define IBSS_BROADCAST_STAID 1
#endif
-typedef enum
+typedef enum
{
/** Not associated in Infra or participating in an IBSS / Ad-hoc network.*/
eConnectionState_NotConnected,
@@ -80,22 +80,22 @@ typedef struct connection_info_s
{
/** connection state of the NIC.*/
eConnectionState connState;
-
+
/** BSS type of the current connection. Comes from the MIB at the
time the connect request is issued in combination with the BssDescription
from the associated entity.*/
-
+
eMib_dot11DesiredBssType connDot11DesiredBssType;
/** BSSID */
tCsrBssid bssId;
-
+
/** SSID Info*/
tCsrSSIDInfo SSID;
-
+
/** Station ID */
v_U8_t staId[ HDD_MAX_NUM_IBSS_STA ];
/** Peer Mac Address of the IBSS Stations */
- v_MACADDR_t peerMacAddress[ HDD_MAX_NUM_IBSS_STA ];
+ v_MACADDR_t peerMacAddress[ HDD_MAX_NUM_IBSS_STA ];
/** Auth Type */
eCsrAuthType authType;
@@ -109,14 +109,14 @@ typedef struct connection_info_s
tCsrKeys Keys;
/** Operation Channel */
- v_U8_t operationChannel;
-
+ v_U8_t operationChannel;
+
/** Remembers authenticated state */
v_U8_t uIsAuthenticated;
/** Dot11Mode */
tANI_U32 dot11Mode;
-
+
}connection_info_t;
/*Forward declaration of Adapter*/
typedef struct hdd_adapter_s hdd_adapter_t;
@@ -134,7 +134,7 @@ typedef enum
#endif /* QCA_WIFI_2_0 */
extern v_BOOL_t hdd_connIsConnected( hdd_station_ctx_t *pHddStaCtx );
-extern eHalStatus hdd_smeRoamCallback( void *pContext, tCsrRoamInfo *pRoamInfo, v_U32_t roamId,
+extern eHalStatus hdd_smeRoamCallback( void *pContext, tCsrRoamInfo *pRoamInfo, v_U32_t roamId,
eRoamCmdStatus roamStatus, eCsrRoamResult roamResult );
extern v_VOID_t hdd_connSaveConnectInfo( hdd_adapter_t *pAdapter, tCsrRoamInfo *pRoamInfo, eCsrRoamBssType eBssType );
diff --git a/CORE/HDD/inc/wlan_hdd_cfg80211.h b/CORE/HDD/inc/wlan_hdd_cfg80211.h
index 0aec533bbb78..c4f83641f8c7 100644
--- a/CORE/HDD/inc/wlan_hdd_cfg80211.h
+++ b/CORE/HDD/inc/wlan_hdd_cfg80211.h
@@ -41,7 +41,7 @@
//value for initial part of frames and number of bytes to be compared
-#define GAS_INITIAL_REQ "\x04\x0a"
+#define GAS_INITIAL_REQ "\x04\x0a"
#define GAS_INITIAL_REQ_SIZE 2
#define GAS_INITIAL_RSP "\x04\x0b"
@@ -53,7 +53,7 @@
#define GAS_COMEBACK_RSP "\x04\x0d"
#define GAS_COMEBACK_RSP_SIZE 2
-#define P2P_PUBLIC_ACTION_FRAME "\x04\x09\x50\x6f\x9a\x09"
+#define P2P_PUBLIC_ACTION_FRAME "\x04\x09\x50\x6f\x9a\x09"
#define P2P_PUBLIC_ACTION_FRAME_SIZE 6
#define P2P_ACTION_FRAME "\x7f\x50\x6f\x9a\x09"
@@ -215,7 +215,9 @@ void hdd_suspend_wlan(void (*callback)(void *callbackContext),
void hdd_resume_wlan(void);
#endif
+#ifdef FEATURE_WLAN_CH_AVOID
int wlan_hdd_send_avoid_freq_event(hdd_context_t *pHddCtx,
tHddAvoidFreqList *pAvoidFreqList);
+#endif
#endif
diff --git a/CORE/HDD/inc/wlan_hdd_debugfs.h b/CORE/HDD/inc/wlan_hdd_debugfs.h
index b1b2a9b19c28..40415fd154e0 100644
--- a/CORE/HDD/inc/wlan_hdd_debugfs.h
+++ b/CORE/HDD/inc/wlan_hdd_debugfs.h
@@ -41,4 +41,3 @@ inline void hdd_debugfs_exit(hdd_context_t *pHddCtx)
}
#endif /* #ifdef WLAN_OPEN_SOURCE */
#endif /* #ifndef _WLAN_HDD_DEBUGFS_H */
-
diff --git a/CORE/HDD/inc/wlan_hdd_dev_pwr.h b/CORE/HDD/inc/wlan_hdd_dev_pwr.h
index 07dbcddf2584..a2bb4723b6a5 100644
--- a/CORE/HDD/inc/wlan_hdd_dev_pwr.h
+++ b/CORE/HDD/inc/wlan_hdd_dev_pwr.h
@@ -36,7 +36,7 @@
/*----------------------------------------------------------------------------
@brief Registration function.
- Register suspend, resume callback functions with platform driver.
+ Register suspend, resume callback functions with platform driver.
@param hdd_context_t pHddCtx
Global hdd context
diff --git a/CORE/HDD/inc/wlan_hdd_dp_utils.h b/CORE/HDD/inc/wlan_hdd_dp_utils.h
index 153854e4bc78..0165c9fa33cb 100644
--- a/CORE/HDD/inc/wlan_hdd_dp_utils.h
+++ b/CORE/HDD/inc/wlan_hdd_dp_utils.h
@@ -65,7 +65,7 @@ typedef struct hdd_list_s
hdd_list_node_t anchor;
v_SIZE_t count;
v_SIZE_t max_size;
- spinlock_t lock;
+ spinlock_t lock;
} hdd_list_t;
typedef struct
@@ -76,7 +76,7 @@ typedef struct
} skb_list_node_t;
//FIXME Need a helper function to cleanup skbs in a queue. Required for cleanup/shutdown
-
+
/**-----------------------------------------------------------------------------
Function declarations and documenation
----------------------------------------------------------------------------*/
diff --git a/CORE/HDD/inc/wlan_hdd_ftm.h b/CORE/HDD/inc/wlan_hdd_ftm.h
index 2bcba1a2dff0..44b16eccbdf2 100644
--- a/CORE/HDD/inc/wlan_hdd_ftm.h
+++ b/CORE/HDD/inc/wlan_hdd_ftm.h
@@ -39,7 +39,7 @@
#define WLAN_FTM_FAILURE 1
#define WLAN_FTM_START 1
-#define WLAN_FTM_STOP 2
+#define WLAN_FTM_STOP 2
#define WLAN_FTM_CMD 3
@@ -100,7 +100,7 @@
typedef enum {
WLAN_FTM_CMD_START = 1,
- WLAN_FTM_CMD_STOP,
+ WLAN_FTM_CMD_STOP,
WLAN_FTM_CMD_CMD
} wlan_hdd_ftm_cmds;
typedef struct ftm_hdr_s {
@@ -121,7 +121,7 @@ typedef struct wlan_hdd_ftm_request_s
v_U8_t cmd_code;
v_U8_t sub_sys_id;
v_U16_t mode_id;
- ftm_hdr_t ftm_hdr;
+ ftm_hdr_t ftm_hdr;
v_U16_t module_type;
wlan_hdd_ftm_payload ftmpkt;
}wlan_hdd_ftm_request_t;
@@ -131,7 +131,7 @@ typedef struct wlan_hdd_ftm_response_s
v_U8_t cmd_code;
v_U8_t sub_sys_id;
v_U16_t mode_id;
- ftm_hdr_t ftm_hdr;
+ ftm_hdr_t ftm_hdr;
v_U16_t ftm_err_code;
wlan_hdd_ftm_payload ftmpkt;
}wlan_hdd_ftm_response_t;
@@ -149,7 +149,7 @@ typedef struct wlan_hdd_ftm_status_s
tAniNlHdr *wnl;
/**vos event */
vos_event_t ftm_vos_event;
-
+
/** completion variable for ftm command to complete*/
struct completion ftm_comp_var;
v_BOOL_t IsCmdPending;
@@ -165,10 +165,10 @@ typedef struct wlan_hdd_ftm_status_s
} wlan_hdd_ftm_status_t;
typedef struct ftm_msg_s
{
- /* This field can be used as sequence
+ /* This field can be used as sequence
number/dialogue token for matching request/response */
v_U16_t type;
-
+
/* This guy carries the command buffer along with command id */
void *cmd_ptr;
v_U32_t bodyval;
diff --git a/CORE/HDD/inc/wlan_hdd_host_offload.h b/CORE/HDD/inc/wlan_hdd_host_offload.h
index 3314b3f191c4..5082fe3b5a0d 100644
--- a/CORE/HDD/inc/wlan_hdd_host_offload.h
+++ b/CORE/HDD/inc/wlan_hdd_host_offload.h
@@ -60,4 +60,3 @@ typedef struct
} tHostOffloadRequest, *tpHostOffloadRequest;
#endif // __WLAN_HDD_HOST_OFFLOAD_H__
-
diff --git a/CORE/HDD/inc/wlan_hdd_hostapd.h b/CORE/HDD/inc/wlan_hdd_hostapd.h
index c3e855a0cdda..22abc8b59a07 100644
--- a/CORE/HDD/inc/wlan_hdd_hostapd.h
+++ b/CORE/HDD/inc/wlan_hdd_hostapd.h
@@ -61,29 +61,29 @@ VOS_STATUS hdd_register_hostapd(hdd_adapter_t *pAdapter, tANI_U8 rtnl_held);
VOS_STATUS hdd_unregister_hostapd(hdd_adapter_t *pAdapter);
-eCsrAuthType
+eCsrAuthType
hdd_TranslateRSNToCsrAuthType( u_int8_t auth_suite[4]);
-eCsrEncryptionType
+eCsrEncryptionType
hdd_TranslateRSNToCsrEncryptionType(u_int8_t cipher_suite[4]);
-eCsrEncryptionType
+eCsrEncryptionType
hdd_TranslateRSNToCsrEncryptionType(u_int8_t cipher_suite[4]);
-eCsrAuthType
+eCsrAuthType
hdd_TranslateWPAToCsrAuthType(u_int8_t auth_suite[4]);
-eCsrEncryptionType
+eCsrEncryptionType
hdd_TranslateWPAToCsrEncryptionType(u_int8_t cipher_suite[4]);
VOS_STATUS hdd_softap_sta_deauth(hdd_adapter_t*,v_U8_t*);
void hdd_softap_sta_disassoc(hdd_adapter_t*,v_U8_t*);
void hdd_softap_tkip_mic_fail_counter_measure(hdd_adapter_t*,v_BOOL_t);
int hdd_softap_unpackIE( tHalHandle halHandle,
- eCsrEncryptionType *pEncryptType,
- eCsrEncryptionType *mcEncryptType,
- eCsrAuthType *pAuthType,
- u_int16_t gen_ie_len,
+ eCsrEncryptionType *pEncryptType,
+ eCsrEncryptionType *mcEncryptType,
+ eCsrAuthType *pAuthType,
+ u_int16_t gen_ie_len,
u_int8_t *gen_ie );
VOS_STATUS hdd_hostapd_SAPEventCB( tpSap_Event pSapEvent, v_PVOID_t usrDataForCallback);
diff --git a/CORE/HDD/inc/wlan_hdd_includes.h b/CORE/HDD/inc/wlan_hdd_includes.h
index 8305b8e925c4..239e7920b911 100644
--- a/CORE/HDD/inc/wlan_hdd_includes.h
+++ b/CORE/HDD/inc/wlan_hdd_includes.h
@@ -29,18 +29,18 @@
#define HDD_INCLUDES_H__
/**===========================================================================
-
+
\file wlan_hdd_includes.h
-
+
\brief Internal includes for the Linux HDD
-
+
==========================================================================*/
-
+
/* $HEADER$ */
-
-/*---------------------------------------------------------------------------
+
+/*---------------------------------------------------------------------------
Include files
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
// throw all the includes in here f to get the .c files in the HDD to compile.
@@ -67,7 +67,7 @@
#ifdef FEATURE_OEM_DATA_SUPPORT
/*include for oem data req specific structures*/
/*and function declarations*/
-#include "wlan_hdd_oemdata.h"
+#include "wlan_hdd_oemdata.h"
#endif
#endif // end #if !defined( HDD_INCLUDES_H__ )
diff --git a/CORE/HDD/inc/wlan_hdd_keep_alive.h b/CORE/HDD/inc/wlan_hdd_keep_alive.h
index f040841f5c1b..a33074c7c272 100644
--- a/CORE/HDD/inc/wlan_hdd_keep_alive.h
+++ b/CORE/HDD/inc/wlan_hdd_keep_alive.h
@@ -49,11 +49,10 @@ typedef struct
{
v_U8_t packetType;
v_U32_t timePeriod;
- v_U8_t hostIpv4Addr[4];
+ v_U8_t hostIpv4Addr[4];
v_U8_t destIpv4Addr[4];
v_U8_t destMacAddr [6];
v_U8_t bssIdx;
} tKeepAliveRequest, *tpKeepAliveRequest;
#endif // __WLAN_HDD_KEEP_ALIVE_H__
-
diff --git a/CORE/HDD/inc/wlan_hdd_mib.h b/CORE/HDD/inc/wlan_hdd_mib.h
index 191418bdddd2..7dd878ed9fdc 100644
--- a/CORE/HDD/inc/wlan_hdd_mib.h
+++ b/CORE/HDD/inc/wlan_hdd_mib.h
@@ -25,7 +25,7 @@
* to the Linux Foundation.
*/
#if !defined( WLAN_HDD_MIB_h__ )
-#define WLAN_HDD_MIB_h__
+#define WLAN_HDD_MIB_h__
#include <vos_types.h>
@@ -36,29 +36,29 @@ typedef enum
eMib_dot11DesiredBssType_independent = 2,
eMib_dot11DesiredBssType_infra_ap =3,
eMib_dot11DesiredBssType_any = 4
-
+
} eMib_dot11DesiredBssType;
-/** This is the maximum number of BSSIDs supported in the
- dot11DesiredBssidList. All the code operates off of
+/** This is the maximum number of BSSIDs supported in the
+ dot11DesiredBssidList. All the code operates off of
this maximum BSSID list count. */
#define MIB_DOT11_DESIRED_BSSID_LIST_MAX_COUNT ( 1 )
typedef struct
{
v_U32_t cEntries;
-
- v_MACADDR_t BSSIDs[ MIB_DOT11_DESIRED_BSSID_LIST_MAX_COUNT ];
+
+ v_MACADDR_t BSSIDs[ MIB_DOT11_DESIRED_BSSID_LIST_MAX_COUNT ];
} sMib_dot11DesiredBssidList;
-/** This is the maximum number of SSIDs supported in the
- dot11DesiredSsidList. All the code operates off of
+/** This is the maximum number of SSIDs supported in the
+ dot11DesiredSsidList. All the code operates off of
this maximum SSID list count. */
-
+
#define MIB_DOT11_DESIRED_SSID_LIST_MAX_COUNT ( 1 )
#define MIB_DOT11_SSID_MAX_LENGTH ( 32 )
@@ -67,14 +67,14 @@ typedef struct
{
v_U32_t ssidLength;
v_U8_t ssid[ MIB_DOT11_SSID_MAX_LENGTH ];
-
+
} sDot11Ssid;
typedef struct
{
v_U32_t cEntries;
-
- sDot11Ssid SSIDs[ MIB_DOT11_DESIRED_SSID_LIST_MAX_COUNT ];
+
+ sDot11Ssid SSIDs[ MIB_DOT11_DESIRED_SSID_LIST_MAX_COUNT ];
} sMib_dot11DesiredSsidList;
@@ -86,14 +86,14 @@ typedef enum
eMib_dot11AutoConfigEnabled_None = 0U,
eMib_dot11AutoConfigEnabled_Phy = 0x00000001U,
eMib_dot11AutoConfigEnabled_Mac = 0x00000002U
-
+
} eMib_dot11AutoConfigEnabled;
#define MIB_DOT11_SUPPORTED_PHY_TYPES_MAX_COUNT ( 3 )
-typedef enum tagMib_dot11PhyType
+typedef enum tagMib_dot11PhyType
{
eMib_dot11PhyType_11b,
eMib_dot11PhyType_11a,
@@ -103,26 +103,26 @@ typedef enum tagMib_dot11PhyType
typedef struct tagMib_dot11SupportedPhyTypes
{
- v_U32_t cEntries;
- eMib_dot11PhyType phyTypes[ MIB_DOT11_SUPPORTED_PHY_TYPES_MAX_COUNT ];
+ v_U32_t cEntries;
+ eMib_dot11PhyType phyTypes[ MIB_DOT11_SUPPORTED_PHY_TYPES_MAX_COUNT ];
} sMib_dot11SupportedPhyTypes;
typedef enum
{
- eMib_DevicePowerState_D0,
- eMib_DevicePowerState_D1,
- eMib_DevicePowerState_D2,
+ eMib_DevicePowerState_D0,
+ eMib_DevicePowerState_D1,
+ eMib_DevicePowerState_D2,
eMib_DevicePowerState_D3
-
-} eMib_DevicePowerState;
-
+
+} eMib_DevicePowerState;
+
typedef enum
{
eMib_dot11NICPowerState_OFF = VOS_FALSE,
eMib_dot11NICPowerState_ON = VOS_TRUE
-
+
} eMib_dot11NICPowerState;
@@ -130,26 +130,26 @@ typedef enum
{
eMib_dot11HardwarePHYState_OFF = VOS_FALSE,
eMib_dot11HardwarePHYState_ON = VOS_TRUE
-
+
} eMib_dot11HardwarePHYState;
typedef enum
{
- eMib_dot11PowerSavingLevel_None,
+ eMib_dot11PowerSavingLevel_None,
eMib_dot11PowerSavingLevel_MaxPS,
eMib_dot11PowerSavingLevel_FastPS,
eMib_dot11PowerSavingLevel_MaximumLevel
-
-} eMib_dot11PowerSavingLevel;
+
+} eMib_dot11PowerSavingLevel;
#define MIB_DOT11_MAC_EXCLUSION_LIST_MAX_COUNT 4
typedef struct
{
v_U32_t cEntries;
-
- v_MACADDR_t macAddrs[ MIB_DOT11_MAC_EXCLUSION_LIST_MAX_COUNT ];
+
+ v_MACADDR_t macAddrs[ MIB_DOT11_MAC_EXCLUSION_LIST_MAX_COUNT ];
} sMib_dot11MacExcludeList;
diff --git a/CORE/HDD/inc/wlan_hdd_oemdata.h b/CORE/HDD/inc/wlan_hdd_oemdata.h
index aca6a73266fd..955f49b9698b 100644
--- a/CORE/HDD/inc/wlan_hdd_oemdata.h
+++ b/CORE/HDD/inc/wlan_hdd_oemdata.h
@@ -28,11 +28,11 @@
#ifdef FEATURE_OEM_DATA_SUPPORT
/**===========================================================================
-
+
\file wlan_hdd_oemdata.h
-
+
\brief Internal includes for the oem data
-
+
==========================================================================*/
diff --git a/CORE/HDD/inc/wlan_hdd_p2p.h b/CORE/HDD/inc/wlan_hdd_p2p.h
index 3f2710e0c3ee..3337760d6627 100644
--- a/CORE/HDD/inc/wlan_hdd_p2p.h
+++ b/CORE/HDD/inc/wlan_hdd_p2p.h
@@ -110,7 +110,7 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
u64 cookie );
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
-int wlan_hdd_cfg80211_mgmt_tx_cancel_wait(struct wiphy *wiphy,
+int wlan_hdd_cfg80211_mgmt_tx_cancel_wait(struct wiphy *wiphy,
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
struct wireless_dev *wdev,
#else
diff --git a/CORE/HDD/inc/wlan_hdd_power.h b/CORE/HDD/inc/wlan_hdd_power.h
index f0c30dfe4509..49ddc729b2aa 100644
--- a/CORE/HDD/inc/wlan_hdd_power.h
+++ b/CORE/HDD/inc/wlan_hdd_power.h
@@ -51,7 +51,7 @@
//gEnableSuspend = 2 in INI file implies suspend to deep sleep
#define WLAN_MAP_SUSPEND_TO_DEEP_SLEEP 2
- //gEnableSuspend = 3 in INI file implies suspend to set MCAST/BCAST filter
+ //gEnableSuspend = 3 in INI file implies suspend to set MCAST/BCAST filter
#define WLAN_MAP_SUSPEND_TO_MCAST_BCAST_FILTER 3
//gEnableDriverStop = 1 implies map driver stop to standby
@@ -75,10 +75,10 @@
* Function declarations and documentation
* ------------------------------------------------------------------------*/
eHalStatus hdd_exit_standby(hdd_context_t *pHddCtx);
- VOS_STATUS hdd_exit_deep_sleep(hdd_context_t *pHddCtx,
+ VOS_STATUS hdd_exit_deep_sleep(hdd_context_t *pHddCtx,
hdd_adapter_t* pAdapter);
VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx);
- VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx,
+ VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx,
hdd_adapter_t* pAdapter);
#ifdef CONFIG_HAS_EARLYSUSPEND
VOS_STATUS hdd_wlan_reset(void);
diff --git a/CORE/HDD/inc/wlan_hdd_softap_tx_rx.h b/CORE/HDD/inc/wlan_hdd_softap_tx_rx.h
index cdce12535c64..51c923d100a0 100644
--- a/CORE/HDD/inc/wlan_hdd_softap_tx_rx.h
+++ b/CORE/HDD/inc/wlan_hdd_softap_tx_rx.h
@@ -30,21 +30,21 @@
#define WLAN_HDD_SOFTAP_TX_RX_H
/**===========================================================================
-
+
\file wlan_hdd_softap_tx_rx.h
-
+
\brief Linux HDD SOFTAP Tx/RX APIs
-
+
==========================================================================*/
-
-/*---------------------------------------------------------------------------
+
+/*---------------------------------------------------------------------------
Include files
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
#include <wlan_hdd_hostapd.h>
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Preprocessor definitions and constants
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
#define HDD_SOFTAP_TX_BK_QUEUE_MAX_LEN (82*2)
#define HDD_SOFTAP_TX_BE_QUEUE_MAX_LEN (78*2)
#define HDD_SOFTAP_TX_VI_QUEUE_MAX_LEN (74*2)
@@ -56,21 +56,21 @@
#define HDD_SOFTAP_VI_WEIGHT_DEFAULT 8
#define HDD_SOFTAP_VO_WEIGHT_DEFAULT 18
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Type declarations
- -------------------------------------------------------------------------*/
-
-/*---------------------------------------------------------------------------
+ -------------------------------------------------------------------------*/
+
+/*---------------------------------------------------------------------------
Function declarations and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
/**============================================================================
- @brief hdd_softap_hard_start_xmit() - Function registered with the Linux OS for
+ @brief hdd_softap_hard_start_xmit() - Function registered with the Linux OS for
transmitting packets
@param skb : [in] pointer to OS packet (sk_buff)
@param dev : [in] pointer to Libra softap network device
-
+
@return : NET_XMIT_DROP if packets are dropped
: NET_XMIT_SUCCESS if packet is enqueued succesfully
===========================================================================*/
@@ -87,11 +87,11 @@ extern int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *de
extern void hdd_softap_tx_timeout(struct net_device *dev);
/**============================================================================
- @brief hdd_softap_stats() - Function registered with the Linux OS for
+ @brief hdd_softap_stats() - Function registered with the Linux OS for
device TX/RX statistics
@param dev : [in] pointer to Libra network device
-
+
@return : pointer to net_device_stats structure
===========================================================================*/
extern struct net_device_stats* hdd_softap_stats(struct net_device *dev);
@@ -100,8 +100,8 @@ extern struct net_device_stats* hdd_softap_stats(struct net_device *dev);
@brief hdd_softap_init_tx_rx() - Init function to initialize Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter );
@@ -110,8 +110,8 @@ extern VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter );
@brief hdd_softap_deinit_tx_rx() - Deinit function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_deinit_tx_rx( hdd_adapter_t *pAdapter );
@@ -122,8 +122,8 @@ extern VOS_STATUS hdd_softap_deinit_tx_rx( hdd_adapter_t *pAdapter );
@param pAdapter : [in] pointer to adapter context
@param STAId : [in] Station ID to deinit
- @param pmacAddrSTA : [in] pointer to the MAC address of the station
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pmacAddrSTA : [in] pointer to the MAC address of the station
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_init_tx_rx_sta( hdd_adapter_t *pAdapter, v_U8_t STAId, v_MACADDR_t *pmacAddrSTA);
@@ -133,8 +133,8 @@ extern VOS_STATUS hdd_softap_init_tx_rx_sta( hdd_adapter_t *pAdapter, v_U8_t STA
modules in HDD
@param pAdapter : [in] pointer to adapter context
- @param STAId : [in] Station ID to deinit
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param STAId : [in] Station ID to deinit
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_deinit_tx_rx_sta ( hdd_adapter_t *pAdapter, v_U8_t STAId );
@@ -143,8 +143,8 @@ extern VOS_STATUS hdd_softap_deinit_tx_rx_sta ( hdd_adapter_t *pAdapter, v_U8_t
@brief hdd_disconnect_tx_rx() - Disconnect function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_disconnect_tx_rx( hdd_adapter_t *pAdapter );
@@ -154,29 +154,29 @@ extern VOS_STATUS hdd_softap_disconnect_tx_rx( hdd_adapter_t *pAdapter );
to indicate that a packet has been transmitted across the SDIO bus
succesfully. OS packet resources can be released after this cbk.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (containing skb)
- @param vosStatusIn : [in] status of the transmission
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (containing skb)
+ @param vosStatusIn : [in] status of the transmission
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-extern VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
VOS_STATUS vosStatusIn );
/**============================================================================
- @brief hdd_softap_tx_fetch_packet_cbk() - Callback function invoked by TL to
+ @brief hdd_softap_tx_fetch_packet_cbk() - Callback function invoked by TL to
fetch a packet for transmission.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param staId : [in] Station for which TL is requesting a pkt
@param ucAC : [in] pointer to access category requested by TL
@param pVosPacket : [out] pointer to VOS packet packet pointer
- @param pPktMetaInfo : [out] pointer to meta info for the pkt
-
+ @param pPktMetaInfo : [out] pointer to meta info for the pkt
+
@return : VOS_STATUS_E_EMPTY if no packets to transmit
- : VOS_STATUS_E_FAILURE if any errors encountered
+ : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
@@ -186,36 +186,36 @@ extern VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
WLANTL_MetaInfoType *pPktMetaInfo );
/**============================================================================
- @brief hdd_softap_tx_low_resource_cbk() - Callback function invoked in the
- case where VOS packets are not available at the time of the call to get
- packets. This callback function is invoked by VOS when packets are
+ @brief hdd_softap_tx_low_resource_cbk() - Callback function invoked in the
+ case where VOS packets are not available at the time of the call to get
+ packets. This callback function is invoked by VOS when packets are
available.
- @param pVosPacket : [in] pointer to VOS packet
- @param userData : [in] opaque user data that was passed initially
-
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @param pVosPacket : [in] pointer to VOS packet
+ @param userData : [in] opaque user data that was passed initially
+
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
=============================================================================*/
-extern VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
v_VOID_t *userData );
#ifndef QCA_WIFI_2_0
/**============================================================================
@brief hdd_softap_rx_packet_cbk() - Receive callback registered with TL.
- TL will call this to notify the HDD when a packet was received
+ TL will call this to notify the HDD when a packet was received
for a registered STA.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (conatining sk_buff)
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (conatining sk_buff)
@param staId : [in] Station Id
- @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
+ @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-extern VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
v_U8_t staId,
WLANTL_RxMetaInfoType* pRxMetaInfo );
@@ -258,7 +258,7 @@ VOS_STATUS hdd_softap_rx_mul_packet_cbk(v_VOID_t *vosContext,
@param pAdapter : [in] pointer to adapter context
@param STAId : [in] Station ID to deregister
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_softap_DeregisterSTA( hdd_adapter_t *pAdapter, tANI_U8 staId );
@@ -274,12 +274,12 @@ extern VOS_STATUS hdd_softap_DeregisterSTA( hdd_adapter_t *pAdapter, tANI_U8 sta
@param bcastSig : [in] Broadcast Signature send to TL
@param pPeerMacAddress : [in] station MAC address
@param fWmmEnabled : [in] Wmm enabled sta or not
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
v_BOOL_t fAuthRequired,
- v_BOOL_t fPrivacyBit,
+ v_BOOL_t fPrivacyBit,
v_U8_t staId,
v_U8_t ucastSig,
v_U8_t bcastSig,
@@ -291,7 +291,7 @@ extern VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
@param pAdapter : [in] pointer to adapter context
@param fPrivacyBit : [in] privacy bit needs to be set or not
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_Register_BC_STA( hdd_adapter_t *pAdapter, v_BOOL_t fPrivacyBit);
@@ -300,7 +300,7 @@ extern VOS_STATUS hdd_softap_Register_BC_STA( hdd_adapter_t *pAdapter, v_BOOL_t
@brief hdd_softap_DeregisterSTA - DeRegister the default broadcast station into TL block
@param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_Deregister_BC_STA( hdd_adapter_t *pAdapter);
@@ -309,7 +309,7 @@ extern VOS_STATUS hdd_softap_Deregister_BC_STA( hdd_adapter_t *pAdapter);
@brief hdd_softap_stop_bss - Helper function to stop bss and do cleanup in HDD and TL
@param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_stop_bss( hdd_adapter_t *pHostapdAdapter);
@@ -321,7 +321,7 @@ extern VOS_STATUS hdd_softap_stop_bss( hdd_adapter_t *pHostapdAdapter);
@param pAdapter : [in] pointer to adapter context
@param pDestMacAddress : [in] pointer to station MAC address
@param state : [in] new station state
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_change_STA_state( hdd_adapter_t *pAdapter, v_MACADDR_t *pDestMacAddress, WLANTL_STAStateType state);
@@ -332,7 +332,7 @@ extern VOS_STATUS hdd_softap_change_STA_state( hdd_adapter_t *pAdapter, v_MACADD
@param pAdapter : [in] pointer to adapter context
@param pDestMacAddress : [in] pointer to station MAC address
@param staId : [out] station id
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
=========================================================================== */
extern VOS_STATUS hdd_softap_GetStaId( hdd_adapter_t *pAdapter, v_MACADDR_t *pMacAddress, v_U8_t *staId);
diff --git a/CORE/HDD/inc/wlan_hdd_tx_rx.h b/CORE/HDD/inc/wlan_hdd_tx_rx.h
index b500edd258b1..050fa972fa81 100644
--- a/CORE/HDD/inc/wlan_hdd_tx_rx.h
+++ b/CORE/HDD/inc/wlan_hdd_tx_rx.h
@@ -57,8 +57,8 @@
#define HDD_80211_HEADER_LEN 24
#define HDD_80211_HEADER_QOS_CTL 2
#define HDD_LLC_HDR_LEN 6
-#define HDD_FRAME_TYPE_MASK 0x0c
-#define HDD_FRAME_SUBTYPE_MASK 0xf0
+#define HDD_FRAME_TYPE_MASK 0x0c
+#define HDD_FRAME_SUBTYPE_MASK 0xf0
#define HDD_FRAME_TYPE_DATA 0x08
#define HDD_FRAME_TYPE_MGMT 0x00
#define HDD_FRAME_SUBTYPE_QOSDATA 0x80
@@ -75,21 +75,21 @@
#define SME_QOS_UAPSD_CFG_VI_CHANGED_MASK 0xF4
#define SME_QOS_UAPSD_CFG_VO_CHANGED_MASK 0xF8
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Type declarations
- -------------------------------------------------------------------------*/
-
-/*---------------------------------------------------------------------------
+ -------------------------------------------------------------------------*/
+
+/*---------------------------------------------------------------------------
Function declarations and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
/**============================================================================
- @brief hdd_hard_start_xmit() - Function registered with the Linux OS for
+ @brief hdd_hard_start_xmit() - Function registered with the Linux OS for
transmitting packets
@param skb : [in] pointer to OS packet (sk_buff)
@param dev : [in] pointer to Libra network device
-
+
@return : NET_XMIT_DROP if packets are dropped
: NET_XMIT_SUCCESS if packet is enqueued succesfully
===========================================================================*/
@@ -107,11 +107,11 @@ extern int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev);
extern void hdd_tx_timeout(struct net_device *dev);
/**============================================================================
- @brief hdd_stats() - Function registered with the Linux OS for
+ @brief hdd_stats() - Function registered with the Linux OS for
device TX/RX statistics
@param dev : [in] pointer to Libra network device
-
+
@return : pointer to net_device_stats structure
===========================================================================*/
extern struct net_device_stats* hdd_stats(struct net_device *dev);
@@ -120,8 +120,8 @@ extern struct net_device_stats* hdd_stats(struct net_device *dev);
@brief hdd_init_tx_rx() - Init function to initialize Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_init_tx_rx( hdd_adapter_t *pAdapter );
@@ -130,8 +130,8 @@ extern VOS_STATUS hdd_init_tx_rx( hdd_adapter_t *pAdapter );
@brief hdd_deinit_tx_rx() - Deinit function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_deinit_tx_rx( hdd_adapter_t *pAdapter );
@@ -140,8 +140,8 @@ extern VOS_STATUS hdd_deinit_tx_rx( hdd_adapter_t *pAdapter );
@brief hdd_disconnect_tx_rx() - Disconnect function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_disconnect_tx_rx( hdd_adapter_t *pAdapter );
@@ -151,29 +151,29 @@ extern VOS_STATUS hdd_disconnect_tx_rx( hdd_adapter_t *pAdapter );
to indicate that a packet has been transmitted across the SDIO bus
succesfully. OS packet resources can be released after this cbk.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (containing skb)
- @param vosStatusIn : [in] status of the transmission
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (containing skb)
+ @param vosStatusIn : [in] status of the transmission
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-extern VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
VOS_STATUS vosStatusIn );
/**============================================================================
- @brief hdd_tx_fetch_packet_cbk() - Callback function invoked by TL to
+ @brief hdd_tx_fetch_packet_cbk() - Callback function invoked by TL to
fetch a packet for transmission.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param staId : [in] Station for which TL is requesting a pkt
@param ucAC : [in] pointer to access category requested by TL
@param pVosPacket : [out] pointer to VOS packet packet pointer
- @param pPktMetaInfo : [out] pointer to meta info for the pkt
-
+ @param pPktMetaInfo : [out] pointer to meta info for the pkt
+
@return : VOS_STATUS_E_EMPTY if no packets to transmit
- : VOS_STATUS_E_FAILURE if any errors encountered
+ : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
extern VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
@@ -183,36 +183,36 @@ extern VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
WLANTL_MetaInfoType *pPktMetaInfo );
/**============================================================================
- @brief hdd_tx_low_resource_cbk() - Callback function invoked in the
- case where VOS packets are not available at the time of the call to get
- packets. This callback function is invoked by VOS when packets are
+ @brief hdd_tx_low_resource_cbk() - Callback function invoked in the
+ case where VOS packets are not available at the time of the call to get
+ packets. This callback function is invoked by VOS when packets are
available.
- @param pVosPacket : [in] pointer to VOS packet
- @param userData : [in] opaque user data that was passed initially
-
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @param pVosPacket : [in] pointer to VOS packet
+ @param userData : [in] opaque user data that was passed initially
+
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
=============================================================================*/
-extern VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
v_VOID_t *userData );
#ifndef QCA_WIFI_2_0
/**============================================================================
@brief hdd_rx_packet_cbk() - Receive callback registered with TL.
- TL will call this to notify the HDD when a packet was received
+ TL will call this to notify the HDD when a packet was received
for a registered STA.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (conatining sk_buff)
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (conatining sk_buff)
@param staId : [in] Station Id
- @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
+ @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-extern VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+extern VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
v_U8_t staId,
WLANTL_RxMetaInfoType* pRxMetaInfo );
#else
@@ -252,17 +252,17 @@ VOS_STATUS hdd_rx_mul_packet_cbk(v_VOID_t *vosContext,
/**============================================================================
@brief hdd_IsEAPOLPacket() - Checks the packet is EAPOL or not.
- @param pVosPacket : [in] pointer to vos packet
- @return : VOS_TRUE if the packet is EAPOL
+ @param pVosPacket : [in] pointer to vos packet
+ @return : VOS_TRUE if the packet is EAPOL
: VOS_FALSE otherwise
===========================================================================*/
extern v_BOOL_t hdd_IsEAPOLPacket( vos_pkt_t *pVosPacket );
/**============================================================================
- @brief hdd_mon_tx_mgmt_pkt() - Transmit MGMT packet received on monitor
+ @brief hdd_mon_tx_mgmt_pkt() - Transmit MGMT packet received on monitor
interface.
- @param pAdapter: [in] SAP/P2P GO adapter.
+ @param pAdapter: [in] SAP/P2P GO adapter.
===========================================================================*/
void hdd_mon_tx_mgmt_pkt(hdd_adapter_t* pAdapter);
diff --git a/CORE/HDD/inc/wlan_hdd_version.h b/CORE/HDD/inc/wlan_hdd_version.h
index b79ccaaea495..3c19cc44988a 100644
--- a/CORE/HDD/inc/wlan_hdd_version.h
+++ b/CORE/HDD/inc/wlan_hdd_version.h
@@ -32,13 +32,13 @@
// Description: Miniport driver version information
//
// Author: Larry Cawley
-//
+//
////
//===================================================================
#if !defined( __hddVersion_h__ )
#define __hddVersion_h__
-// force string expansion from chars
+// force string expansion from chars
#define strEXPAND(x) #x
#define strSTRING(x) strEXPAND(x)
#define strVERSION( _mj, _mn, _sfx, _build ) strSTRING(_mj) "." strSTRING(_mn) "." strSTRING(_sfx) "." strSTRING(_build)
@@ -46,38 +46,38 @@
#if defined( BLD_REL )
#define HDD_DRIVER_MAJOR_VERSION BLD_REL
-#else
-#define HDD_DRIVER_MAJOR_VERSION 0
+#else
+#define HDD_DRIVER_MAJOR_VERSION 0
#endif
#if defined( BLD_VER )
#define HDD_DRIVER_MINOR_VERSION BLD_VER
-#else
+#else
#define HDD_DRIVER_MINOR_VERSION 0
#endif
#if defined( BLD_SFX )
-#define HDD_DRIVER_SUFFIX BLD_SFX
+#define HDD_DRIVER_SUFFIX BLD_SFX
#else
#define HDD_DRIVER_SUFFIX 0
-#endif
+#endif
#if defined( BLD_NUM )
#define HDD_DRIVER_BUILD BLD_NUM
-#else
-#define HDD_DRIVER_BUILD 0000
-#endif
-#define HDD_BUILD_DATETIME __DATE__ " " __TIME__
+#else
+#define HDD_DRIVER_BUILD 0000
+#endif
+#define HDD_BUILD_DATETIME __DATE__ " " __TIME__
#define HDD_DRIVER_VERSION WNI_DRIVER_MAJOR_VERSION,WNI_DRIVER_MINOR_VERSION
#define HDD_DRIVER_VERSION_STR strVERSION( WNI_DRIVER_MAJOR_VERSION, WNI_DRIVER_MINOR_VERSION, WNI_DRIVER_SUFFIX, WNI_DRIVER_BUILD )
-
+
#define HDD_COMPANYNAME_FULL "QUALCOMM, Inc."
#define HDD_DRIVER_DESCRIPTION "QUALCOMM Gen6 802.11n Wireless Adapter"
-#define OEM_FILEDESCRIPTION_STR ANI_DRIVER_DESCRIPTION
-
-#define OEM_COMPANYNAME_STR ANI_COMPANYNAME_FULL
+#define OEM_FILEDESCRIPTION_STR ANI_DRIVER_DESCRIPTION
+
+#define OEM_COMPANYNAME_STR ANI_COMPANYNAME_FULL
#define OEM_INTERNALNAME_STR "WLAN_QCT_DRV.dll"
#define OEM_INTERNALNAME_STR2 "WLAN_QCT_DRV.dll"
diff --git a/CORE/HDD/inc/wlan_hdd_wext.h b/CORE/HDD/inc/wlan_hdd_wext.h
index 85c4b3426d1d..2db90c6735b3 100644
--- a/CORE/HDD/inc/wlan_hdd_wext.h
+++ b/CORE/HDD/inc/wlan_hdd_wext.h
@@ -125,7 +125,7 @@ typedef enum
// TSPEC revoked by AP, async
HDD_WLAN_WMM_STATUS_LOST = 18,
// some internal failure like memory allocation failure, etc, sync
- HDD_WLAN_WMM_STATUS_INTERNAL_FAILURE = 19,
+ HDD_WLAN_WMM_STATUS_INTERNAL_FAILURE = 19,
// U-APSD failed during setup but OTA setup (whether TSPEC exchnage or
// re-assoc) was done so app should release this QoS, async
@@ -164,27 +164,27 @@ typedef enum
/** Disable 11d */
#define DISABLE_11D 0
-/*
+/*
refer wpa.h in wpa supplicant code for REASON_MICHAEL_MIC_FAILURE
- supplicant sets REASON_MICHAEL_MIC_FAILURE as the reason code when it sends the MLME deauth IOCTL
+ supplicant sets REASON_MICHAEL_MIC_FAILURE as the reason code when it sends the MLME deauth IOCTL
for TKIP counter measures
*/
#define HDD_REASON_MICHAEL_MIC_FAILURE 14
-/*
+/*
* These are for TLV fields in WPS IE
*/
-#define HDD_WPS_UUID_LEN 16
-#define HDD_WPS_ELEM_VERSION 0x104a
-#define HDD_WPS_ELEM_REQUEST_TYPE 0x103a
-#define HDD_WPS_ELEM_CONFIG_METHODS 0x1008
-#define HDD_WPS_ELEM_UUID_E 0x1047
-#define HDD_WPS_ELEM_PRIMARY_DEVICE_TYPE 0x1054
-#define HDD_WPS_ELEM_RF_BANDS 0x103c
-#define HDD_WPS_ELEM_ASSOCIATION_STATE 0x1002
+#define HDD_WPS_UUID_LEN 16
+#define HDD_WPS_ELEM_VERSION 0x104a
+#define HDD_WPS_ELEM_REQUEST_TYPE 0x103a
+#define HDD_WPS_ELEM_CONFIG_METHODS 0x1008
+#define HDD_WPS_ELEM_UUID_E 0x1047
+#define HDD_WPS_ELEM_PRIMARY_DEVICE_TYPE 0x1054
+#define HDD_WPS_ELEM_RF_BANDS 0x103c
+#define HDD_WPS_ELEM_ASSOCIATION_STATE 0x1002
#define HDD_WPS_ELEM_CONFIGURATION_ERROR 0x1009
-#define HDD_WPS_ELEM_DEVICE_PASSWORD_ID 0x1012
+#define HDD_WPS_ELEM_DEVICE_PASSWORD_ID 0x1012
#define HDD_WPA_ELEM_VENDOR_EXTENSION 0x1049
@@ -197,12 +197,12 @@ typedef enum
#define HDD_WPS_ELEM_WPS_STATE 0x1044
#define HDD_WPS_ELEM_APSETUPLOCK 0x1057
-#define HDD_WPS_ELEM_SELECTEDREGISTRA 0x1041
+#define HDD_WPS_ELEM_SELECTEDREGISTRA 0x1041
#define HDD_WPS_ELEM_RSP_TYPE 0x103B
#define HDD_WPS_ELEM_MANUFACTURER 0x1021
#define HDD_WPS_ELEM_MODEL_NAME 0x1023
#define HDD_WPS_ELEM_MODEL_NUM 0x1024
-#define HDD_WPS_ELEM_SERIAL_NUM 0x1042
+#define HDD_WPS_ELEM_SERIAL_NUM 0x1042
#define HDD_WPS_ELEM_DEVICE_NAME 0x1011
#define HDD_WPS_ELEM_REGISTRA_CONF_METHODS 0x1053
@@ -247,35 +247,35 @@ typedef enum
WEXT_SCAN_PENDING_MAX
} hdd_scan_pending_option_e;
-/*
- * This structure contains the interface level (granularity)
- * configuration information in support of wireless extensions.
+/*
+ * This structure contains the interface level (granularity)
+ * configuration information in support of wireless extensions.
*/
-typedef struct hdd_wext_state_s
+typedef struct hdd_wext_state_s
{
/** The CSR "desired" Profile */
- tCsrRoamProfile roamProfile;
+ tCsrRoamProfile roamProfile;
/** BSSID to which connect request is received */
tCsrBssid req_bssId;
- /** The association status code */
+ /** The association status code */
v_U32_t statusCode;
/** wpa version WPA/WPA2/None*/
- v_S31_t wpaVersion;
-
+ v_S31_t wpaVersion;
+
/**WPA or RSN IE*/
- u_int8_t WPARSNIE[MAX_WPA_RSN_IE_LEN];
+ u_int8_t WPARSNIE[MAX_WPA_RSN_IE_LEN];
/**gen IE */
tSirAddie genIE;
/**Additional IE for assoc */
- tSirAddie assocAddIE;
-
+ tSirAddie assocAddIE;
+
/**auth key mgmt */
- v_S31_t authKeyMgmt;
+ v_S31_t authKeyMgmt;
/**vos event */
vos_event_t vosevent;
@@ -283,7 +283,7 @@ typedef struct hdd_wext_state_s
vos_event_t scanevent;
/**Counter measure state, Started/Stopped*/
- v_BOOL_t mTKIPCounterMeasures;
+ v_BOOL_t mTKIPCounterMeasures;
/**Completion Variable*/
struct completion completion_var;
@@ -330,7 +330,7 @@ extern int hdd_wlan_get_frag_threshold(hdd_adapter_t *pAdapter,
extern void hdd_wlan_get_version(hdd_adapter_t *pAdapter,
union iwreq_data *wrqu, char *extra);
-extern int iw_get_scan(struct net_device *dev,
+extern int iw_get_scan(struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu, char *extra);
@@ -340,11 +340,11 @@ extern int iw_set_scan(struct net_device *dev, struct iw_request_info *info,
extern int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
union iwreq_data *wrqu, char *extra);
-extern int iw_set_essid(struct net_device *dev,
+extern int iw_set_essid(struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu, char *extra);
-extern int iw_get_essid(struct net_device *dev,
+extern int iw_get_essid(struct net_device *dev,
struct iw_request_info *info,
struct iw_point *dwrq, char *extra);
@@ -386,7 +386,7 @@ void hdd_GetClassA_statisticsCB(void *pStats, void *pContext);
VOS_STATUS wlan_hdd_check_ula_done(hdd_adapter_t *pAdapter);
-v_U8_t* wlan_hdd_get_vendor_oui_ie_ptr(v_U8_t *oui, v_U8_t oui_size,
+v_U8_t* wlan_hdd_get_vendor_oui_ie_ptr(v_U8_t *oui, v_U8_t oui_size,
v_U8_t *ie, int ie_len);
VOS_STATUS wlan_hdd_enter_bmps(hdd_adapter_t *pAdapter, int mode);
@@ -421,4 +421,3 @@ void* wlan_hdd_change_country_code_callback(void *pAdapter);
VOS_STATUS wlan_hdd_set_powersave(hdd_adapter_t *pAdapter, int mode);
#endif // __WEXT_IW_H__
-
diff --git a/CORE/HDD/inc/wlan_hdd_wmm.h b/CORE/HDD/inc/wlan_hdd_wmm.h
index 9b9ed5a16f0e..c2400ecaca66 100644
--- a/CORE/HDD/inc/wlan_hdd_wmm.h
+++ b/CORE/HDD/inc/wlan_hdd_wmm.h
@@ -86,7 +86,7 @@ typedef enum
HDD_LINUX_AC_BK = 3
} hdd_wmm_linuxac_t;
-
+
/*! @brief types of classification supported
*/
typedef enum
@@ -201,7 +201,7 @@ typedef struct
} hdd_wmm_status_t;
extern const v_U8_t hdd_QdiscAcToTlAC[];
-extern const v_U8_t hddWmmUpToAcMap[];
+extern const v_U8_t hddWmmUpToAcMap[];
extern const v_U8_t hddLinuxUpToAcMap[];
/**============================================================================
@@ -362,7 +362,7 @@ v_BOOL_t hdd_wmm_is_active( hdd_adapter_t* pAdapter );
@param handle : [in] handle to uniquely identify a TS
@param pTspec : [in] pointer to the traffic spec
- @return : HDD_WLAN_WMM_STATUS_*
+ @return : HDD_WLAN_WMM_STATUS_*
===========================================================================*/
hdd_wlan_wmm_status_e hdd_wmm_addts( hdd_adapter_t* pAdapter,
v_U32_t handle,
@@ -375,7 +375,7 @@ hdd_wlan_wmm_status_e hdd_wmm_addts( hdd_adapter_t* pAdapter,
@param pAdapter : [in] pointer to adapter context
@param handle : [in] handle to uniquely identify a TS
- @return : HDD_WLAN_WMM_STATUS_*
+ @return : HDD_WLAN_WMM_STATUS_*
===========================================================================*/
hdd_wlan_wmm_status_e hdd_wmm_delts( hdd_adapter_t* pAdapter,
v_U32_t handle );
@@ -387,7 +387,7 @@ hdd_wlan_wmm_status_e hdd_wmm_delts( hdd_adapter_t* pAdapter,
@param pAdapter : [in] pointer to adapter context
@param handle : [in] handle to uniquely identify a TS
- @return : HDD_WLAN_WMM_STATUS_*
+ @return : HDD_WLAN_WMM_STATUS_*
===========================================================================*/
hdd_wlan_wmm_status_e hdd_wmm_checkts( hdd_adapter_t* pAdapter,
v_U32_t handle );
diff --git a/CORE/HDD/inc/wlan_hdd_wowl.h b/CORE/HDD/inc/wlan_hdd_wowl.h
index 842acbb222c9..d6eab9ff18d9 100644
--- a/CORE/HDD/inc/wlan_hdd_wowl.h
+++ b/CORE/HDD/inc/wlan_hdd_wowl.h
@@ -31,8 +31,8 @@
/*============================================================================
@file wlan_hdd_wowl.h
- This module houses all the logic for WOWL in HDD.
-
+ This module houses all the logic for WOWL in HDD.
+
It provides the following APIs
- Ability to enable/disable following WoWL modes
@@ -40,12 +40,12 @@
2) Pattern Byte Matching (PBM) mode
- Ability to add/remove patterns for PBM
- A Magic Packet is a packet that contains 6 0xFFs followed by 16 contiguous
+ A Magic Packet is a packet that contains 6 0xFFs followed by 16 contiguous
copies of the receiving NIC's Ethernet address. There is no API to configure
Magic Packet Pattern.
Wakeup pattern (used for PBM) is defined as following:
- typedef struct
+ typedef struct
{
U8 PatternSize; // Non-Zero pattern size
U8 PatternMaskSize; // Non-zero pattern mask size
@@ -54,19 +54,19 @@
} hdd_wowl_ptrn_t;
PatternSize and PatternMaskSize indicate size of the variable length Pattern
- and PatternMask. PatternMask indicates which bytes of an incoming packet
+ and PatternMask. PatternMask indicates which bytes of an incoming packet
should be compared with corresponding bytes in the pattern.
- Maximum allowed pattern size is 128 bytes. Maximum allowed PatternMaskSize
- is 16 bytes.
+ Maximum allowed pattern size is 128 bytes. Maximum allowed PatternMaskSize
+ is 16 bytes.
Maximum number of patterns that can be configured is 8
HDD will add following 2 commonly used patterns for PBM by default:
1) ARP Broadcast Pattern
2) Unicast Pattern
-
- However note that WoWL will not be enabled by default by HDD. WoWL needs to
+
+ However note that WoWL will not be enabled by default by HDD. WoWL needs to
enabled explcitly by exercising the iwpriv command.
HDD will expose an API that accepts patterns as Hex string in the following
@@ -87,13 +87,13 @@
Mangement frames are not subjected to WoWL filtering and are discarded when
WoWL is enabled.
- Whenever a patern match succeeds, RX path is restored and packets (both
- management and data) will be pushed to the host from that point onwards.
- Therefore, exit from WoWL is implicit and happens automatically when the
+ Whenever a patern match succeeds, RX path is restored and packets (both
+ management and data) will be pushed to the host from that point onwards.
+ Therefore, exit from WoWL is implicit and happens automatically when the
first packet match succeeds.
WoWL works on top of BMPS. So when WoWL is requested, SME will attempt to put
- the device in BMPS mode (if not already in BMPS). If attempt to BMPS fails,
+ the device in BMPS mode (if not already in BMPS). If attempt to BMPS fails,
request for WoWL will be rejected.
============================================================================*/
@@ -193,7 +193,7 @@ v_BOOL_t hdd_exit_wowl (hdd_adapter_t*pAdapter);
/**============================================================================
@brief hdd_init_wowl() - Init function which will initialize the WoWL module
- and perform any required intial configuration
+ and perform any required intial configuration
@return : FALSE if any errors encountered
: TRUE otherwise
diff --git a/CORE/HDD/inc/wlan_qct_driver.h b/CORE/HDD/inc/wlan_qct_driver.h
index c42a23d68be8..31c30706b9c7 100644
--- a/CORE/HDD/inc/wlan_qct_driver.h
+++ b/CORE/HDD/inc/wlan_qct_driver.h
@@ -48,9 +48,9 @@
$Header:$ $DateTime: $ $Author: $
- when who what, where, why
+ when who what, where, why
-------- --- --------------------------------------------------------
- 04/05/09 kanand Created module.
+ 04/05/09 kanand Created module.
===========================================================================*/
@@ -65,16 +65,16 @@
#include <linux/cdev.h>
#include <linux/time.h>
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
* Preprocessor definitions and constants
- *-------------------------------------------------------------------------*/
+ *-------------------------------------------------------------------------*/
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
* Type declarations
- *-------------------------------------------------------------------------*/
+ *-------------------------------------------------------------------------*/
-/*-------------------------------------------------------------------------
+/*-------------------------------------------------------------------------
* Function declarations and documentation
* ------------------------------------------------------------------------*/
-
+
#endif // if !defined __WLAN_QCT_DRIVER_H
diff --git a/CORE/HDD/src/bap_hdd_main.c b/CORE/HDD/src/bap_hdd_main.c
index 4a3bea88204a..9d2f08ba87a3 100644
--- a/CORE/HDD/src/bap_hdd_main.c
+++ b/CORE/HDD/src/bap_hdd_main.c
@@ -479,7 +479,7 @@ static VOS_STATUS WLANBAP_STAFetchPktCB
{
VOS_TRACE( VOS_MODULE_ID_BAP, VOS_TRACE_LEVEL_ERROR, "WLANBAP_STAFetchPktCB vos_pkt_wrap_data_packet "
"failed status =%d\n", VosStatus );
- kfree_skb(skb);
+ kfree_skb(skb);
return VosStatus;
}
@@ -496,7 +496,7 @@ static VOS_STATUS WLANBAP_STAFetchPktCB
// return the packet
VosStatus = vos_pkt_return_packet( pVosPkt );
- kfree_skb(skb);
+ kfree_skb(skb);
VOS_ASSERT(VOS_IS_STATUS_SUCCESS( VosStatus ));
return VosStatus;
@@ -573,14 +573,14 @@ static VOS_STATUS WLANBAP_STARxCB
// get the pointer to the next packet in the chain
// (but don't unlink the packet since we free the entire chain later)
VosStatus = vos_pkt_walk_packet_chain( pVosPacket, &pNextVosPacket, VOS_FALSE);
-
+
// both "success" and "empty" are acceptable results
if (!((VosStatus == VOS_STATUS_SUCCESS) || (VosStatus == VOS_STATUS_E_EMPTY)))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,"%s: Failure walking packet chain", __func__);
return VOS_STATUS_E_FAILURE;
}
-
+
// process the packet
VosStatus = WLANBAP_XlateRxDataPkt( ppctx->bapHdl, pctx->PhyLinkHdl,
&Ac, pVosPacket );
@@ -613,7 +613,7 @@ static VOS_STATUS WLANBAP_STARxCB
bt_cb(skb)->pkt_type = HCI_ACLDATA_PKT;
//skb->protocol = eth_type_trans(skb, skb->dev);
//skb->ip_summed = CHECKSUM_UNNECESSARY;
-
+
// This is my receive skb pointer
gpBslctx->rx_skb = skb;
@@ -622,7 +622,7 @@ static VOS_STATUS WLANBAP_STARxCB
// now process the next packet in the chain
pVosPacket = pNextVosPacket;
-
+
} while (pVosPacket);
@@ -874,13 +874,13 @@ static VOS_STATUS WLANBAP_EventCB
if ( pHddHdl == NULL )
{
- /* Consider the following error scenarios to bypass the NULL check:
- - create LL without a call for create PL before
- - delete LL or PL when no AMP connection has been established yet
- Client context is unimportant from HCI point of view, only needed by the TLV API in BAP
- TODO: Change the TLV APIs to not to carry the client context; it doesn't use it anyway
+ /* Consider the following error scenarios to bypass the NULL check:
+ - create LL without a call for create PL before
+ - delete LL or PL when no AMP connection has been established yet
+ Client context is unimportant from HCI point of view, only needed by the TLV API in BAP
+ TODO: Change the TLV APIs to not to carry the client context; it doesn't use it anyway
*/
- if (( AssocSpecificEvent ) &&
+ if (( AssocSpecificEvent ) &&
(BTAMP_TLV_HCI_PHYSICAL_LINK_COMPLETE_EVENT != pBapHCIEvent->bapHCIEventCode) &&
(BTAMP_TLV_HCI_DISCONNECT_PHYSICAL_LINK_COMPLETE_EVENT != pBapHCIEvent->bapHCIEventCode))
{
@@ -1514,9 +1514,9 @@ static VOS_STATUS WLANBAP_EventCB
return(VOS_STATUS_SUCCESS);
} // WLANBAP_EventCB()
-static VOS_STATUS
+static VOS_STATUS
WLANBAP_PhyLinkFailure
-(
+(
BslClientCtxType* pctx,
v_U8_t phy_link_handle
)
@@ -1524,13 +1524,13 @@ WLANBAP_PhyLinkFailure
VOS_STATUS vosStatus;
tBtampHCI_Event bapHCIEvent;
- /* Format the Physical Link Complete event to return... */
+ /* Format the Physical Link Complete event to return... */
bapHCIEvent.bapHCIEventCode = BTAMP_TLV_HCI_PHYSICAL_LINK_COMPLETE_EVENT;
bapHCIEvent.u.btampPhysicalLinkCompleteEvent.present = 1;
bapHCIEvent.u.btampPhysicalLinkCompleteEvent.status = WLANBAP_ERROR_UNSPECIFIED_ERROR;
- bapHCIEvent.u.btampPhysicalLinkCompleteEvent.phy_link_handle
+ bapHCIEvent.u.btampPhysicalLinkCompleteEvent.phy_link_handle
= phy_link_handle;
- bapHCIEvent.u.btampPhysicalLinkCompleteEvent.ch_number
+ bapHCIEvent.u.btampPhysicalLinkCompleteEvent.ch_number
= 0;
//TBD: Could be a cleaner way to get the PhyLinkCtx handle; For now works
BslPhyLinkCtx[0].pClientCtx = pctx;
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 092d08643ca9..ae94218d5c52 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -102,7 +102,7 @@
#define MAX_HT_MCS_IDX 8
#define MAX_VHT_MCS_IDX 10
#define GET_IE_LEN_IN_BSS_DESC(lenInBss) ( lenInBss + sizeof(lenInBss) - \
- ((int) OFFSET_OF( tSirBssDescription, ieFields)))
+ ((uintptr_t)OFFSET_OF( tSirBssDescription, ieFields)))
#define HDD2GHZCHAN(freq, chan, flag) { \
.band = IEEE80211_BAND_2GHZ, \
@@ -9933,7 +9933,7 @@ int wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy,
INIT_COMPLETION(pScanInfo->abortscan_event_var);
hdd_abort_mac_scan(pHddCtx, pAdapter->sessionId);
- status = wait_for_completion_interruptible_timeout(
+ status = wait_for_completion_timeout(
&pScanInfo->abortscan_event_var,
msecs_to_jiffies(WLAN_WAIT_TIME_ABORTSCAN));
if (!status)
@@ -9953,13 +9953,13 @@ int wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy,
hdd_suspend_wlan(&wlan_hdd_cfg80211_ready_to_suspend, pHddCtx);
- rc = wait_for_completion_interruptible_timeout(&pHddCtx->ready_to_suspend,
+ rc = wait_for_completion_timeout(&pHddCtx->ready_to_suspend,
msecs_to_jiffies(WLAN_WAIT_TIME_READY_TO_SUSPEND));
if (!rc)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Failed to get ready to suspend", __func__);
- return -ETIME;
+ goto resume_tx;
}
/* Suspend MC thread */
@@ -9967,37 +9967,55 @@ int wlan_hdd_cfg80211_suspend_wlan(struct wiphy *wiphy,
wake_up_interruptible(&vosSchedContext->mcWaitQueue);
/* Wait for suspend confirmation from MC thread */
- rc = wait_for_completion_interruptible_timeout(&pHddCtx->mc_sus_event_var,
+ rc = wait_for_completion_timeout(&pHddCtx->mc_sus_event_var,
msecs_to_jiffies(WLAN_WAIT_TIME_MCTHREAD_SUSPEND));
if (!rc)
{
clear_bit(MC_SUSPEND_EVENT_MASK, &vosSchedContext->mcEventFlag);
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Failed to stop mc thread", __func__);
- return -ETIME;
+ goto resume_tx;
}
pHddCtx->isMcThreadSuspended = TRUE;
#endif
- pHddCtx->isWiphySuspended = TRUE;
#ifdef QCA_CONFIG_SMP
/* Suspend tlshim rx thread */
set_bit(RX_SUSPEND_EVENT_MASK, &vosSchedContext->tlshimRxEvtFlg);
wake_up_interruptible(&vosSchedContext->tlshimRxWaitQueue);
- rc = wait_for_completion_interruptible_timeout(
+ rc = wait_for_completion_timeout(
&vosSchedContext->SuspndTlshimRxEvent,
msecs_to_jiffies(RX_TLSHIM_SUSPEND_TIMEOUT));
if (!rc) {
clear_bit(RX_SUSPEND_EVENT_MASK, &vosSchedContext->tlshimRxEvtFlg);
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Failed to stop tl_shim rx thread", __func__);
- return -ETIME;
+ goto resume_all;
}
#endif
+ pHddCtx->isWiphySuspended = TRUE;
+
EXIT();
return 0;
+
+#ifdef QCA_CONFIG_SMP
+resume_all:
+
+#ifdef QCA_WIFI_2_0
+ complete(&vosSchedContext->ResumeMcEvent);
+ pHddCtx->isMcThreadSuspended = FALSE;
+#endif
+#endif
+
+#ifdef QCA_WIFI_2_0
+resume_tx:
+
+ hdd_resume_wlan();
+ return -ETIME;
+#endif
+
}
/* cfg80211_ops */
@@ -10071,4 +10089,3 @@ static struct cfg80211_ops wlan_hdd_cfg80211_ops =
#endif
.dump_survey = wlan_hdd_cfg80211_dump_survey,
};
-
diff --git a/CORE/HDD/src/wlan_hdd_debugfs.c b/CORE/HDD/src/wlan_hdd_debugfs.c
index 98b791deeb7f..bc9d0e81be3f 100644
--- a/CORE/HDD/src/wlan_hdd_debugfs.c
+++ b/CORE/HDD/src/wlan_hdd_debugfs.c
@@ -471,4 +471,3 @@ void hdd_debugfs_exit(hdd_context_t *pHddCtx)
debugfs_remove_recursive(pHddCtx->debugfs_phy);
}
#endif /* #ifdef WLAN_OPEN_SOURCE */
-
diff --git a/CORE/HDD/src/wlan_hdd_dev_pwr.c b/CORE/HDD/src/wlan_hdd_dev_pwr.c
index 73c1d8baaa80..30b01fc2b84e 100644
--- a/CORE/HDD/src/wlan_hdd_dev_pwr.c
+++ b/CORE/HDD/src/wlan_hdd_dev_pwr.c
@@ -25,21 +25,21 @@
* to the Linux Foundation.
*/
-/**=========================================================================
-
- EDIT HISTORY FOR FILE
-
-
- This section contains comments describing changes made to the module.
- Notice that changes are listed in reverse chronological order.
-
-
- $Header:$ $DateTime: $ $Author: $
-
-
- when who what, where, why
+/**=========================================================================
+
+ EDIT HISTORY FOR FILE
+
+
+ This section contains comments describing changes made to the module.
+ Notice that changes are listed in reverse chronological order.
+
+
+ $Header:$ $DateTime: $ $Author: $
+
+
+ when who what, where, why
-------- --- --------------------------------------------------------
- 03/29/11 tbh Created module.
+ 03/29/11 tbh Created module.
==========================================================================*/
@@ -121,7 +121,7 @@ static int wlan_suspend(hdd_context_t* pHddCtx)
}
/*
- Suspending MC Thread, Rx Thread and Tx Thread as the platform driver is going to Suspend.
+ Suspending MC Thread, Rx Thread and Tx Thread as the platform driver is going to Suspend.
*/
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: Suspending Mc, Rx and Tx Threads",__func__);
@@ -206,7 +206,7 @@ static int wlan_suspend(hdd_context_t* pHddCtx)
/* Set the Mc Thread as Suspended */
pHddCtx->isMcThreadSuspended = TRUE;
-
+
/* Set the Station state as Suspended */
pHddCtx->isWlanSuspended = TRUE;
@@ -316,7 +316,7 @@ int hddDevSuspendHdlr(struct device *dev)
/*----------------------------------------------------------------------------
@brief Function to resume the wlan driver.
- This function will get called by platform driver Resume on System Resume
+ This function will get called by platform driver Resume on System Resume
@param dev platform_func_device
@@ -360,7 +360,7 @@ static const struct dev_pm_ops pm_ops = {
*
@brief Registration function.
- Register suspend, resume callback functions with platform driver.
+ Register suspend, resume callback functions with platform driver.
@param hdd_context_t pHddCtx
Global hdd context
@@ -408,7 +408,7 @@ VOS_STATUS hddDeregisterPmOps(hdd_context_t *pHddCtx)
@param dev : Device context
changedTmLevel : Changed new TM level
- @return
+ @return
----------------------------------------------------------------------------*/
void hddDevTmLevelChangedHandler(struct device *dev, int changedTmLevel)
@@ -475,7 +475,7 @@ void hddDevTmLevelChangedHandler(struct device *dev, int changedTmLevel)
if (hdd_connIsConnected(WLAN_HDD_GET_STATION_CTX_PTR(staAdapater)))
{
sme_RoamDisconnect(pHddCtx->hHal,
- staAdapater->sessionId,
+ staAdapater->sessionId,
eCSR_DISCONNECT_REASON_UNSPECIFIED);
}
}
@@ -561,7 +561,7 @@ VOS_STATUS hddDevTmRegisterNotifyCallback(hdd_context_t *pHddCtx)
/* Set Default TM Level as Lowest, do nothing */
pHddCtx->tmInfo.currentTmLevel = WLAN_HDD_TM_LEVEL_0;
- vos_mem_zero(&pHddCtx->tmInfo.tmAction, sizeof(hdd_tmLevelAction_t));
+ vos_mem_zero(&pHddCtx->tmInfo.tmAction, sizeof(hdd_tmLevelAction_t));
vos_timer_init(&pHddCtx->tmInfo.txSleepTimer,
VOS_TIMER_TYPE_SW,
hddDevTmTxBlockTimeoutHandler,
diff --git a/CORE/HDD/src/wlan_hdd_dp_utils.c b/CORE/HDD/src/wlan_hdd_dp_utils.c
index c6fdca5e8728..a58d068fd58a 100644
--- a/CORE/HDD/src/wlan_hdd_dp_utils.c
+++ b/CORE/HDD/src/wlan_hdd_dp_utils.c
@@ -43,11 +43,11 @@
/**-----------------------------------------------------------------------------
Preprocessor definitions and constants
----------------------------------------------------------------------------*/
-
+
/**-----------------------------------------------------------------------------
Type declarations
----------------------------------------------------------------------------*/
-
+
/**-----------------------------------------------------------------------------
Function declarations and documenation
----------------------------------------------------------------------------*/
@@ -83,7 +83,7 @@ VOS_STATUS hdd_list_remove_front( hdd_list_t *pList, hdd_list_node_t **ppNode )
{
return VOS_STATUS_E_EMPTY;
}
-
+
listptr = pList->anchor.next;
*ppNode = listptr;
list_del(pList->anchor.next);
@@ -121,7 +121,7 @@ VOS_STATUS hdd_list_remove_node( hdd_list_t *pList,
}
// verify that pNodeToRemove is indeed part of list pList
- list_for_each(tmp, &pList->anchor)
+ list_for_each(tmp, &pList->anchor)
{
if (tmp == pNodeToRemove)
{
@@ -132,7 +132,7 @@ VOS_STATUS hdd_list_remove_node( hdd_list_t *pList,
if (found == 0)
return VOS_STATUS_E_INVAL;
- list_del(pNodeToRemove);
+ list_del(pNodeToRemove);
pList->count--;
return VOS_STATUS_SUCCESS;
@@ -158,7 +158,7 @@ VOS_STATUS hdd_list_peek_next( hdd_list_t *pList, hdd_list_node_t *pNode,
struct list_head * listptr;
int found = 0;
hdd_list_node_t *tmp;
-
+
if ( ( pList == NULL) || ( pNode == NULL) || (ppNode == NULL))
{
return VOS_STATUS_E_FAULT;
@@ -170,7 +170,7 @@ VOS_STATUS hdd_list_peek_next( hdd_list_t *pList, hdd_list_node_t *pNode,
}
// verify that pNode is indeed part of list pList
- list_for_each(tmp, &pList->anchor)
+ list_for_each(tmp, &pList->anchor)
{
if (tmp == pNode)
{
@@ -219,4 +219,3 @@ VOS_STATUS hdd_string_to_hex( char *pSrcMac, int length, char *pDescMac )
return VOS_STATUS_SUCCESS;
}
-
diff --git a/CORE/HDD/src/wlan_hdd_early_suspend.c b/CORE/HDD/src/wlan_hdd_early_suspend.c
index b7034d827650..efe694160e30 100644
--- a/CORE/HDD/src/wlan_hdd_early_suspend.c
+++ b/CORE/HDD/src/wlan_hdd_early_suspend.c
@@ -119,7 +119,7 @@ void hdd_suspend_standby_cbk (void *callbackContext, eHalStatus status)
{
hdd_context_t *pHddCtx = (hdd_context_t*)callbackContext;
hddLog(VOS_TRACE_LEVEL_INFO, "%s: Standby status = %d", __func__, status);
- g_standby_status = status;
+ g_standby_status = status;
if(eHAL_STATUS_SUCCESS == status)
{
@@ -153,7 +153,7 @@ void hdd_suspend_full_pwr_callback(void *callbackContext, eHalStatus status)
}
eHalStatus hdd_exit_standby(hdd_context_t *pHddCtx)
-{
+{
eHalStatus status = VOS_STATUS_SUCCESS;
hddLog(VOS_TRACE_LEVEL_INFO, "%s: WLAN being resumed from standby",__func__);
@@ -166,7 +166,7 @@ eHalStatus hdd_exit_standby(hdd_context_t *pHddCtx)
if(status == eHAL_STATUS_PMC_PENDING)
{
//Block on a completion variable. Can't wait forever though
- wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
+ wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_FULL_PWR));
status = g_full_pwr_status;
if(g_full_pwr_status != eHAL_STATUS_SUCCESS)
@@ -207,20 +207,20 @@ VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx)
//Note we do not disable queues unnecessarily. Queues should already be disabled
//if STA is disconnected or the queue will be disabled as and when disconnect
//happens because of standby procedure.
-
+
//Ensure that device is in full power first. There is scope for optimization
//here especially in scenarios where PMC is already in IMPS or REQUEST_IMPS.
//Core s/w needs to be optimized to handle this. Until then we request full
//power before issuing request for standby.
INIT_COMPLETION(pHddCtx->full_pwr_comp_var);
g_full_pwr_status = eHAL_STATUS_FAILURE;
- halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
+ halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
pHddCtx, eSME_FULL_PWR_NEEDED_BY_HDD);
if(halStatus == eHAL_STATUS_PMC_PENDING)
{
//Block on a completion variable. Can't wait forever though
- wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
+ wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_FULL_PWR));
if(g_full_pwr_status != eHAL_STATUS_SUCCESS)
{
@@ -253,10 +253,10 @@ VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx)
g_standby_status = eHAL_STATUS_FAILURE;
halStatus = sme_RequestStandby(pHddCtx->hHal, hdd_suspend_standby_cbk, pHddCtx);
- if (halStatus == eHAL_STATUS_PMC_PENDING)
+ if (halStatus == eHAL_STATUS_PMC_PENDING)
{
//Wait till WLAN device enters standby mode
- wait_for_completion_timeout(&pHddCtx->standby_comp_var,
+ wait_for_completion_timeout(&pHddCtx->standby_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_STANDBY));
if (g_standby_status != eHAL_STATUS_SUCCESS && g_standby_status != eHAL_STATUS_PMC_NOT_NOW)
{
@@ -308,13 +308,13 @@ VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
//Ensure that device is in full power as we will touch H/W during vos_Stop
INIT_COMPLETION(pHddCtx->full_pwr_comp_var);
g_full_pwr_status = eHAL_STATUS_FAILURE;
- halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
+ halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
pHddCtx, eSME_FULL_PWR_NEEDED_BY_HDD);
if(halStatus == eHAL_STATUS_PMC_PENDING)
{
//Block on a completion variable. Can't wait forever though
- wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
+ wait_for_completion_interruptible_timeout(&pHddCtx->full_pwr_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_FULL_PWR));
if(g_full_pwr_status != eHAL_STATUS_SUCCESS){
hddLog(VOS_TRACE_LEVEL_FATAL,"%s: sme_RequestFullPower failed",__func__);
@@ -336,7 +336,7 @@ VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
if(halStatus == eHAL_STATUS_SUCCESS)
{
//Block on a completion variable. Can't wait forever though.
- wait_for_completion_interruptible_timeout(&pAdapter->disconnect_comp_var,
+ wait_for_completion_interruptible_timeout(&pAdapter->disconnect_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_DISCONNECT));
}
@@ -390,7 +390,7 @@ VOS_STATUS hdd_exit_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
goto err_deep_sleep;
}
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: calling vos_start",__func__);
vosStatus = vos_start( pHddCtx->pvosContext );
VOS_ASSERT( VOS_IS_STATUS_SUCCESS( vosStatus ) );
@@ -401,7 +401,7 @@ VOS_STATUS hdd_exit_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
goto err_deep_sleep;
}
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: calling hdd_post_voss_start_config",__func__);
vosStatus = hdd_post_voss_start_config( pHddCtx );
VOS_ASSERT( VOS_IS_STATUS_SUCCESS( vosStatus ) );
@@ -1188,7 +1188,7 @@ void hdd_unregister_mcast_bcast_filter(hdd_context_t *pHddCtx)
return;
}
- if (WLAN_MAP_SUSPEND_TO_MCAST_BCAST_FILTER ==
+ if (WLAN_MAP_SUSPEND_TO_MCAST_BCAST_FILTER ==
pHddCtx->cfg_ini->nEnableSuspend)
{
if(!pHddCtx->cfg_ini->enablePowersaveOffload)
@@ -1304,7 +1304,7 @@ void hdd_resume_wlan(void)
hddLog(VOS_TRACE_LEVEL_FATAL,"%s: HDD context is Null",__func__);
return;
}
-
+
if (pHddCtx->isLogpInProgress) {
hddLog(VOS_TRACE_LEVEL_INFO,
"%s: Ignore resume wlan, LOGP in progress!", __func__);
@@ -1328,8 +1328,8 @@ void hdd_resume_wlan(void)
}
-#ifdef SUPPORT_EARLY_SUSPEND_STANDBY_DEEPSLEEP
- if(pHddCtx->hdd_ps_state == eHDD_SUSPEND_DEEP_SLEEP)
+#ifdef SUPPORT_EARLY_SUSPEND_STANDBY_DEEPSLEEP
+ if(pHddCtx->hdd_ps_state == eHDD_SUSPEND_DEEP_SLEEP)
{
hddLog(VOS_TRACE_LEVEL_INFO, "%s: WLAN being resumed from deep sleep",__func__);
hdd_exit_deep_sleep(pAdapter);
@@ -1339,7 +1339,7 @@ void hdd_resume_wlan(void)
if(pHddCtx->hdd_ignore_dtim_enabled == TRUE)
{
/*Switch back to DTIM 1*/
- tSirSetPowerParamsReq powerRequest = { 0 };
+ tSirSetPowerParamsReq powerRequest = { 0 };
powerRequest.uIgnoreDTIM = pHddCtx->hdd_actual_ignore_DTIM_value;
powerRequest.uListenInterval = pHddCtx->hdd_actual_LI_value;
@@ -1352,10 +1352,10 @@ void hdd_resume_wlan(void)
/* Update ignoreDTIM and ListedInterval in CFG with default values */
ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_IGNORE_DTIM, powerRequest.uIgnoreDTIM,
NULL, eANI_BOOLEAN_FALSE);
- ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LISTEN_INTERVAL, powerRequest.uListenInterval,
+ ccmCfgSetInt(pHddCtx->hHal, WNI_CFG_LISTEN_INTERVAL, powerRequest.uListenInterval,
NULL, eANI_BOOLEAN_FALSE);
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"Switch to DTIM%d \n",powerRequest.uListenInterval);
sme_SetPowerParams( WLAN_HDD_GET_HAL_CTX(pAdapter), &powerRequest, FALSE);
@@ -1382,25 +1382,25 @@ void hdd_resume_wlan(void)
pAdapterNode = pNext;
}
-#ifdef SUPPORT_EARLY_SUSPEND_STANDBY_DEEPSLEEP
- if(pHddCtx->hdd_ps_state == eHDD_SUSPEND_STANDBY)
+#ifdef SUPPORT_EARLY_SUSPEND_STANDBY_DEEPSLEEP
+ if(pHddCtx->hdd_ps_state == eHDD_SUSPEND_STANDBY)
{
hdd_exit_standby(pHddCtx);
- }
+ }
#endif
return;
}
-VOS_STATUS hdd_wlan_reset_initialization(void)
+VOS_STATUS hdd_wlan_reset_initialization(void)
{
v_CONTEXT_t pVosContext = NULL;
- hddLog(VOS_TRACE_LEVEL_FATAL, "%s: WLAN being reset",__func__);
+ hddLog(VOS_TRACE_LEVEL_FATAL, "%s: WLAN being reset",__func__);
//Get the global VOSS context.
pVosContext = vos_get_global_context(VOS_MODULE_ID_SYS, NULL);
- if(!pVosContext)
+ if(!pVosContext)
{
hddLog(VOS_TRACE_LEVEL_FATAL,"%s: Global VOS context is Null", __func__);
return VOS_STATUS_E_FAILURE;
diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c
index cae84263f45a..5c42dac519bd 100644
--- a/CORE/HDD/src/wlan_hdd_hostapd.c
+++ b/CORE/HDD/src/wlan_hdd_hostapd.c
@@ -1577,9 +1577,11 @@ static iw_softap_setparam(struct net_device *dev,
tsap_Config_t *pConfig =
&pHostapdAdapter->sessionCtx.ap.sapConfig;
- if (pConfig->SapHw_mode != eSAP_DOT11_MODE_11ac ||
+ if (pConfig->SapHw_mode != eSAP_DOT11_MODE_11ac &&
pConfig->SapHw_mode != eSAP_DOT11_MODE_11ac_ONLY) {
- hddLog(VOS_TRACE_LEVEL_ERROR, "Not valid mode for VHT");
+ hddLog(VOS_TRACE_LEVEL_ERROR,
+ "%s: SET_VHT_RATE error: SapHw_mode= 0x%x, ch = %d",
+ __func__, pConfig->SapHw_mode, pConfig->channel);
ret = -EIO;
break;
}
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index a23c6f612b56..47b0999bd012 100644
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -317,7 +317,7 @@ static int hdd_netdev_notifier_call(struct notifier_block * nb,
case NETDEV_GOING_DOWN:
if( pAdapter->scan_info.mScanPending != FALSE )
- {
+ {
int result;
INIT_COMPLETION(pAdapter->scan_info.abortscan_event_var);
hdd_abort_mac_scan(pAdapter->pHddCtx, pAdapter->sessionId);
@@ -381,7 +381,7 @@ static int con_mode;
* con_mode is changed by userspace to indicate a mode change which will
* result in calling the module exit and init functions. The module
* exit function will clean up based on the value of con_mode prior to it
- * being changed by userspace. So curr_con_mode records the current con_mode
+ * being changed by userspace. So curr_con_mode records the current con_mode
* for exit when con_mode becomes the next mode for init
*/
static int curr_con_mode;
@@ -2321,13 +2321,13 @@ int hdd_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
"%s: HDD adapter context is Null", __func__);
ret = -ENODEV;
- goto exit;
+ goto exit;
}
if ((!ifr) || (!ifr->ifr_data))
{
ret = -EINVAL;
- goto exit;
+ goto exit;
}
if ((WLAN_HDD_GET_CTX(pAdapter))->isLogpInProgress)
@@ -5768,13 +5768,13 @@ int hdd_open (struct net_device *dev)
VOS_STATUS status;
v_BOOL_t in_standby = TRUE;
- if (NULL == pAdapter)
+ if (NULL == pAdapter)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
"%s: HDD adapter context is Null", __func__);
return -ENODEV;
}
-
+
pHddCtx = (hdd_context_t*)pAdapter->pHddCtx;
if (NULL == pHddCtx)
{
@@ -5799,19 +5799,19 @@ int hdd_open (struct net_device *dev)
pAdapterNode = pNext;
}
}
-
+
if (TRUE == in_standby)
{
if (VOS_STATUS_SUCCESS != wlan_hdd_exit_lowpower(pHddCtx, pAdapter))
{
- hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Failed to bring "
+ hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Failed to bring "
"wlan out of power save", __func__);
return -EINVAL;
}
}
-
+
set_bit(DEVICE_IFACE_OPENED, &pAdapter->event_flags);
- if (hdd_connIsConnected(WLAN_HDD_GET_STATION_CTX_PTR(pAdapter)))
+ if (hdd_connIsConnected(WLAN_HDD_GET_STATION_CTX_PTR(pAdapter)))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: Enabling Tx Queues", __func__);
@@ -5855,7 +5855,7 @@ int hdd_stop (struct net_device *dev)
hdd_adapter_list_node_t *pAdapterNode = NULL, *pNext = NULL;
VOS_STATUS status;
v_BOOL_t enter_standby = TRUE;
-
+
ENTER();
if (NULL == pAdapter)
@@ -5911,7 +5911,7 @@ int hdd_stop (struct net_device *dev)
if (TRUE == enter_standby)
{
- hddLog(VOS_TRACE_LEVEL_INFO, "%s: All Interfaces are Down "
+ hddLog(VOS_TRACE_LEVEL_INFO, "%s: All Interfaces are Down "
"entering standby", __func__);
if (VOS_STATUS_SUCCESS != wlan_hdd_enter_lowpower(pHddCtx))
{
@@ -5920,7 +5920,7 @@ int hdd_stop (struct net_device *dev)
"wlan in power save", __func__);
}
}
-
+
EXIT();
return 0;
}
@@ -6005,7 +6005,7 @@ VOS_STATUS hdd_release_firmware(char *pFileName,v_VOID_t *pCtx)
if (!strcmp(WLAN_FW_FILE, pFileName)) {
-
+
hddLog(VOS_TRACE_LEVEL_INFO_HIGH,"%s: Loaded firmware file is %s",__func__,pFileName);
if(pHddCtx->fw) {
@@ -6253,7 +6253,7 @@ static int hdd_set_mac_address(struct net_device *dev, void *addr)
memcpy(&pAdapter->macAddressCurrent, psta_mac_addr->sa_data, ETH_ALEN);
-#ifdef HDD_SESSIONIZE
+#ifdef HDD_SESSIONIZE
// set the MAC address though the STA ID CFG.
halStatus = ccmCfgSetStr( pAdapter->hHal, WNI_CFG_STA_ID,
(v_U8_t *)&pAdapter->macAddressCurrent,
@@ -6292,7 +6292,7 @@ void wlan_hdd_release_intf_addr(hdd_context_t* pHddCtx, tANI_U8* releaseAddr)
{
pHddCtx->cfg_ini->intfAddrMask &= ~(1 << i);
break;
- }
+ }
}
return;
}
@@ -6320,7 +6320,7 @@ void wlan_hdd_release_intf_addr(hdd_context_t* pHddCtx, tANI_U8* releaseAddr)
.ndo_open = hdd_mon_open,
.ndo_stop = hdd_stop,
.ndo_uninit = hdd_uninit,
- .ndo_start_xmit = hdd_mon_hard_start_xmit,
+ .ndo_start_xmit = hdd_mon_hard_start_xmit,
.ndo_tx_timeout = hdd_tx_timeout,
.ndo_get_stats = hdd_stats,
.ndo_do_ioctl = hdd_ioctl,
@@ -6355,9 +6355,9 @@ static hdd_adapter_t* hdd_alloc_station_adapter( hdd_context_t *pHddCtx, tSirMac
hdd_adapter_t *pAdapter = NULL;
/*
* cfg80211 initialization and registration....
- */
+ */
pWlanDev = alloc_netdev_mq(sizeof( hdd_adapter_t ), name, ether_setup, NUM_TX_QUEUES);
-
+
if(pWlanDev != NULL)
{
@@ -6367,7 +6367,7 @@ static hdd_adapter_t* hdd_alloc_station_adapter( hdd_context_t *pHddCtx, tSirMac
vos_mem_zero( pAdapter, sizeof( hdd_adapter_t ) );
pAdapter->dev = pWlanDev;
- pAdapter->pHddCtx = pHddCtx;
+ pAdapter->pHddCtx = pHddCtx;
pAdapter->magic = WLAN_HDD_ADAPTER_MAGIC;
init_completion(&pAdapter->session_open_comp_var);
@@ -6411,7 +6411,7 @@ static hdd_adapter_t* hdd_alloc_station_adapter( hdd_context_t *pHddCtx, tSirMac
vos_event_init(&pAdapter->scan_info.scan_finished_event);
pAdapter->scan_info.scan_pending_option = WEXT_SCAN_PENDING_GIVEUP;
- pAdapter->isLinkUpSvcNeeded = FALSE;
+ pAdapter->isLinkUpSvcNeeded = FALSE;
pAdapter->higherDtimTransition = eANI_BOOLEAN_TRUE;
//Init the net_device structure
strlcpy(pWlanDev->name, name, IFNAMSIZ);
@@ -6434,7 +6434,7 @@ static hdd_adapter_t* hdd_alloc_station_adapter( hdd_context_t *pHddCtx, tSirMac
pWlanDev->destructor = free_netdev;
pWlanDev->ieee80211_ptr = &pAdapter->wdev ;
- pAdapter->wdev.wiphy = pHddCtx->wiphy;
+ pAdapter->wdev.wiphy = pHddCtx->wiphy;
pAdapter->wdev.netdev = pWlanDev;
/* set pWlanDev's parent to underlying device */
SET_NETDEV_DEV(pWlanDev, pHddCtx->parent_dev);
@@ -6456,13 +6456,13 @@ VOS_STATUS hdd_register_interface( hdd_adapter_t *pAdapter, tANI_U8 rtnl_lock_he
if( dev_alloc_name(pWlanDev, pWlanDev->name) < 0 )
{
hddLog(VOS_TRACE_LEVEL_ERROR,"%s:Failed:dev_alloc_name",__func__);
- return VOS_STATUS_E_FAILURE;
+ return VOS_STATUS_E_FAILURE;
}
}
if (register_netdevice(pWlanDev))
{
hddLog(VOS_TRACE_LEVEL_ERROR,"%s:Failed:register_netdev",__func__);
- return VOS_STATUS_E_FAILURE;
+ return VOS_STATUS_E_FAILURE;
}
}
else
@@ -6470,7 +6470,7 @@ VOS_STATUS hdd_register_interface( hdd_adapter_t *pAdapter, tANI_U8 rtnl_lock_he
if(register_netdev(pWlanDev))
{
hddLog(VOS_TRACE_LEVEL_ERROR,"%s: Failed:register_netdev",__func__);
- return VOS_STATUS_E_FAILURE;
+ return VOS_STATUS_E_FAILURE;
}
}
set_bit(NET_DEVICE_REGISTERED, &pAdapter->event_flags);
@@ -6555,7 +6555,7 @@ VOS_STATUS hdd_init_station_mode( hdd_adapter_t *pAdapter )
status = VOS_STATUS_E_FAILURE;
goto error_sme_open;
}
-
+
//Block on a completion variable. Can't wait forever though.
rc = wait_for_completion_interruptible_timeout(
&pAdapter->session_open_comp_var,
@@ -6893,7 +6893,7 @@ VOS_STATUS hdd_enable_bmps_imps(hdd_context_t *pHddCtx)
if(pHddCtx->cfg_ini->fIsAutoBmpsTimerEnabled)
{
- sme_StartAutoBmpsTimer(pHddCtx->hHal);
+ sme_StartAutoBmpsTimer(pHddCtx->hHal);
}
if (pHddCtx->cfg_ini->fIsImpsEnabled)
@@ -6911,7 +6911,7 @@ VOS_STATUS hdd_disable_bmps_imps(hdd_context_t *pHddCtx, tANI_U8 session_type)
VOS_STATUS status = VOS_STATUS_E_INVAL;
v_BOOL_t disableBmps = FALSE;
v_BOOL_t disableImps = FALSE;
-
+
switch(session_type)
{
case WLAN_HDD_INFRA_STATION:
@@ -7138,7 +7138,7 @@ hdd_adapter_t* hdd_open_adapter( hdd_context_t *pHddCtx, tANI_U8 session_type,
if( NULL == pAdapter )
return NULL;
- pAdapter->wdev.iftype = NL80211_IFTYPE_MONITOR;
+ pAdapter->wdev.iftype = NL80211_IFTYPE_MONITOR;
pAdapter->device_mode = session_type;
status = hdd_register_interface( pAdapter, rtnl_held );
#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,29)
@@ -7150,11 +7150,11 @@ hdd_adapter_t* hdd_open_adapter( hdd_context_t *pHddCtx, tANI_U8 session_type,
hdd_init_tx_rx( pAdapter );
set_bit(INIT_TX_RX_SUCCESS, &pAdapter->event_flags);
//Set adapter to be used for data tx. It will use either GO or softap.
- pAdapter->sessionCtx.monitor.pAdapterForTx =
+ pAdapter->sessionCtx.monitor.pAdapterForTx =
hdd_get_adapter(pAdapter->pHddCtx, WLAN_HDD_SOFTAP);
if (NULL == pAdapter->sessionCtx.monitor.pAdapterForTx)
{
- pAdapter->sessionCtx.monitor.pAdapterForTx =
+ pAdapter->sessionCtx.monitor.pAdapterForTx =
hdd_get_adapter(pAdapter->pHddCtx, WLAN_HDD_P2P_GO);
}
/* This workqueue will be used to transmit management packet over
@@ -7197,7 +7197,7 @@ hdd_adapter_t* hdd_open_adapter( hdd_context_t *pHddCtx, tANI_U8 session_type,
if( VOS_STATUS_SUCCESS == status )
{
- //Add it to the hdd's session list.
+ //Add it to the hdd's session list.
pHddAdapterNode = vos_mem_malloc( sizeof( hdd_adapter_list_node_t ) );
if( NULL == pHddAdapterNode )
{
@@ -7206,7 +7206,7 @@ hdd_adapter_t* hdd_open_adapter( hdd_context_t *pHddCtx, tANI_U8 session_type,
else
{
pHddAdapterNode->pAdapter = pAdapter;
- status = hdd_add_adapter_back ( pHddCtx,
+ status = hdd_add_adapter_back ( pHddCtx,
pHddAdapterNode );
}
}
@@ -7216,7 +7216,7 @@ hdd_adapter_t* hdd_open_adapter( hdd_context_t *pHddCtx, tANI_U8 session_type,
if( NULL != pAdapter )
{
hdd_cleanup_adapter( pHddCtx, pAdapter, rtnl_held );
- pAdapter = NULL;
+ pAdapter = NULL;
}
if( NULL != pHddAdapterNode )
{
@@ -7317,8 +7317,8 @@ VOS_STATUS hdd_close_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter,
return VOS_STATUS_SUCCESS;
/* If there is a single session of STA/P2P client, re-enable BMPS */
- if ((!vos_concurrent_sessions_running()) &&
- ((pHddCtx->no_of_sessions[VOS_STA_MODE] >= 1) ||
+ if ((!vos_concurrent_sessions_running()) &&
+ ((pHddCtx->no_of_sessions[VOS_STA_MODE] >= 1) ||
(pHddCtx->no_of_sessions[VOS_P2P_CLIENT_MODE] >= 1)))
{
if (pHddCtx->hdd_wlan_suspended)
@@ -7350,7 +7350,7 @@ VOS_STATUS hdd_close_all_adapters( hdd_context_t *pHddCtx )
vos_mem_free( pHddAdapterNode );
}
}while( NULL != pHddAdapterNode && VOS_STATUS_E_EMPTY != status );
-
+
EXIT();
return VOS_STATUS_SUCCESS;
@@ -7406,7 +7406,7 @@ VOS_STATUS hdd_stop_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
eCSR_DISCONNECT_REASON_IBSS_LEAVE);
else
halStatus = sme_RoamDisconnect(pHddCtx->hHal,
- pAdapter->sessionId,
+ pAdapter->sessionId,
eCSR_DISCONNECT_REASON_UNSPECIFIED);
//success implies disconnect command got queued up successfully
if(halStatus == eHAL_STATUS_SUCCESS)
@@ -7424,16 +7424,16 @@ VOS_STATUS hdd_stop_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
hdd_abort_mac_scan(pHddCtx, pAdapter->sessionId);
}
- if (test_bit(SME_SESSION_OPENED, &pAdapter->event_flags))
+ if (test_bit(SME_SESSION_OPENED, &pAdapter->event_flags))
{
INIT_COMPLETION(pAdapter->session_close_comp_var);
if (eHAL_STATUS_SUCCESS ==
- sme_CloseSession(pHddCtx->hHal, pAdapter->sessionId,
+ sme_CloseSession(pHddCtx->hHal, pAdapter->sessionId,
hdd_smeCloseSessionCallback, pAdapter))
{
//Block on a completion variable. Can't wait forever though.
wait_for_completion_timeout(
- &pAdapter->session_close_comp_var,
+ &pAdapter->session_close_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_SESSIONOPENCLOSE));
}
}
@@ -7444,7 +7444,7 @@ VOS_STATUS hdd_stop_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
case WLAN_HDD_P2P_GO:
//Any softap specific cleanup here...
mutex_lock(&pHddCtx->sap_lock);
- if (test_bit(SOFTAP_BSS_STARTED, &pAdapter->event_flags))
+ if (test_bit(SOFTAP_BSS_STARTED, &pAdapter->event_flags))
{
VOS_STATUS status;
hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
@@ -7453,11 +7453,11 @@ VOS_STATUS hdd_stop_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
status = WLANSAP_StopBss(pHddCtx->pvosContext);
if (VOS_IS_STATUS_SUCCESS(status))
{
- hdd_hostapd_state_t *pHostapdState =
+ hdd_hostapd_state_t *pHostapdState =
WLAN_HDD_GET_HOSTAP_STATE_PTR(pAdapter);
status = vos_wait_single_event(&pHostapdState->vosEvent, 10000);
-
+
if (!VOS_IS_STATUS_SUCCESS(status))
{
hddLog(LOGE, "%s: failure waiting for WLANSAP_StopBss",
@@ -7643,7 +7643,7 @@ VOS_STATUS hdd_start_all_adapters( hdd_context_t *pHddCtx )
hdd_init_station_mode(pAdapter);
/* Open the gates for HDD to receive Wext commands */
- pAdapter->isLinkUpSvcNeeded = FALSE;
+ pAdapter->isLinkUpSvcNeeded = FALSE;
pAdapter->scan_info.mScanPending = FALSE;
pAdapter->scan_info.waitScanResult = FALSE;
@@ -7663,7 +7663,7 @@ VOS_STATUS hdd_start_all_adapters( hdd_context_t *pHddCtx )
/* indicate disconnected event to nl80211 */
cfg80211_disconnected(pAdapter->dev, WLAN_REASON_UNSPECIFIED,
- NULL, 0, GFP_KERNEL);
+ NULL, 0, GFP_KERNEL);
}
else if (eConnectionState_Connecting == connState)
{
@@ -7742,11 +7742,11 @@ VOS_STATUS hdd_reconnect_all_adapters( hdd_context_t *pHddCtx )
&pAdapter->disconnect_comp_var,
msecs_to_jiffies(WLAN_WAIT_TIME_DISCONNECT));
- pWextState->roamProfile.csrPersona = pAdapter->device_mode;
+ pWextState->roamProfile.csrPersona = pAdapter->device_mode;
pHddCtx->isAmpAllowed = VOS_FALSE;
sme_RoamConnect(pHddCtx->hHal,
pAdapter->sessionId, &(pWextState->roamProfile),
- &roamId);
+ &roamId);
}
status = hdd_get_next_adapter ( pHddCtx, pAdapterNode, &pNext );
@@ -7943,7 +7943,7 @@ hdd_adapter_t * hdd_get_adapter_by_macaddr( hdd_context_t *pHddCtx,
return NULL;
-}
+}
hdd_adapter_t * hdd_get_adapter_by_name( hdd_context_t *pHddCtx, tANI_U8 *name )
{
@@ -7968,7 +7968,7 @@ hdd_adapter_t * hdd_get_adapter_by_name( hdd_context_t *pHddCtx, tANI_U8 *name )
return NULL;
-}
+}
hdd_adapter_t * hdd_get_adapter( hdd_context_t *pHddCtx, device_mode_t mode )
{
@@ -7992,7 +7992,7 @@ hdd_adapter_t * hdd_get_adapter( hdd_context_t *pHddCtx, device_mode_t mode )
return NULL;
-}
+}
//Remove this function later
hdd_adapter_t * hdd_get_mon_adapter( hdd_context_t *pHddCtx )
@@ -8018,18 +8018,18 @@ hdd_adapter_t * hdd_get_mon_adapter( hdd_context_t *pHddCtx )
return NULL;
-}
+}
/**---------------------------------------------------------------------------
-
- \brief hdd_set_monitor_tx_adapter() -
+
+ \brief hdd_set_monitor_tx_adapter() -
This API initializes the adapter to be used while transmitting on monitor
- adapter.
-
+ adapter.
+
\param - pHddCtx - Pointer to the HDD context.
pAdapter - Adapter that will used for TX. This can be NULL.
- \return - None.
+ \return - None.
--------------------------------------------------------------------------*/
void wlan_hdd_set_monitor_tx_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
{
@@ -8043,16 +8043,16 @@ void wlan_hdd_set_monitor_tx_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAd
}
}
/**---------------------------------------------------------------------------
-
- \brief hdd_select_queue() -
- This API returns the operating channel of the requested device mode
-
+ \brief hdd_select_queue() -
+
+ This API returns the operating channel of the requested device mode
+
\param - pHddCtx - Pointer to the HDD context.
- mode - Device mode for which operating channel is required
suported modes - WLAN_HDD_INFRA_STATION, WLAN_HDD_P2P_CLIENT
WLAN_HDD_SOFTAP, WLAN_HDD_P2P_GO.
- \return - channel number. "0" id the requested device is not found OR it is not connected.
+ \return - channel number. "0" id the requested device is not found OR it is not connected.
--------------------------------------------------------------------------*/
v_U8_t hdd_get_operating_channel( hdd_context_t *pHddCtx, device_mode_t mode )
{
@@ -8072,14 +8072,14 @@ v_U8_t hdd_get_operating_channel( hdd_context_t *pHddCtx, device_mode_t mode )
switch(pAdapter->device_mode)
{
case WLAN_HDD_INFRA_STATION:
- case WLAN_HDD_P2P_CLIENT:
+ case WLAN_HDD_P2P_CLIENT:
if( hdd_connIsConnected( WLAN_HDD_GET_STATION_CTX_PTR( pAdapter )) )
operatingChannel = (WLAN_HDD_GET_STATION_CTX_PTR(pAdapter))->conn_info.operationChannel;
break;
case WLAN_HDD_SOFTAP:
case WLAN_HDD_P2P_GO:
/*softap connection info */
- if(test_bit(SOFTAP_BSS_STARTED, &pAdapter->event_flags))
+ if(test_bit(SOFTAP_BSS_STARTED, &pAdapter->event_flags))
operatingChannel = (WLAN_HDD_GET_AP_CTX_PTR(pAdapter))->operatingChannel;
break;
default:
@@ -8098,13 +8098,13 @@ v_U8_t hdd_get_operating_channel( hdd_context_t *pHddCtx, device_mode_t mode )
#ifdef WLAN_FEATURE_PACKET_FILTERING
/**---------------------------------------------------------------------------
- \brief hdd_set_multicast_list() -
+ \brief hdd_set_multicast_list() -
This used to set the multicast address list.
\param - dev - Pointer to the WLAN device.
- skb - Pointer to OS packet (sk_buff).
- \return - success/fail
+ \return - success/fail
--------------------------------------------------------------------------*/
static void hdd_set_multicast_list(struct net_device *dev)
@@ -8127,7 +8127,7 @@ static void hdd_set_multicast_list(struct net_device *dev)
"%s: allow all multicast frames", __func__);
pAdapter->mc_addr_list.mc_cnt = 0;
}
- else
+ else
{
mc_count = netdev_mc_count(dev);
hddLog(VOS_TRACE_LEVEL_INFO,
@@ -8148,7 +8148,7 @@ static void hdd_set_multicast_list(struct net_device *dev)
memset(&(pAdapter->mc_addr_list.addr[i][0]), 0, ETH_ALEN);
memcpy(&(pAdapter->mc_addr_list.addr[i][0]), ha->addr, ETH_ALEN);
hddLog(VOS_TRACE_LEVEL_INFO, "\n%s: mlist[%d] = "MAC_ADDRESS_STR,
- __func__, i,
+ __func__, i,
MAC_ADDR_ARRAY(pAdapter->mc_addr_list.addr[i]));
i++;
}
@@ -8158,16 +8158,16 @@ static void hdd_set_multicast_list(struct net_device *dev)
#endif
/**---------------------------------------------------------------------------
-
- \brief hdd_select_queue() -
+
+ \brief hdd_select_queue() -
This function is registered with the Linux OS for network
core to decide which queue to use first.
-
+
\param - dev - Pointer to the WLAN device.
- skb - Pointer to OS packet (sk_buff).
- \return - ac, Queue Index/access category corresponding to UP in IP header
-
+ \return - ac, Queue Index/access category corresponding to UP in IP header
+
--------------------------------------------------------------------------*/
v_U16_t hdd_select_queue(struct net_device *dev,
struct sk_buff *skb)
@@ -8492,7 +8492,7 @@ void hdd_wlan_exit(hdd_context_t *pHddCtx)
// Unregister the Net Device Notifier
unregister_netdevice_notifier(&hdd_netdev_notifier);
-
+
hdd_stop_all_adapters( pHddCtx );
#ifdef WLAN_BTAMP_FEATURE
@@ -8526,8 +8526,8 @@ void hdd_wlan_exit(hdd_context_t *pHddCtx)
//This requires pMac access, Call this before vos_close().
hdd_unregister_mcast_bcast_filter(pHddCtx);
- //Close the scheduler before calling vos_close to make sure no thread is
- // scheduled after the each module close is called i.e after all the data
+ //Close the scheduler before calling vos_close to make sure no thread is
+ // scheduled after the each module close is called i.e after all the data
// structures are freed.
vosStatus = vos_sched_close( pVosContext );
if (!VOS_IS_STATUS_SUCCESS(vosStatus)) {
@@ -8558,7 +8558,8 @@ void hdd_wlan_exit(hdd_context_t *pHddCtx)
nl_srv_exit();
#endif /* WLAN_KD_READY_NOTIFIER */
- /* Cancel the vote for XO Core ON.
+
+ /* Cancel the vote for XO Core ON.
* This is done here to ensure there is no race condition since MC, TX and WD threads have
* exited at this point
*/
@@ -8566,10 +8567,10 @@ void hdd_wlan_exit(hdd_context_t *pHddCtx)
" when WLAN is turned OFF\n");
if (vos_chipVoteXOCore(NULL, NULL, NULL, VOS_FALSE) != VOS_STATUS_SUCCESS)
{
- hddLog(VOS_TRACE_LEVEL_ERROR, "Could not cancel the vote for XO Core ON."
+ hddLog(VOS_TRACE_LEVEL_ERROR, "Could not cancel the vote for XO Core ON."
" Not returning failure."
" Power consumed will be high\n");
- }
+ }
hdd_close_all_adapters( pHddCtx );
@@ -8706,7 +8707,7 @@ static VOS_STATUS hdd_update_config_from_nv(hdd_context_t* pHddCtx)
return VOS_STATUS_E_FAILURE;
}
- if (itemIsValid == VOS_TRUE)
+ if (itemIsValid == VOS_TRUE)
{
hddLog(VOS_TRACE_LEVEL_INFO_HIGH," Reading the Macaddress from NV\n ");
status = vos_nv_readMultiMacAddress((v_U8_t *)&macFromNV[0].bytes[0],
@@ -8917,19 +8918,19 @@ void hdd_exchange_version_and_caps(hdd_context_t *pHddCtx)
pr_info("%s: WCNSS hardware version %s\n",
WLAN_MODULE_NAME, versionString);
- /* 1.Check if FW version is greater than 0.1.1.0. Only then send host-FW capability exchange message
- 2.Host-FW capability exchange message is only present on riva 1.1 so
+ /* 1.Check if FW version is greater than 0.1.1.0. Only then send host-FW capability exchange message
+ 2.Host-FW capability exchange message is only present on riva 1.1 so
send the message only if it the riva is 1.1
minor numbers for different riva branches:
0 -> (1.0)Mainline Build
1 -> (1.1)Mainline Build
2->(1.04) Stability Build
*/
- if (((versionReported.major>0) || (versionReported.minor>1) ||
+ if (((versionReported.major>0) || (versionReported.minor>1) ||
((versionReported.minor>=1) && (versionReported.version>=1)))
&& ((versionReported.major == 1) && (versionReported.minor >= 1)))
fwFeatCapsMsgSupported = 1;
-
+
if (fwFeatCapsMsgSupported)
{
#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
@@ -9206,7 +9207,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
*/
if (0 < wlan_hdd_cfg80211_init(dev, wiphy, pHddCtx->cfg_ini))
{
- hddLog(VOS_TRACE_LEVEL_FATAL,
+ hddLog(VOS_TRACE_LEVEL_FATAL,
"%s: wlan_hdd_cfg80211_init return failure", __func__);
goto err_config;
}
@@ -9455,7 +9456,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
halStatus = cfgSetStr( pHddCtx->hHal, WNI_CFG_STA_ID,
(v_U8_t *)&pHddCtx->cfg_ini->intfMacAddr[0],
sizeof( pHddCtx->cfg_ini->intfMacAddr[0]) );
-
+
if (!HAL_STATUS_SUCCESS( halStatus ))
{
hddLog(VOS_TRACE_LEVEL_ERROR,"%s: Failed to set MAC Address. "
@@ -9484,7 +9485,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
status = hdd_post_voss_start_config( pHddCtx );
if ( !VOS_IS_STATUS_SUCCESS( status ) )
{
- hddLog(VOS_TRACE_LEVEL_FATAL,"%s: hdd_post_voss_start_config failed",
+ hddLog(VOS_TRACE_LEVEL_FATAL,"%s: hdd_post_voss_start_config failed",
__func__);
goto err_vosstop;
}
@@ -9538,7 +9539,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
if (VOS_STA_SAP_MODE == hdd_get_conparam())
{
- pAdapter = hdd_open_adapter( pHddCtx, WLAN_HDD_SOFTAP, "softap.%d",
+ pAdapter = hdd_open_adapter( pHddCtx, WLAN_HDD_SOFTAP, "softap.%d",
wlan_hdd_get_intf_addr(pHddCtx), FALSE );
}
else
@@ -9683,7 +9684,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
#endif
#ifdef FEATURE_WLAN_SCAN_PNO
/*SME must send channel update configuration to RIVA*/
- sme_UpdateChannelConfig(pHddCtx->hHal);
+ sme_UpdateChannelConfig(pHddCtx->hHal);
#endif
/* Register with platform driver as client for Suspend/Resume */
@@ -9694,7 +9695,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
#ifdef WLAN_BTAMP_FEATURE
goto err_bap_stop;
#else
- goto err_close_adapter;
+ goto err_close_adapter;
#endif //WLAN_BTAMP_FEATURE
}
@@ -9773,7 +9774,7 @@ int hdd_wlan_startup(struct device *dev, v_VOID_t *hif_sc)
if (VOS_STA_SAP_MODE != hdd_get_conparam())
{
/* Action frame registered in one adapter which will
- * applicable to all interfaces
+ * applicable to all interfaces
*/
wlan_hdd_cfg80211_post_voss_start(pAdapter);
}
@@ -10503,7 +10504,7 @@ tVOS_CONCURRENCY_MODE hdd_get_concurrency_mode ( void )
return VOS_STA;
}
-/* Decide whether to allow/not the apps power collapse.
+/* Decide whether to allow/not the apps power collapse.
* Allow apps power collapse if we are in connected state.
* if not, allow only if we are in IMPS */
v_BOOL_t hdd_is_apps_power_collapse_allowed(hdd_context_t* pHddCtx)
@@ -10512,8 +10513,8 @@ v_BOOL_t hdd_is_apps_power_collapse_allowed(hdd_context_t* pHddCtx)
tANI_BOOLEAN scanRspPending = csrNeighborRoamScanRspPending(pHddCtx->hHal);
tANI_BOOLEAN inMiddleOfRoaming = csrNeighborMiddleOfRoaming(pHddCtx->hHal);
hdd_config_t *pConfig = pHddCtx->cfg_ini;
- hdd_adapter_list_node_t *pAdapterNode = NULL, *pNext = NULL;
- hdd_adapter_t *pAdapter = NULL;
+ hdd_adapter_list_node_t *pAdapterNode = NULL, *pNext = NULL;
+ hdd_adapter_t *pAdapter = NULL;
VOS_STATUS status;
tVOS_CONCURRENCY_MODE concurrent_state = 0;
@@ -10523,8 +10524,8 @@ v_BOOL_t hdd_is_apps_power_collapse_allowed(hdd_context_t* pHddCtx)
concurrent_state = hdd_get_concurrency_mode();
#ifdef WLAN_ACTIVEMODE_OFFLOAD_FEATURE
- if(((concurrent_state == (VOS_STA | VOS_P2P_CLIENT)) ||
- (concurrent_state == (VOS_STA | VOS_P2P_GO))) &&
+ if(((concurrent_state == (VOS_STA | VOS_P2P_CLIENT)) ||
+ (concurrent_state == (VOS_STA | VOS_P2P_GO))) &&
(IS_ACTIVEMODE_OFFLOAD_FEATURE_ENABLE))
return TRUE;
#endif
@@ -10617,7 +10618,7 @@ void wlan_hdd_clear_concurrency_mode(hdd_context_t *pHddCtx, tVOS_CON_MODE mode)
* \param - pHddCtx
*
* \return - None
- *
+ *
* --------------------------------------------------------------------------*/
static void wlan_hdd_restart_init(hdd_context_t *pHddCtx)
@@ -10625,8 +10626,8 @@ static void wlan_hdd_restart_init(hdd_context_t *pHddCtx)
/* Initialize */
pHddCtx->hdd_restart_retries = 0;
atomic_set(&pHddCtx->isRestartInProgress, 0);
- vos_timer_init(&pHddCtx->hdd_restart_timer,
- VOS_TIMER_TYPE_SW,
+ vos_timer_init(&pHddCtx->hdd_restart_timer,
+ VOS_TIMER_TYPE_SW,
wlan_hdd_restart_timer_cb,
pHddCtx);
}
@@ -10639,12 +10640,12 @@ static void wlan_hdd_restart_init(hdd_context_t *pHddCtx)
* \param - pHddCtx
*
* \return - None
- *
+ *
* --------------------------------------------------------------------------*/
static void wlan_hdd_restart_deinit(hdd_context_t* pHddCtx)
{
-
+
VOS_STATUS vos_status;
/* Block any further calls */
atomic_set(&pHddCtx->isRestartInProgress, 1);
@@ -10676,18 +10677,18 @@ static void wlan_hdd_restart_deinit(hdd_context_t* pHddCtx)
* --------------------------------------------------------------------------*/
-static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
+static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
hdd_adapter_list_node_t *pAdapterNode = NULL, *pNext = NULL;
int len = (sizeof (struct ieee80211_mgmt));
- struct ieee80211_mgmt *mgmt = NULL;
-
+ struct ieee80211_mgmt *mgmt = NULL;
+
/* Prepare the DEAUTH managment frame with reason code */
mgmt = kzalloc(len, GFP_KERNEL);
- if(mgmt == NULL)
+ if(mgmt == NULL)
{
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
"%s: memory allocation failed (%d bytes)", __func__, len);
return VOS_STATUS_E_NOMEM;
}
@@ -10695,30 +10696,30 @@ static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
/* Iterate over all adapters/devices */
status = hdd_get_front_adapter ( pHddCtx, &pAdapterNode );
- do
+ do
{
- if( (status == VOS_STATUS_SUCCESS) &&
- pAdapterNode &&
+ if( (status == VOS_STATUS_SUCCESS) &&
+ pAdapterNode &&
pAdapterNode->pAdapter)
{
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
"restarting the driver(intf:\'%s\' mode:%d :try %d)",
pAdapterNode->pAdapter->dev->name,
pAdapterNode->pAdapter->device_mode,
pHddCtx->hdd_restart_retries + 1);
- /*
+ /*
* CFG80211 event to restart the driver
- *
- * 'cfg80211_send_unprot_deauth' sends a
- * NL80211_CMD_UNPROT_DEAUTHENTICATE event to supplicant at any state
+ *
+ * 'cfg80211_send_unprot_deauth' sends a
+ * NL80211_CMD_UNPROT_DEAUTHENTICATE event to supplicant at any state
* of SME(Linux Kernel) state machine.
*
* Reason code WLAN_REASON_DISASSOC_LOW_ACK is currently used to restart
* the driver.
*
*/
-
- cfg80211_send_unprot_deauth(pAdapterNode->pAdapter->dev, (u_int8_t*)mgmt, len );
+
+ cfg80211_send_unprot_deauth(pAdapterNode->pAdapter->dev, (u_int8_t*)mgmt, len );
}
status = hdd_get_next_adapter ( pHddCtx, pAdapterNode, &pNext );
pAdapterNode = pNext;
@@ -10729,7 +10730,7 @@ static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
kfree(mgmt);
/* Retry until we unload or reach max count */
- if(++pHddCtx->hdd_restart_retries < WLAN_HDD_RESTART_RETRY_MAX_CNT)
+ if(++pHddCtx->hdd_restart_retries < WLAN_HDD_RESTART_RETRY_MAX_CNT)
vos_timer_start(&pHddCtx->hdd_restart_timer, WLAN_HDD_RESTART_RETRY_DELAY_MS);
return status;
@@ -10744,7 +10745,7 @@ static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
* \param - User data:
*
* \return - None
- *
+ *
* --------------------------------------------------------------------------*/
void wlan_hdd_restart_timer_cb(v_PVOID_t usrDataForCallback)
@@ -10760,8 +10761,8 @@ void wlan_hdd_restart_timer_cb(v_PVOID_t usrDataForCallback)
*
* \brief wlan_hdd_restart_driver
*
- * This function sends an event to supplicant to restart the WLAN driver.
- *
+ * This function sends an event to supplicant to restart the WLAN driver.
+ *
* This function is called from vos_wlanRestart.
*
* \param - pHddCtx
@@ -10771,14 +10772,14 @@ void wlan_hdd_restart_timer_cb(v_PVOID_t usrDataForCallback)
* VOS_STATUS_E_ALREADY: Request already in progress
* --------------------------------------------------------------------------*/
-VOS_STATUS wlan_hdd_restart_driver(hdd_context_t *pHddCtx)
+VOS_STATUS wlan_hdd_restart_driver(hdd_context_t *pHddCtx)
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
/* A tight check to make sure reentrancy */
if(atomic_xchg(&pHddCtx->isRestartInProgress, 1))
{
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
"%s: WLAN restart is already in progress", __func__);
return VOS_STATUS_E_ALREADY;
@@ -10787,7 +10788,7 @@ VOS_STATUS wlan_hdd_restart_driver(hdd_context_t *pHddCtx)
#ifdef HAVE_WCNSS_RESET_INTR
wcnss_reset_intr();
#endif
-
+
return status;
}
diff --git a/CORE/HDD/src/wlan_hdd_mib.c b/CORE/HDD/src/wlan_hdd_mib.c
index 0ba779319172..2c161ec6b03f 100644
--- a/CORE/HDD/src/wlan_hdd_mib.c
+++ b/CORE/HDD/src/wlan_hdd_mib.c
@@ -41,19 +41,19 @@ static inline VOS_STATUS mibSetDot11DesiredBssType( hdd_adapter_t *pAdapter, eMi
v_BOOL_t mibIsDot11DesiredBssTypeInfrastructure( hdd_adapter_t *pAdapter )
{
- eMib_dot11DesiredBssType mibDot11DesiredBssType;
+ eMib_dot11DesiredBssType mibDot11DesiredBssType;
mibGetDot11DesiredBssType( pAdapter, &mibDot11DesiredBssType );
-
- return( eMib_dot11DesiredBssType_infrastructure == mibDot11DesiredBssType );
+
+ return( eMib_dot11DesiredBssType_infrastructure == mibDot11DesiredBssType );
}
static inline v_BOOL_t mibIsDot11DesiredBssTypeIndependent( hdd_adapter_t *pAdapter )
{
- eMib_dot11DesiredBssType mibDot11DesiredBssType;
+ eMib_dot11DesiredBssType mibDot11DesiredBssType;
mibGetDot11DesiredBssType( pAdapter, &mibDot11DesiredBssType );
-
- return( eMib_dot11DesiredBssType_independent == mibDot11DesiredBssType );
+
+ return( eMib_dot11DesiredBssType_independent == mibDot11DesiredBssType );
}
static inline v_VOID_t mibGetDot11IbssJoinOnly( hdd_adapter_t *pAdapter, v_BOOL_t *pdot11IbssJoinOnly )
@@ -73,7 +73,7 @@ static inline VOS_STATUS mibSetDot11NICPowerState( hdd_adapter_t *pAdapter, eMib
VOS_STATUS status = VOS_STATUS_SUCCESS;
pAdapter->hdd_mib.mibDot11NICPowerState = *pMibDot11NICPowerState;
-
+
return( status );
}
@@ -86,7 +86,7 @@ static inline VOS_STATUS mibSetDot11NICPowerStateOff( hdd_adapter_t *pAdapter )
static inline void mibGetDot11NICPowerState( hdd_adapter_t *pAdapter, eMib_dot11NICPowerState *pMibDot11NICPowerState )
{
*pMibDot11NICPowerState = pAdapter->hdd_mib.mibDot11NICPowerState;
-
+
return;
}
@@ -95,7 +95,7 @@ static inline v_BOOL_t mibIsDot11NICPowerStateOn( hdd_adapter_t *pAdapter )
eMib_dot11NICPowerState dot11NICPowerState;
mibGetDot11NICPowerState( pAdapter, &dot11NICPowerState );
-
+
return( eMib_dot11NICPowerState_ON == dot11NICPowerState );
}
@@ -107,18 +107,18 @@ static inline v_BOOL_t mibIsDot11NICPowerStateOff( hdd_adapter_t *pAdapter )
static inline VOS_STATUS mibSetDot11DesiredSsidList( hdd_adapter_t *pAdapter, sMib_dot11DesiredSsidList *pDot11DesiredSsidList )
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
-
+
if ( pDot11DesiredSsidList->cEntries > MIB_DOT11_DESIRED_SSID_LIST_MAX_COUNT )
pAdapter->hdd_mib.mibDot11DesiredSsidList = *pDot11DesiredSsidList ;
-
+
return( status );
}
static inline VOS_STATUS mibSetDot11DesiredBssidList( hdd_adapter_t *pAdapter, sMib_dot11DesiredBssidList *pDot11DesiredBssidList )
-{
+{
pAdapter->hdd_mib.mibDot11DesiredBssidList = *pDot11DesiredBssidList;
-
+
return( VOS_STATUS_SUCCESS );
}
@@ -126,7 +126,7 @@ static inline VOS_STATUS mibSetDot11DesiredBssidList( hdd_adapter_t *pAdapter, s
static inline v_VOID_t mibGetDot11DesiredBssidList( hdd_adapter_t *pAdapter, sMib_dot11DesiredBssidList *pMibDot11DesiredBssidList )
{
*pMibDot11DesiredBssidList = pAdapter->hdd_mib.mibDot11DesiredBssidList;
-
+
return;
}
@@ -134,7 +134,7 @@ static inline v_VOID_t mibGetDot11DesiredBssidList( hdd_adapter_t *pAdapter, sMi
static inline v_VOID_t mibGetDot11DesiredSsidList( hdd_adapter_t *pAdapter, sMib_dot11DesiredSsidList *pMibDot11DesiredSsidList )
{
*pMibDot11DesiredSsidList = pAdapter->hdd_mib.mibDot11DesiredSsidList;
-
+
return;
}
@@ -144,7 +144,7 @@ static inline VOS_STATUS mibSetDot11AutoConfigEnabled( hdd_adapter_t *pAdapter,
VOS_STATUS status = VOS_STATUS_SUCCESS;
pAdapter->hdd_mib.mibDot11AutoConfigEnabled = *pMibDot11AutoConfigEnabled;
-
+
return( status );
}
@@ -152,14 +152,14 @@ static inline VOS_STATUS mibSetDot11AutoConfigEnabled( hdd_adapter_t *pAdapter,
static inline v_VOID_t mibGetDot11AutoConfigEnabled( hdd_adapter_t *pAdapter, eMib_dot11AutoConfigEnabled *pMibDot11AutoConfigEnabled )
{
*pMibDot11AutoConfigEnabled = pAdapter->hdd_mib.mibDot11AutoConfigEnabled;
-
+
return;
}
static inline VOS_STATUS mibSetDot11MacExcludeList( hdd_adapter_t *pAdapter, sMib_dot11MacExcludeList *pDot11MacExcludeList )
{
pAdapter->hdd_mib.mibDot11MacExcludeList = *pDot11MacExcludeList;
-
+
return( VOS_STATUS_SUCCESS );
}
@@ -178,9 +178,9 @@ static inline void mibSetDefaultDot11MacExcludeList( hdd_adapter_t *pAdapter )
static inline VOS_STATUS mibSetDot11HardwarePHYState( hdd_adapter_t *pAdapter, eMib_dot11HardwarePHYState *pMibDot11HardwarePHYState )
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
-
+
pAdapter->hdd_mib.mibDot11HardwarePHYState = *pMibDot11HardwarePHYState;
-
+
return( status );
}
@@ -188,7 +188,7 @@ static inline VOS_STATUS mibSetDot11HardwarePHYState( hdd_adapter_t *pAdapter, e
static inline void mibGetDot11HardwarePHYState( hdd_adapter_t *pAdapter, eMib_dot11HardwarePHYState *pMibDot11HardwarePHYState )
{
*pMibDot11HardwarePHYState = pAdapter->hdd_mib.mibDot11HardwarePHYState;
-
+
return;
}
@@ -201,7 +201,7 @@ static inline void mibSetDefaultDot11PrivacyExemptionList( hdd_adapter_t *pAdapt
static inline void mibGetDot11PowerSavingLevel( hdd_adapter_t *pAdapter, eMib_dot11PowerSavingLevel *pMibDot11PowerSavingLevel )
{
*pMibDot11PowerSavingLevel = pAdapter->hdd_mib.mibDot11PowerSavingLevel;
-
+
return;
}
@@ -212,5 +212,3 @@ static inline void mibGetDevicePowerState( hdd_adapter_t *pAdapter, eMib_DeviceP
return;
}
-
-
diff --git a/CORE/HDD/src/wlan_hdd_oemdata.c b/CORE/HDD/src/wlan_hdd_oemdata.c
index 089307978239..b414b70c9fc9 100644
--- a/CORE/HDD/src/wlan_hdd_oemdata.c
+++ b/CORE/HDD/src/wlan_hdd_oemdata.c
@@ -27,11 +27,11 @@
#ifdef FEATURE_OEM_DATA_SUPPORT
-/*================================================================================
+/*================================================================================
\file wlan_hdd_oemdata.c
-
+
\brief Linux Wireless Extensions for oem data req/rsp
-
+
$Id: wlan_hdd_oemdata.c,v 1.34 2010/04/15 01:49:23 -- VINAY
================================================================================*/
@@ -52,14 +52,14 @@ static struct hdd_context_s *pHddCtx;
/*---------------------------------------------------------------------------------------------
- \brief hdd_OemDataReqCallback() -
+ \brief hdd_OemDataReqCallback() -
This function also reports the results to the user space
\return - 0 for success, non zero for failure
-----------------------------------------------------------------------------------------------*/
-static eHalStatus hdd_OemDataReqCallback(tHalHandle hHal,
+static eHalStatus hdd_OemDataReqCallback(tHalHandle hHal,
void *pContext,
tANI_U32 oemDataReqID,
eOemDataReqStatus oemDataReqStatus)
@@ -90,10 +90,10 @@ static eHalStatus hdd_OemDataReqCallback(tHalHandle hHal,
snprintf(buffer, IW_CUSTOM_MAX, "QCOM: OEM-DATA-REQ-SUCCESS");
//everything went alright
}
-
+
wrqu.data.pointer = buffer;
wrqu.data.length = strlen(buffer);
-
+
wireless_send_event(dev, IWEVCUSTOM, &wrqu, buffer);
return status;
@@ -101,11 +101,11 @@ static eHalStatus hdd_OemDataReqCallback(tHalHandle hHal,
/**--------------------------------------------------------------------------------------------
- \brief iw_get_oem_data_rsp() -
+ \brief iw_get_oem_data_rsp() -
This function gets the oem data response. This invokes
- the respective sme functionality. Function for handling the oem data rsp
- IOCTL
+ the respective sme functionality. Function for handling the oem data rsp
+ IOCTL
\param - dev - Pointer to the net device
- info - Pointer to the iw_oem_data_req
@@ -116,7 +116,7 @@ static eHalStatus hdd_OemDataReqCallback(tHalHandle hHal,
-----------------------------------------------------------------------------------------------*/
int iw_get_oem_data_rsp(
- struct net_device *dev,
+ struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu,
char *extra)
@@ -148,7 +148,7 @@ int iw_get_oem_data_rsp(
if(pSmeOemDataRsp != NULL)
{
pHddOemDataRsp = (struct iw_oem_data_rsp*)(extra);
- vos_mem_copy(pHddOemDataRsp->oemDataRsp, pSmeOemDataRsp->oemDataRsp, OEM_DATA_RSP_SIZE);
+ vos_mem_copy(pHddOemDataRsp->oemDataRsp, pSmeOemDataRsp->oemDataRsp, OEM_DATA_RSP_SIZE);
}
else
{
@@ -167,7 +167,7 @@ int iw_get_oem_data_rsp(
\brief iw_set_oem_data_req()
This function sets the oem data req configuration. This invokes
- the respective sme oem data req functionality. Function for
+ the respective sme oem data req functionality. Function for
handling the set IOCTL for the oem data req configuration
\param - dev - Pointer to the net device
@@ -179,7 +179,7 @@ int iw_get_oem_data_rsp(
-----------------------------------------------------------------------------------------------*/
int iw_set_oem_data_req(
- struct net_device *dev,
+ struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu,
char *extra)
@@ -224,18 +224,18 @@ int iw_set_oem_data_req(
return -EFAULT;
}
- status = sme_OemDataReq(WLAN_HDD_GET_HAL_CTX(pAdapter),
+ status = sme_OemDataReq(WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
- &oemDataReqConfig,
- &oemDataReqID,
- &hdd_OemDataReqCallback,
+ &oemDataReqConfig,
+ &oemDataReqID,
+ &hdd_OemDataReqCallback,
dev);
-
+
pwextBuf->oemDataReqID = oemDataReqID;
pwextBuf->oemDataReqInProgress = TRUE;
} while(0);
-
+
return status;
}
diff --git a/CORE/HDD/src/wlan_hdd_p2p.c b/CORE/HDD/src/wlan_hdd_p2p.c
index 642a067d1fab..0fd41dca1fb1 100644
--- a/CORE/HDD/src/wlan_hdd_p2p.c
+++ b/CORE/HDD/src/wlan_hdd_p2p.c
@@ -97,7 +97,7 @@ static void hdd_wlan_tx_complete( hdd_adapter_t* pAdapter,
tANI_BOOLEAN actionSendSuccess );
static void hdd_sendMgmtFrameOverMonitorIface( hdd_adapter_t *pMonAdapter,
- tANI_U32 nFrameLength,
+ tANI_U32 nFrameLength,
tANI_U8* pbFrames,
tANI_U8 frameType );
@@ -160,7 +160,7 @@ eHalStatus wlan_hdd_remain_on_channel_callback( tHalHandle hHal, void* pCtx,
{
if( cfgState->buf )
{
- hddLog( LOGP,
+ hddLog( LOGP,
"%s: We need to receive yet an ack from one of tx packet",
__func__);
}
@@ -217,22 +217,22 @@ void wlan_hdd_cancel_existing_remain_on_channel(hdd_adapter_t *pAdapter)
{
hddLog( LOG1, "Cancel Existing Remain on Channel");
- /* Wait till remain on channel ready indication before issuing cancel
- * remain on channel request, otherwise if remain on channel not
- * received and if the driver issues cancel remain on channel then lim
+ /* Wait till remain on channel ready indication before issuing cancel
+ * remain on channel request, otherwise if remain on channel not
+ * received and if the driver issues cancel remain on channel then lim
* will be in unknown state.
*/
status = wait_for_completion_interruptible_timeout(&pAdapter->rem_on_chan_ready_event,
msecs_to_jiffies(WAIT_REM_CHAN_READY));
if (!status)
{
- hddLog( LOGE,
+ hddLog( LOGE,
"%s: timeout waiting for remain on channel ready indication",
__func__);
}
INIT_COMPLETION(pAdapter->cancel_rem_on_chan_var);
-
+
/* Issue abort remain on chan request to sme.
* The remain on channel callback will make sure the remain_on_chan
* expired event is sent.
@@ -258,7 +258,7 @@ void wlan_hdd_cancel_existing_remain_on_channel(hdd_adapter_t *pAdapter)
if (!status)
{
- hddLog( LOGE,
+ hddLog( LOGE,
"%s: timeout waiting for cancel remain on channel ready indication",
__func__);
}
@@ -359,7 +359,7 @@ static int wlan_hdd_request_remain_on_channel( struct wiphy *wiphy,
pRemainChanCtx->rem_on_chan_request = request_type;
cfgState->remain_on_chan_ctx = pRemainChanCtx;
cfgState->current_freq = chan->center_freq;
-
+
INIT_COMPLETION(pAdapter->rem_on_chan_ready_event);
//call sme API to start remain on channel.
@@ -532,7 +532,7 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
msecs_to_jiffies(WAIT_REM_CHAN_READY));
if (!status)
{
- hddLog( LOGE,
+ hddLog( LOGE,
"%s: timeout waiting for remain on channel ready indication",
__func__);
}
@@ -546,7 +546,7 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
( WLAN_HDD_P2P_DEVICE == pAdapter->device_mode )
)
{
- tANI_U8 sessionId = pAdapter->sessionId;
+ tANI_U8 sessionId = pAdapter->sessionId;
sme_CancelRemainOnChannel( WLAN_HDD_GET_HAL_CTX( pAdapter ),
sessionId );
}
@@ -557,7 +557,7 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
WLANSAP_CancelRemainOnChannel(
(WLAN_HDD_GET_CTX(pAdapter))->pvosContext);
}
- else
+ else
{
hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Invalid device_mode = %d",
__func__, pAdapter->device_mode);
@@ -685,9 +685,9 @@ int wlan_hdd_action( struct wiphy *wiphy, struct net_device *dev,
{
if (subType == SIR_MAC_MGMT_PROBE_RSP)
{
- /* Drop Probe response recieved from supplicant, as for GO and
+ /* Drop Probe response recieved from supplicant, as for GO and
SAP PE itself sends probe response
- */
+ */
goto err_rem_channel;
}
else if ((subType == SIR_MAC_MGMT_DISASSOC) ||
@@ -883,7 +883,7 @@ int wlan_hdd_action( struct wiphy *wiphy, struct net_device *dev,
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
}
#endif
- }
+ }
if ( (WLAN_HDD_INFRA_STATION == pAdapter->device_mode) ||
(WLAN_HDD_P2P_CLIENT == pAdapter->device_mode) ||
@@ -1041,11 +1041,11 @@ void hdd_sendActionCnf( hdd_adapter_t *pAdapter, tANI_BOOLEAN actionSendSuccess
* hdd_setP2pNoa
*
*FUNCTION:
- * This function is called from hdd_hostapd_ioctl function when Driver
+ * This function is called from hdd_hostapd_ioctl function when Driver
* get P2P_SET_NOA comand from wpa_supplicant using private ioctl
*
*LOGIC:
- * Fill NoA Struct According to P2P Power save Option and Pass it to SME layer
+ * Fill NoA Struct According to P2P Power save Option and Pass it to SME layer
*
*ASSUMPTIONS:
*
@@ -1053,7 +1053,7 @@ void hdd_sendActionCnf( hdd_adapter_t *pAdapter, tANI_BOOLEAN actionSendSuccess
*NOTE:
*
* @param dev Pointer to net device structure
- * @param command Pointer to command
+ * @param command Pointer to command
*
* @return Status
*/
@@ -1101,8 +1101,8 @@ int hdd_setP2pNoa( struct net_device *dev, tANI_U8 *command )
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: P2P_PS_ATTR:oppPS %d ctWindow %d duration %d "
"interval %d count %d single noa duration %d "
- "PsSelection %x \n", __func__, NoA.opp_ps,
- NoA.ctWindow, NoA.duration, NoA.interval,
+ "PsSelection %x \n", __func__, NoA.opp_ps,
+ NoA.ctWindow, NoA.duration, NoA.interval,
NoA.count, NoA.single_noa_duration,
NoA.psSelection);
@@ -1155,23 +1155,23 @@ int hdd_setP2pOpps( struct net_device *dev, tANI_U8 *command )
/* From wpa_cli user need to use separate command to set ctWindow and Opps
* When user want to set ctWindow during that time other parameters
- * values are coming from wpa_supplicant as -1.
- * Example : User want to set ctWindow with 30 then wpa_cli command :
- * P2P_SET ctwindow 30
- * Command Received at hdd_hostapd_ioctl is as below:
+ * values are coming from wpa_supplicant as -1.
+ * Example : User want to set ctWindow with 30 then wpa_cli command :
+ * P2P_SET ctwindow 30
+ * Command Received at hdd_hostapd_ioctl is as below:
* P2P_SET_PS -1 -1 30 (legacy_ps = -1, opp_ps = -1, ctwindow = 30)
- */
+ */
if (ctwindow != -1)
{
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
- "Opportunistic Power Save is %s \n",
+ "Opportunistic Power Save is %s \n",
(TRUE == pAdapter->ops) ? "Enable" : "Disable" );
if (ctwindow != pAdapter->ctw)
{
pAdapter->ctw = ctwindow;
-
+
if(pAdapter->ops)
{
NoA.opp_ps = pAdapter->ops;
@@ -1182,12 +1182,12 @@ int hdd_setP2pOpps( struct net_device *dev, tANI_U8 *command )
NoA.count = 0;
NoA.psSelection = P2P_POWER_SAVE_TYPE_OPPORTUNISTIC;
NoA.sessionid = pAdapter->sessionId;
-
+
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: P2P_PS_ATTR:oppPS %d ctWindow %d duration %d "
"interval %d count %d single noa duration %d "
- "PsSelection %x \n", __func__, NoA.opp_ps,
- NoA.ctWindow, NoA.duration, NoA.interval,
+ "PsSelection %x \n", __func__, NoA.opp_ps,
+ NoA.ctWindow, NoA.duration, NoA.interval,
NoA.count, NoA.single_noa_duration,
NoA.psSelection);
@@ -1201,7 +1201,7 @@ int hdd_setP2pOpps( struct net_device *dev, tANI_U8 *command )
{
pAdapter->ops = opp_ps;
- if ((opp_ps != -1) && (pAdapter->ctw))
+ if ((opp_ps != -1) && (pAdapter->ctw))
{
NoA.opp_ps = opp_ps;
NoA.ctWindow = pAdapter->ctw;
@@ -1215,8 +1215,8 @@ int hdd_setP2pOpps( struct net_device *dev, tANI_U8 *command )
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: P2P_PS_ATTR:oppPS %d ctWindow %d duration %d "
"interval %d count %d single noa duration %d "
- "PsSelection %x \n", __func__, NoA.opp_ps,
- NoA.ctWindow, NoA.duration, NoA.interval,
+ "PsSelection %x \n", __func__, NoA.opp_ps,
+ NoA.ctWindow, NoA.duration, NoA.interval,
NoA.count, NoA.single_noa_duration,
NoA.psSelection);
@@ -1333,7 +1333,7 @@ int wlan_hdd_add_virtual_intf( struct wiphy *wiphy, char *name,
*/
v_MACADDR_t p2pDeviceAddress = pHddCtx->p2pDeviceAddress;
p2pDeviceAddress.bytes[4] ^= 0x80;
- pAdapter = hdd_open_adapter( pHddCtx,
+ pAdapter = hdd_open_adapter( pHddCtx,
wlan_hdd_get_session_type(type),
name, p2pDeviceAddress.bytes,
VOS_TRUE );
@@ -1401,7 +1401,7 @@ int wlan_hdd_del_virtual_intf( struct wiphy *wiphy, struct net_device *dev )
void hdd_sendMgmtFrameOverMonitorIface( hdd_adapter_t *pMonAdapter,
tANI_U32 nFrameLength,
tANI_U8* pbFrames,
- tANI_U8 frameType )
+ tANI_U8 frameType )
{
//Indicate a Frame over Monitor Intf.
int rxstat;
@@ -1468,13 +1468,13 @@ void hdd_sendMgmtFrameOverMonitorIface( hdd_adapter_t *pMonAdapter,
hddLog( LOG1, FL("Success"));
}
else
- hddLog( LOGE, FL("Failed %d"), rxstat);
+ hddLog( LOGE, FL("Failed %d"), rxstat);
return ;
}
void hdd_indicateMgmtFrame( hdd_adapter_t *pAdapter,
- tANI_U32 nFrameLength,
+ tANI_U32 nFrameLength,
tANI_U8* pbFrames,
tANI_U8 frameType,
tANI_U32 rxChan,
@@ -1572,8 +1572,8 @@ void hdd_indicateMgmtFrame( hdd_adapter_t *pAdapter,
}
cfgState = WLAN_HDD_GET_CFG_STATE_PTR( pAdapter );
-
- if ((type == SIR_MAC_MGMT_FRAME) &&
+
+ if ((type == SIR_MAC_MGMT_FRAME) &&
(subType == SIR_MAC_MGMT_ACTION))
{
if(pbFrames[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_PUBLIC_ACTION_FRAME)
@@ -1710,7 +1710,7 @@ static int hdd_wlan_add_rx_radiotap_hdr (
pos++;
put_unaligned_le16(rx_flags, pos);
pos += 2;
-
+
// actually push the data
memcpy(skb_push(skb, rtap_len), &rtap_temp[0], rtap_len);
@@ -1799,4 +1799,3 @@ static void hdd_wlan_tx_complete( hdd_adapter_t* pAdapter,
netif_tx_start_all_queues( pAdapter->dev );
}
-
diff --git a/CORE/HDD/src/wlan_hdd_scan.c b/CORE/HDD/src/wlan_hdd_scan.c
index b61c2f610772..a75fffefd622 100644
--- a/CORE/HDD/src/wlan_hdd_scan.c
+++ b/CORE/HDD/src/wlan_hdd_scan.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -67,8 +67,6 @@
#include <linux/wireless.h>
#include <net/cfg80211.h>
-#define GET_IE_LEN_IN_BSS(lenInBss) ( lenInBss + sizeof(lenInBss) - \
- ((int) OFFSET_OF( tSirBssDescription, ieFields)))
#define WEXT_CSCAN_HEADER "CSCAN S\x01\x00\x00S\x00"
#define WEXT_CSCAN_HEADER_SIZE 12
@@ -482,11 +480,11 @@ static eHalStatus hdd_IndicateScanResult(hdd_scan_info_t *scanInfo, tCsrScanResu
event.u.qual.noise = descriptor->sinr;
/*To keep the rssi icon of the connected AP in the scan window
- *and the rssi icon of the wireless networks in sync */
- if (( eConnectionState_Associated ==
+ *and the rssi icon of the wireless networks in sync */
+ if (( eConnectionState_Associated ==
pAdapter->sessionCtx.station.conn_info.connState ) &&
- ( VOS_TRUE == vos_mem_compare(descriptor->bssId,
- pAdapter->sessionCtx.station.conn_info.bssId,
+ ( VOS_TRUE == vos_mem_compare(descriptor->bssId,
+ pAdapter->sessionCtx.station.conn_info.bssId,
WNI_CFG_BSSID_LEN)))
{
event.u.qual.level = pAdapter->rssi;
@@ -495,7 +493,7 @@ static eHalStatus hdd_IndicateScanResult(hdd_scan_info_t *scanInfo, tCsrScanResu
{
event.u.qual.level = VOS_MIN ((descriptor->rssi + descriptor->sinr), 0);
}
-
+
event.u.qual.updated = IW_QUAL_ALL_UPDATED;
current_event = iwe_stream_add_event(scanInfo->info,current_event,
@@ -550,7 +548,7 @@ static eHalStatus hdd_ScanRequestCallback(tHalHandle halHandle, void *pContext,
union iwreq_data wrqu;
int we_event;
char *msg;
-
+
ENTER();
hddLog(LOGW,"%s called with halHandle = %p, pContext = %p, scanID = %d,"
@@ -624,7 +622,7 @@ int iw_set_scan(struct net_device *dev, struct iw_request_info *info,
#ifdef WLAN_BTAMP_FEATURE
//Scan not supported when AMP traffic is on.
- if( VOS_TRUE == WLANBAP_AmpSessionOn() )
+ if( VOS_TRUE == WLANBAP_AmpSessionOn() )
{
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR, "%s: No scanning when AMP is on",__func__);
return eHAL_STATUS_SUCCESS;
@@ -718,7 +716,7 @@ int iw_set_scan(struct net_device *dev, struct iw_request_info *info,
pwextBuf->roamProfile.pAddIEScan = pAdapter->scan_info.scanAddIE.addIEdata;
pwextBuf->roamProfile.nAddIEScanLength = pAdapter->scan_info.scanAddIE.length;
-
+
/* clear previous genIE after use it */
memset( &pwextBuf->genIE, 0, sizeof(pwextBuf->genIE) );
}
@@ -731,7 +729,7 @@ int iw_set_scan(struct net_device *dev, struct iw_request_info *info,
scanRequest.pIEField = pAdapter->scan_info.scanAddIE.addIEdata;
}
- status = sme_ScanRequest( (WLAN_HDD_GET_CTX(pAdapter))->hHal, pAdapter->sessionId,&scanRequest, &scanId, &hdd_ScanRequestCallback, dev );
+ status = sme_ScanRequest( (WLAN_HDD_GET_CTX(pAdapter))->hHal, pAdapter->sessionId,&scanRequest, &scanId, &hdd_ScanRequestCallback, dev );
if (!HAL_STATUS_SUCCESS(status))
{
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL, "%s:sme_ScanRequest fail %d!!!",__func__, status);
@@ -940,7 +938,7 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
if(WEXT_SCAN_PENDING_GIVEUP == scanPendingOption)
{
pAdapter->scan_info.waitScanResult = FALSE;
- return eHAL_STATUS_SUCCESS;
+ return eHAL_STATUS_SUCCESS;
}
/* If any scan pending, wait till finish current scan,
and try this scan request when previous scan finish */
@@ -952,34 +950,34 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
WEXT_CSCAN_SCAN_DONE_WAIT_TIME))
{
hddLog(LOG1,"%s: Previous SCAN does not finished on time",__func__);
- return eHAL_STATUS_SUCCESS;
+ return eHAL_STATUS_SUCCESS;
}
}
/* Piggyback previous scan result */
else if(WEXT_SCAN_PENDING_PIGGYBACK == scanPendingOption)
{
pAdapter->scan_info.waitScanResult = TRUE;
- return eHAL_STATUS_SUCCESS;
+ return eHAL_STATUS_SUCCESS;
}
}
pAdapter->scan_info.waitScanResult = FALSE;
/* Check for scan IE */
- while( WEXT_CSCAN_SSID_SECTION == str_ptr[i] )
+ while( WEXT_CSCAN_SSID_SECTION == str_ptr[i] )
{
/* ssid_len */
- if(str_ptr[++i] != WEXT_CSCAN_CHANNEL_SECTION)
+ if(str_ptr[++i] != WEXT_CSCAN_CHANNEL_SECTION)
{
/* total number of ssid's */
num_ssid++;
/* increment length filed */
i += str_ptr[i] + 1;
- }
+ }
/* i should be saved and it will be pointing to 'C' */
}
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: numSsid %d !!!",__func__, num_ssid);
- if( num_ssid )
+ if( num_ssid )
{
/* To be fixed in SME and PE: override the number of ssid with 1,
* as SME and PE does not handle multiple SSID in scan request
@@ -1011,9 +1009,9 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
}
/* Check for Channel IE */
- if ( WEXT_CSCAN_CHANNEL_SECTION == str_ptr[i])
+ if ( WEXT_CSCAN_CHANNEL_SECTION == str_ptr[i])
{
- if( str_ptr[++i] == 0 )
+ if( str_ptr[++i] == 0 )
{
scanRequest.ChannelInfo.numOfChannels = 0;
scanRequest.ChannelInfo.ChannelList = NULL;
@@ -1026,7 +1024,7 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
/* store temp channel list */
/* SME expects 1 byte channel content */
scanRequest.ChannelInfo.ChannelList = vos_mem_malloc(scanRequest.ChannelInfo.numOfChannels * sizeof(v_U8_t));
- if(NULL == scanRequest.ChannelInfo.ChannelList)
+ if(NULL == scanRequest.ChannelInfo.ChannelList)
{
hddLog(VOS_TRACE_LEVEL_INFO_HIGH, "memory alloc failed for channel list creation");
status = -ENOMEM;
@@ -1050,7 +1048,7 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
/* Now i is pointing to passive dwell dwell time */
/* 'P',min dwell time, max dwell time */
/* next two offsets contain min and max channel time */
- if( WEXT_CSCAN_PASV_DWELL_SECTION == (str_ptr[i]) )
+ if( WEXT_CSCAN_PASV_DWELL_SECTION == (str_ptr[i]) )
{
/* No SSID specified, num_ssid == 0, then start paasive scan */
if (!num_ssid || (eSIR_PASSIVE_SCAN == pAdapter->scan_info.scan_mode))
@@ -1063,11 +1061,11 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
else
{
i += 3;
- }
- }
+ }
+ }
/* H indicates active channel time */
- if( WEXT_CSCAN_HOME_DWELL_SECTION == (str_ptr[i]) )
+ if( WEXT_CSCAN_HOME_DWELL_SECTION == (str_ptr[i]) )
{
if (num_ssid || (eSIR_ACTIVE_SCAN == pAdapter->scan_info.scan_mode))
{
@@ -1109,8 +1107,8 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
scanRequest.pIEField = pAdapter->scan_info.scanAddIE.addIEdata;
}
- status = sme_ScanRequest( (WLAN_HDD_GET_CTX(pAdapter))->hHal,
- pAdapter->sessionId,&scanRequest, &scanId, &hdd_ScanRequestCallback, dev );
+ status = sme_ScanRequest( (WLAN_HDD_GET_CTX(pAdapter))->hHal,
+ pAdapter->sessionId,&scanRequest, &scanId, &hdd_ScanRequestCallback, dev );
if( !HAL_STATUS_SUCCESS(status) )
{
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL, "%s: SME scan fail status %d !!!",__func__, status);
@@ -1129,7 +1127,7 @@ int iw_set_cscan(struct net_device *dev, struct iw_request_info *info,
exit_point:
/* free ssidlist */
- if (scanRequest.SSIDs.SSIDList)
+ if (scanRequest.SSIDs.SSIDList)
{
vos_mem_free(scanRequest.SSIDs.SSIDList);
}
@@ -1149,4 +1147,3 @@ void hdd_abort_mac_scan(hdd_context_t* pHddCtx, tANI_U8 sessionId)
{
sme_AbortMacScan(pHddCtx->hHal, sessionId);
}
-
diff --git a/CORE/HDD/src/wlan_hdd_softap_tx_rx.c b/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
index 163d8db62ff2..aef32724a97a 100644
--- a/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
+++ b/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
@@ -53,17 +53,17 @@
#ifdef IPA_OFFLOAD
#include <wlan_hdd_ipa.h>
#endif
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Preprocessor definitions and constants
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Type declarations
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Function definitions and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
#if 0
static void hdd_softap_dump_sk_buff(struct sk_buff * skb)
{
@@ -75,12 +75,12 @@ static void hdd_softap_dump_sk_buff(struct sk_buff * skb)
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: data_len = %d ", __func__, skb->data_len);
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: mac_len = %d\n", __func__, skb->mac_len);
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x ",
- skb->data[0], skb->data[1], skb->data[2], skb->data[3], skb->data[4],
- skb->data[5], skb->data[6], skb->data[7]);
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x \n",
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x ",
+ skb->data[0], skb->data[1], skb->data[2], skb->data[3], skb->data[4],
+ skb->data[5], skb->data[6], skb->data[7]);
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x \n",
skb->data[8], skb->data[9], skb->data[10], skb->data[11], skb->data[12],
- skb->data[13], skb->data[14], skb->data[15]);
+ skb->data[13], skb->data[14], skb->data[15]);
}
#endif
@@ -200,8 +200,8 @@ VOS_STATUS hdd_stop_trafficMonitor( hdd_adapter_t *pAdapter )
/**============================================================================
@brief hdd_softap_flush_tx_queues() - Utility function to flush the TX queues
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
static VOS_STATUS hdd_softap_flush_tx_queues( hdd_adapter_t *pAdapter )
@@ -224,7 +224,7 @@ static VOS_STATUS hdd_softap_flush_tx_queues( hdd_adapter_t *pAdapter )
for (i = 0; i < NUM_TX_QUEUES; i ++)
{
spin_lock_bh(&pAdapter->aStaInfo[STAId].wmm_tx_queue[i].lock);
- while (true)
+ while (true)
{
status = hdd_list_remove_front ( &pAdapter->aStaInfo[STAId].wmm_tx_queue[i], &anchor);
@@ -255,14 +255,14 @@ static VOS_STATUS hdd_softap_flush_tx_queues( hdd_adapter_t *pAdapter )
}
#ifndef QCA_WIFI_2_0
/**============================================================================
- @brief hdd_softap_hard_start_xmit() - Function registered with the Linux OS for
+ @brief hdd_softap_hard_start_xmit() - Function registered with the Linux OS for
transmitting packets. There are 2 versions of this function. One that uses
locked queue and other that uses lockless queues. Both have been retained to
do some performance testing
@param skb : [in] pointer to OS packet (sk_buff)
@param dev : [in] pointer to Libra network device
-
+
@return : NET_XMIT_DROP if packets are dropped
: NET_XMIT_SUCCESS if packet is enqueued succesfully
===========================================================================*/
@@ -275,15 +275,15 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
v_SIZE_t pktListSize = 0;
v_BOOL_t txSuspended = VOS_FALSE;
hdd_adapter_t *pAdapter = (hdd_adapter_t *)netdev_priv(dev);
- hdd_ap_ctx_t *pHddApCtx = WLAN_HDD_GET_AP_CTX_PTR(pAdapter);
+ hdd_ap_ctx_t *pHddApCtx = WLAN_HDD_GET_AP_CTX_PTR(pAdapter);
vos_list_node_t *anchor = NULL;
v_U8_t STAId = WLAN_MAX_STA_COUNT;
//Extract the destination address from ethernet frame
v_MACADDR_t *pDestMacAddress = (v_MACADDR_t*)skb->data;
- int os_status = NETDEV_TX_OK;
+ int os_status = NETDEV_TX_OK;
pDestMacAddress = (v_MACADDR_t*)skb->data;
-
+
++pAdapter->hdd_stats.hddTxRxStats.txXmitCalled;
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO,
@@ -292,10 +292,10 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
spin_lock_bh( &pAdapter->staInfo_lock );
if (vos_is_macaddr_broadcast( pDestMacAddress ) || vos_is_macaddr_group(pDestMacAddress))
{
- //The BC/MC station ID is assigned during BSS starting phase. SAP will return the station
+ //The BC/MC station ID is assigned during BSS starting phase. SAP will return the station
//ID used for BC/MC traffic. The station id is registered to TL as well.
STAId = pHddApCtx->uBCStaId;
-
+
/* Setting priority for broadcast packets which doesn't go to select_queue function */
skb->priority = SME_QOS_WMM_UP_BE;
skb->queue_mapping = HDD_LINUX_AC_BE;
@@ -324,7 +324,7 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
goto xmit_done;
}
- if ( (WLANTL_STA_CONNECTED != pAdapter->aStaInfo[STAId].tlSTAState) &&
+ if ( (WLANTL_STA_CONNECTED != pAdapter->aStaInfo[STAId].tlSTAState) &&
(WLANTL_STA_AUTHENTICATED != pAdapter->aStaInfo[STAId].tlSTAState) )
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN,
@@ -350,7 +350,7 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
//Get TL AC corresponding to Qdisc queue index/AC.
ac = hdd_QdiscAcToTlAC[skb->queue_mapping];
- //user priority from IP header, which is already extracted and set from
+ //user priority from IP header, which is already extracted and set from
//select_queue call back function
up = skb->priority;
++pAdapter->hdd_stats.hddTxRxStats.txXmitClassifiedAC[ac];
@@ -358,14 +358,14 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO,
"%s: Classified as ac %d up %d", __func__, ac, up);
- // If the memory differentiation mode is enabled, the memory limit of each queue will be
+ // If the memory differentiation mode is enabled, the memory limit of each queue will be
// checked. Over-limit packets will be dropped.
spin_lock_bh(&pAdapter->aStaInfo[STAId].wmm_tx_queue[ac].lock);
hdd_list_size(&pAdapter->aStaInfo[STAId].wmm_tx_queue[ac], &pktListSize);
if(pktListSize >= pAdapter->aTxQueueLimit[ac])
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN,
- "%s: station %d ac %d queue over limit %d \n", __func__, STAId, ac, pktListSize);
+ "%s: station %d ac %d queue over limit %d \n", __func__, STAId, ac, pktListSize);
pAdapter->aStaInfo[STAId].txSuspended[ac] = VOS_TRUE;
netif_stop_subqueue(dev, skb_get_queue_mapping(skb));
txSuspended = VOS_TRUE;
@@ -390,10 +390,10 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
if (VOS_TRUE == txSuspended)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
- "%s: TX queue full for AC=%d Disable OS TX queue",
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
+ "%s: TX queue full for AC=%d Disable OS TX queue",
__func__, ac );
- os_status = NETDEV_TX_BUSY;
+ os_status = NETDEV_TX_BUSY;
goto xmit_done;
}
@@ -403,7 +403,7 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
//Stick the OS packet inside this node.
pktNode->skb = skb;
- //Stick the User Priority inside this node
+ //Stick the User Priority inside this node
pktNode->userPriority = up;
INIT_LIST_HEAD(&pktNode->anchor);
@@ -428,11 +428,11 @@ int hdd_softap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
if (1 == pktListSize)
{
//Let TL know we have a packet to send for this AC
- status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, STAId, ac );
+ status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, STAId, ac );
if ( !VOS_IS_STATUS_SUCCESS( status ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN, "%s: Failed to signal TL for AC=%d STAId =%d",
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN, "%s: Failed to signal TL for AC=%d STAId =%d",
__func__, ac, STAId );
//Remove the packet from queue. It must be at the back of the queue, as TX thread cannot preempt us in the middle
@@ -590,17 +590,17 @@ drop_pkt:
@param skb : [in] pointer to packet (sk_buff)
@param dev : [in] pointer to Libra network device
@param STAId : [in] Station Id of Destination Station
- @param up : [in] User Priority
-
+ @param up : [in] User Priority
+
@return : NET_XMIT_DROP if packets are dropped
: NET_XMIT_SUCCESS if packet is enqueued succesfully
===========================================================================*/
-VOS_STATUS hdd_softap_sta_2_sta_xmit(struct sk_buff *skb,
+VOS_STATUS hdd_softap_sta_2_sta_xmit(struct sk_buff *skb,
struct net_device *dev,
- v_U8_t STAId,
+ v_U8_t STAId,
v_U8_t up)
{
- VOS_STATUS status = VOS_STATUS_SUCCESS;
+ VOS_STATUS status = VOS_STATUS_SUCCESS;
skb_list_node_t *pktNode = NULL;
v_SIZE_t pktListSize = 0;
hdd_adapter_t *pAdapter = (hdd_adapter_t *)netdev_priv(dev);
@@ -639,7 +639,7 @@ VOS_STATUS hdd_softap_sta_2_sta_xmit(struct sk_buff *skb,
//Stick the OS packet inside this node.
pktNode->skb = skb;
- //Stick the User Priority inside this node
+ //Stick the User Priority inside this node
pktNode->userPriority = up;
INIT_LIST_HEAD(&pktNode->anchor);
@@ -650,9 +650,9 @@ VOS_STATUS hdd_softap_sta_2_sta_xmit(struct sk_buff *skb,
pktListSize >= pAdapter->aTxQueueLimit[ac])
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN,
- "%s: station %d ac %d queue over limit %d \n", __func__, STAId, ac, pktListSize);
+ "%s: station %d ac %d queue over limit %d \n", __func__, STAId, ac, pktListSize);
/* TODO:Rx Flowchart should be trigerred here to SUPEND SSC on RX side.
- * SUSPEND should be done based on Threshold. RESUME would be
+ * SUSPEND should be done based on Threshold. RESUME would be
* triggered in fetch cbk after recovery.
*/
kfree_skb(skb);
@@ -681,11 +681,11 @@ VOS_STATUS hdd_softap_sta_2_sta_xmit(struct sk_buff *skb,
{
//Let TL know we have a packet to send for this AC
//VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s:Indicating Packet to TL", __func__);
- status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, STAId, ac );
+ status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, STAId, ac );
if ( !VOS_IS_STATUS_SUCCESS( status ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN, "%s: Failed to signal TL for AC=%d STAId =%d",
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_WARN, "%s: Failed to signal TL for AC=%d STAId =%d",
__func__, ac, STAId );
//Remove the packet from queue. It must be at the back of the queue, as TX thread cannot preempt us in the middle
@@ -721,19 +721,19 @@ void hdd_softap_tx_timeout(struct net_device *dev)
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
"%s: Transmission timeout occurred", __func__);
- //Getting here implies we disabled the TX queues for too long. Queues are
+ //Getting here implies we disabled the TX queues for too long. Queues are
//disabled either because of disassociation or low resource scenarios. In
//case of disassociation it is ok to ignore this. But if associated, we have
//do possible recovery here
-}
+}
/**============================================================================
- @brief hdd_softap_stats() - Function registered with the Linux OS for
+ @brief hdd_softap_stats() - Function registered with the Linux OS for
device TX/RX statistic
@param dev : [in] pointer to Libra network device
-
+
@return : pointer to net_device_stats structure
===========================================================================*/
struct net_device_stats* hdd_softap_stats(struct net_device *dev)
@@ -747,8 +747,8 @@ struct net_device_stats* hdd_softap_stats(struct net_device *dev)
@brief hdd_softap_init_tx_rx() - Init function to initialize Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter )
@@ -760,9 +760,9 @@ VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter )
v_U8_t STAId = 0;
v_U8_t pACWeights[] = {
- HDD_SOFTAP_BK_WEIGHT_DEFAULT,
- HDD_SOFTAP_BE_WEIGHT_DEFAULT,
- HDD_SOFTAP_VI_WEIGHT_DEFAULT,
+ HDD_SOFTAP_BK_WEIGHT_DEFAULT,
+ HDD_SOFTAP_BE_WEIGHT_DEFAULT,
+ HDD_SOFTAP_VI_WEIGHT_DEFAULT,
HDD_SOFTAP_VO_WEIGHT_DEFAULT
};
@@ -771,7 +771,7 @@ VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter )
vos_mem_zero(&pAdapter->stats, sizeof(struct net_device_stats));
- while (++i != NUM_TX_QUEUES)
+ while (++i != NUM_TX_QUEUES)
hdd_list_init( &pAdapter->wmm_tx_queue[i], HDD_TX_QUEUE_MAX_LEN);
/* Initial HDD buffer control / flow control fields*/
@@ -809,8 +809,8 @@ VOS_STATUS hdd_softap_init_tx_rx( hdd_adapter_t *pAdapter )
@brief hdd_softap_deinit_tx_rx() - Deinit function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_deinit_tx_rx( hdd_adapter_t *pAdapter )
@@ -833,8 +833,8 @@ VOS_STATUS hdd_softap_deinit_tx_rx( hdd_adapter_t *pAdapter )
@brief hdd_softap_flush_tx_queues_sta() - Utility function to flush the TX queues of a station
@param pAdapter : [in] pointer to adapter context
- @param STAId : [in] Station ID to deinit
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param STAId : [in] Station ID to deinit
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
static VOS_STATUS hdd_softap_flush_tx_queues_sta( hdd_adapter_t *pAdapter, v_U8_t STAId )
@@ -855,7 +855,7 @@ static VOS_STATUS hdd_softap_flush_tx_queues_sta( hdd_adapter_t *pAdapter, v_U8_
for (i = 0; i < NUM_TX_QUEUES; i ++)
{
spin_lock_bh(&pAdapter->aStaInfo[STAId].wmm_tx_queue[i].lock);
- while (true)
+ while (true)
{
status = hdd_list_remove_front ( &pAdapter->aStaInfo[STAId].wmm_tx_queue[i], &anchor);
if (VOS_STATUS_E_EMPTY != status)
@@ -885,8 +885,8 @@ static VOS_STATUS hdd_softap_flush_tx_queues_sta( hdd_adapter_t *pAdapter, v_U8_
@param pAdapter : [in] pointer to adapter context
@param STAId : [in] Station ID to deinit
- @param pmacAddrSTA : [in] pointer to the MAC address of the station
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pmacAddrSTA : [in] pointer to the MAC address of the station
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_init_tx_rx_sta( hdd_adapter_t *pAdapter, v_U8_t STAId, v_MACADDR_t *pmacAddrSTA)
@@ -919,8 +919,8 @@ VOS_STATUS hdd_softap_init_tx_rx_sta( hdd_adapter_t *pAdapter, v_U8_t STAId, v_M
modules in HDD
@param pAdapter : [in] pointer to adapter context
- @param STAId : [in] Station ID to deinit
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param STAId : [in] Station ID to deinit
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_deinit_tx_rx_sta ( hdd_adapter_t *pAdapter, v_U8_t STAId )
@@ -996,8 +996,8 @@ VOS_STATUS hdd_softap_deinit_tx_rx_sta ( hdd_adapter_t *pAdapter, v_U8_t STAId )
@brief hdd_softap_disconnect_tx_rx() - Disconnect function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_disconnect_tx_rx( hdd_adapter_t *pAdapter )
@@ -1010,25 +1010,25 @@ VOS_STATUS hdd_softap_disconnect_tx_rx( hdd_adapter_t *pAdapter )
to indicate that a packet has been transmitted across the bus
succesfully. OS packet resources can be released after this cbk.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (containing skb)
- @param vosStatusIn : [in] status of the transmission
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (containing skb)
+ @param vosStatusIn : [in] status of the transmission
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
VOS_STATUS vosStatusIn )
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
- hdd_adapter_t *pAdapter = NULL;
+ hdd_adapter_t *pAdapter = NULL;
void* pOsPkt = NULL;
-
+
if( ( NULL == vosContext ) || ( NULL == pVosPacket ) )
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Null params being passed", __func__);
- return VOS_STATUS_E_FAILURE;
+ return VOS_STATUS_E_FAILURE;
}
//Return the skb to the OS
@@ -1052,7 +1052,7 @@ VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
++pAdapter->hdd_stats.hddTxRxStats.txCompleted;
}
- kfree_skb((struct sk_buff *)pOsPkt);
+ kfree_skb((struct sk_buff *)pOsPkt);
//Return the VOS packet resources.
status = vos_pkt_return_packet( pVosPacket );
@@ -1066,17 +1066,17 @@ VOS_STATUS hdd_softap_tx_complete_cbk( v_VOID_t *vosContext,
/**============================================================================
- @brief hdd_softap_tx_fetch_packet_cbk() - Callback function invoked by TL to
+ @brief hdd_softap_tx_fetch_packet_cbk() - Callback function invoked by TL to
fetch a packet for transmission.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param staId : [in] Station for which TL is requesting a pkt
@param ac : [in] access category requested by TL
@param pVosPacket : [out] pointer to VOS packet packet pointer
- @param pPktMetaInfo : [out] pointer to meta info for the pkt
-
+ @param pPktMetaInfo : [out] pointer to meta info for the pkt
+
@return : VOS_STATUS_E_EMPTY if no packets to transmit
- : VOS_STATUS_E_FAILURE if any errors encountered
+ : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
@@ -1094,19 +1094,19 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
v_MACADDR_t* pDestMacAddress = NULL;
v_TIME_t timestamp;
v_SIZE_t size = 0;
- v_U8_t STAId = WLAN_MAX_STA_COUNT;
+ v_U8_t STAId = WLAN_MAX_STA_COUNT;
hdd_context_t *pHddCtx = NULL;
//Sanity check on inputs
- if ( ( NULL == vosContext ) ||
- ( NULL == pStaId ) ||
+ if ( ( NULL == vosContext ) ||
+ ( NULL == pStaId ) ||
( NULL == ppVosPacket ) ||
( NULL == pPktMetaInfo ) )
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Null Params being passed", __func__);
return VOS_STATUS_E_FAILURE;
}
-
+
//Get the HDD context.
pHddCtx = (hdd_context_t *)vos_get_context( VOS_MODULE_ID_HDD, vosContext );
if ( NULL == pHddCtx )
@@ -1129,7 +1129,7 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
VOS_ASSERT(0);
return VOS_STATUS_E_FAILURE;
}
-
+
if (FALSE == pAdapter->aStaInfo[STAId].isUsed )
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
@@ -1174,12 +1174,12 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO,
"%s: AC %d passed by TL", __func__, ac);
- //Get the vos packet. I don't want to dequeue and enqueue again if we are out of VOS resources
+ //Get the vos packet. I don't want to dequeue and enqueue again if we are out of VOS resources
//This simplifies the locking and unlocking of Tx queue
- status = vos_pkt_wrap_data_packet( &pVosPacket,
- VOS_PKT_TYPE_TX_802_3_DATA,
+ status = vos_pkt_wrap_data_packet( &pVosPacket,
+ VOS_PKT_TYPE_TX_802_3_DATA,
NULL, //OS Pkt is not being passed
- hdd_softap_tx_low_resource_cbk,
+ hdd_softap_tx_low_resource_cbk,
pAdapter );
if (status == VOS_STATUS_E_ALREADY || status == VOS_STATUS_E_RESOURCES)
@@ -1270,7 +1270,7 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
pPktMetaInfo->ucIsEapol = 0;
- if(pAdapter->aStaInfo[STAId].tlSTAState != WLANTL_STA_AUTHENTICATED)
+ if(pAdapter->aStaInfo[STAId].tlSTAState != WLANTL_STA_AUTHENTICATED)
{
if (TRUE == hdd_IsEAPOLPacket( pVosPacket ))
{
@@ -1279,7 +1279,7 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
pPktMetaInfo->ucIsEapol = 1;
}
}
-
+
//xg: @@@@: temporarily disble these. will revisit later
{
pPktMetaInfo->ucUP = pktNode->userPriority;
@@ -1303,7 +1303,7 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
"%s: TX queue re-enabled", __func__);
pAdapter->aStaInfo[STAId].txSuspended[ac] = VOS_FALSE;
netif_wake_subqueue(pAdapter->dev, skb_get_queue_mapping(skb));
- }
+ }
// We're giving the packet to TL so consider it transmitted from
// a statistics perspective. We account for it here instead of
@@ -1327,18 +1327,18 @@ VOS_STATUS hdd_softap_tx_fetch_packet_cbk( v_VOID_t *vosContext,
/**============================================================================
- @brief hdd_softap_tx_low_resource_cbk() - Callback function invoked in the
- case where VOS packets are not available at the time of the call to get
- packets. This callback function is invoked by VOS when packets are
+ @brief hdd_softap_tx_low_resource_cbk() - Callback function invoked in the
+ case where VOS packets are not available at the time of the call to get
+ packets. This callback function is invoked by VOS when packets are
available.
- @param pVosPacket : [in] pointer to VOS packet
- @param userData : [in] opaque user data that was passed initially
-
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @param pVosPacket : [in] pointer to VOS packet
+ @param userData : [in] opaque user data that was passed initially
+
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
=============================================================================*/
-VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
+VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
v_VOID_t *userData )
{
VOS_STATUS status;
@@ -1346,7 +1346,7 @@ VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
v_SIZE_t size = 0;
hdd_adapter_t* pAdapter = (hdd_adapter_t *)userData;
v_U8_t STAId = WLAN_MAX_STA_COUNT;
-
+
if(pAdapter == NULL)
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: HDD adapter context is Null", __func__);
@@ -1354,12 +1354,12 @@ VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
}
//Return the packet to VOS. We just needed to know that VOS is out of low resource
- //situation. Here we will only signal TL that there is a pending data for a STA.
+ //situation. Here we will only signal TL that there is a pending data for a STA.
//VOS packet will be requested (if needed) when TL comes back to fetch data.
vos_pkt_return_packet( pVosPacket );
pAdapter->isVosOutOfResource = VOS_FALSE;
-
+
// Indicate to TL that there is pending data if a queue is non empty.
// This Code wasnt included in earlier version which resulted in
// Traffic stalling
@@ -1374,17 +1374,17 @@ VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
hdd_list_size(&pAdapter->aStaInfo[STAId].wmm_tx_queue[i], &size);
if ( size > 0 )
{
- status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
- STAId,
+ status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
+ STAId,
(WLANTL_ACEnumType)i );
if( !VOS_IS_STATUS_SUCCESS( status ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Failure in indicating pkt to TL for ac=%d", __func__,i);
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Failure in indicating pkt to TL for ac=%d", __func__,i);
}
}
}
}
- }
+ }
return VOS_STATUS_SUCCESS;
}
@@ -1395,15 +1395,15 @@ VOS_STATUS hdd_softap_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
TL will call this to notify the HDD when one or more packets were
received for a registered STA.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param pVosPacketChain : [in] pointer to VOS packet chain
@param staId : [in] Station Id (Adress 1 Index)
@param pRxMetaInfo : [in] pointer to meta info for the received pkt(s).
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
+VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
vos_pkt_t *pVosPacketChain,
v_U8_t staId,
WLANTL_RxMetaInfoType* pRxMetaInfo )
@@ -1413,18 +1413,18 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
int rxstat;
struct sk_buff *skb = NULL;
vos_pkt_t* pVosPacket;
- vos_pkt_t* pNextVosPacket;
- hdd_context_t *pHddCtx = NULL;
+ vos_pkt_t* pNextVosPacket;
+ hdd_context_t *pHddCtx = NULL;
//Sanity check on inputs
- if ( ( NULL == vosContext ) ||
+ if ( ( NULL == vosContext ) ||
( NULL == pVosPacketChain ) ||
( NULL == pRxMetaInfo ) )
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Null params being passed", __func__);
return VOS_STATUS_E_FAILURE;
}
-
+
pHddCtx = (hdd_context_t *)vos_get_context( VOS_MODULE_ID_HDD, vosContext );
if ( NULL == pHddCtx )
{
@@ -1486,13 +1486,13 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Failure extracting skb from vos pkt", __func__);
return VOS_STATUS_E_FAILURE;
}
-
+
//hdd_softap_dump_sk_buff(skb);
skb->dev = pAdapter->dev;
-
+
if(skb->dev == NULL) {
-
+
hddLog(VOS_TRACE_LEVEL_FATAL, "ERROR!!Invalid netdevice\n");
return VOS_STATUS_E_FAILURE;
}
@@ -1524,7 +1524,7 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
} //(WLAN_RX_BCMC_STA_ID == staId)
- if ((WLAN_RX_BCMC_STA_ID == pRxMetaInfo->ucDesSTAId) ||
+ if ((WLAN_RX_BCMC_STA_ID == pRxMetaInfo->ucDesSTAId) ||
(WLAN_RX_SAP_SELF_STA_ID == pRxMetaInfo->ucDesSTAId))
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO_LOW,
@@ -1549,8 +1549,8 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
}
else if ((WLAN_HDD_GET_AP_CTX_PTR(pAdapter))->apDisableIntraBssFwd)
{
- kfree_skb(skb);
- }
+ kfree_skb(skb);
+ }
else
{
//loopback traffic
@@ -1569,10 +1569,10 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,"%s: Failure returning vos pkt", __func__);
}
-
+
pAdapter->dev->last_rx = jiffies;
- return status;
+ return status;
}
#else
@@ -1719,12 +1719,12 @@ VOS_STATUS hdd_softap_DeregisterSTA( hdd_adapter_t *pAdapter, tANI_U8 staId )
}
pHddCtx = (hdd_context_t*)(pAdapter->pHddCtx);
- //Clear station in TL and then update HDD data structures. This helps
+ //Clear station in TL and then update HDD data structures. This helps
//to block RX frames from other station to this station.
vosStatus = WLANTL_ClearSTAClient( pHddCtx->pvosContext, staId );
if ( !VOS_IS_STATUS_SUCCESS( vosStatus ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
"WLANTL_ClearSTAClient() failed to for staID %d. "
"Status= %d [0x%08X]",
staId, vosStatus, vosStatus );
@@ -1771,13 +1771,13 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
v_BOOL_t fWmmEnabled )
{
VOS_STATUS vosStatus = VOS_STATUS_E_FAILURE;
- WLAN_STADescType staDesc = {0};
+ WLAN_STADescType staDesc = {0};
hdd_context_t *pHddCtx = pAdapter->pHddCtx;
hdd_adapter_t *pmonAdapter = NULL;
//eCsrEncryptionType connectedCipherAlgo;
//v_BOOL_t fConnected;
-
+
/*
* Clean up old entry if it is not cleaned up properly
*/
@@ -1789,9 +1789,9 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
}
// Get the Station ID from the one saved during the assocation.
-
+
staDesc.ucSTAId = staId;
-
+
/*Save the pAdapter Pointer for this staId*/
pHddCtx->sta_to_adapter[staId] = pAdapter;
@@ -1837,7 +1837,7 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
staDesc.ucIsReplayCheckValid = VOS_FALSE;
- // Register the Station with TL...
+ // Register the Station with TL...
#ifdef IPA_OFFLOAD
if (hdd_ipa_is_enabled(pHddCtx)) {
vosStatus = WLANTL_RegisterSTAClient( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
@@ -1851,17 +1851,17 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
hdd_softap_tx_fetch_packet_cbk, &staDesc, 0 );
}
#else
- vosStatus = WLANTL_RegisterSTAClient( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
- hdd_softap_rx_packet_cbk,
- hdd_softap_tx_complete_cbk,
+ vosStatus = WLANTL_RegisterSTAClient( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
+ hdd_softap_rx_packet_cbk,
+ hdd_softap_tx_complete_cbk,
hdd_softap_tx_fetch_packet_cbk, &staDesc, 0 );
#endif
if ( !VOS_IS_STATUS_SUCCESS( vosStatus ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_ERROR,
"SOFTAP WLANTL_RegisterSTAClient() failed to register. Status= %d [0x%08X]",
vosStatus, vosStatus );
- return vosStatus;
+ return vosStatus;
}
//Timer value should be in milliseconds
@@ -1873,11 +1873,11 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
pHddCtx->cfg_ini->trafficMntrTmrForSplitScan);
}
- // if ( WPA ), tell TL to go to 'connected' and after keys come to the driver,
- // then go to 'authenticated'. For all other authentication types (those that do
+ // if ( WPA ), tell TL to go to 'connected' and after keys come to the driver,
+ // then go to 'authenticated'. For all other authentication types (those that do
// not require upper layer authentication) we can put TL directly into 'authenticated'
// state.
-
+
//VOS_ASSERT( fConnected );
pAdapter->aStaInfo[staId].ucSTAId = staId;
pAdapter->aStaInfo[staId].isQosEnabled = fWmmEnabled;
@@ -1886,30 +1886,30 @@ VOS_STATUS hdd_softap_RegisterSTA( hdd_adapter_t *pAdapter,
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO,
"open/shared auth StaId= %d. Changing TL state to AUTHENTICATED at Join time", pAdapter->aStaInfo[staId].ucSTAId );
-
+
// Connections that do not need Upper layer auth, transition TL directly
- // to 'Authenticated' state.
- vosStatus = WLANTL_ChangeSTAState( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, staDesc.ucSTAId,
+ // to 'Authenticated' state.
+ vosStatus = WLANTL_ChangeSTAState( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, staDesc.ucSTAId,
WLANTL_STA_AUTHENTICATED );
-
+
pAdapter->aStaInfo[staId].tlSTAState = WLANTL_STA_AUTHENTICATED;
pAdapter->sessionCtx.ap.uIsAuthenticated = VOS_TRUE;
- }
+ }
else
{
VOS_TRACE( VOS_MODULE_ID_HDD_SOFTAP, VOS_TRACE_LEVEL_INFO,
"ULA auth StaId= %d. Changing TL state to CONNECTED at Join time", pAdapter->aStaInfo[staId].ucSTAId );
-
- vosStatus = WLANTL_ChangeSTAState( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, staDesc.ucSTAId,
+
+ vosStatus = WLANTL_ChangeSTAState( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext, staDesc.ucSTAId,
WLANTL_STA_CONNECTED );
pAdapter->aStaInfo[staId].tlSTAState = WLANTL_STA_CONNECTED;
pAdapter->sessionCtx.ap.uIsAuthenticated = VOS_FALSE;
- }
+ }
pmonAdapter= hdd_get_mon_adapter( pAdapter->pHddCtx);
- if(pmonAdapter)
+ if(pmonAdapter)
{
hddLog(VOS_TRACE_LEVEL_INFO_HIGH, "Turn on Monitor the carrier\n");
netif_carrier_on(pmonAdapter->dev);
@@ -1928,8 +1928,8 @@ VOS_STATUS hdd_softap_Register_BC_STA( hdd_adapter_t *pAdapter, v_BOOL_t fPrivac
VOS_STATUS vosStatus = VOS_STATUS_E_FAILURE;
hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
v_MACADDR_t broadcastMacAddr = VOS_MAC_ADDR_BROADCAST_INITIALIZER;
-
-
+
+
pHddCtx->sta_to_adapter[WLAN_RX_BCMC_STA_ID] = pAdapter;
pHddCtx->sta_to_adapter[WLAN_RX_SAP_SELF_STA_ID] = pAdapter;
vosStatus = hdd_softap_RegisterSTA( pAdapter, VOS_FALSE, fPrivacyBit, (WLAN_HDD_GET_AP_CTX_PTR(pAdapter))->uBCStaId, 0, 1, &broadcastMacAddr,0);
diff --git a/CORE/HDD/src/wlan_hdd_tx_rx.c b/CORE/HDD/src/wlan_hdd_tx_rx.c
index a3a7208bc1f7..ec66d29e7e83 100644
--- a/CORE/HDD/src/wlan_hdd_tx_rx.c
+++ b/CORE/HDD/src/wlan_hdd_tx_rx.c
@@ -58,9 +58,9 @@
#include <wlan_hdd_ipa.h>
#endif
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Preprocessor definitions and constants
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
const v_U8_t hddWmmAcToHighestUp[] = {
SME_QOS_WMM_UP_RESV,
@@ -79,13 +79,13 @@ const v_U8_t hdd_QdiscAcToTlAC[] = {
static struct sk_buff* hdd_mon_tx_fetch_pkt(hdd_adapter_t* pAdapter);
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
Type declarations
- -------------------------------------------------------------------------*/
-
-/*---------------------------------------------------------------------------
+ -------------------------------------------------------------------------*/
+
+/*---------------------------------------------------------------------------
Function definitions and documenation
- -------------------------------------------------------------------------*/
+ -------------------------------------------------------------------------*/
#ifdef DATA_PATH_UNIT_TEST
//Utility function to dump an sk_buff
@@ -99,12 +99,12 @@ static void dump_sk_buff(struct sk_buff * skb)
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: data_len = %d ", __func__, skb->data_len);
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: mac_len = %d\n", __func__, skb->mac_len);
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x ",
- skb->data[0], skb->data[1], skb->data[2], skb->data[3], skb->data[4],
- skb->data[5], skb->data[6], skb->data[7]);
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x \n",
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x ",
+ skb->data[0], skb->data[1], skb->data[2], skb->data[3], skb->data[4],
+ skb->data[5], skb->data[6], skb->data[7]);
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x 0x%x \n",
skb->data[8], skb->data[9], skb->data[10], skb->data[11], skb->data[12],
- skb->data[13], skb->data[14], skb->data[15]);
+ skb->data[13], skb->data[14], skb->data[15]);
}
//Function for Unit Test only
@@ -139,7 +139,7 @@ static void transport_thread(hdd_adapter_t *pAdapter)
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Test FAIL hdd_tx_low_resource_cbk", __func__);
else
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Test PASS hdd_tx_low_resource_cbk", __func__);
-
+
status = hdd_rx_packet_cbk( pAdapter->pvosContext,
&dummyPacket,
staId,
@@ -156,8 +156,8 @@ static void transport_thread(hdd_adapter_t *pAdapter)
/**============================================================================
@brief hdd_flush_tx_queues() - Utility function to flush the TX queues
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
static VOS_STATUS hdd_flush_tx_queues( hdd_adapter_t *pAdapter )
@@ -170,11 +170,11 @@ static VOS_STATUS hdd_flush_tx_queues( hdd_adapter_t *pAdapter )
pAdapter->isVosLowResource = VOS_FALSE;
- while (++i != NUM_TX_QUEUES)
+ while (++i != NUM_TX_QUEUES)
{
//Free up any packets in the Tx queue
spin_lock_bh(&pAdapter->wmm_tx_queue[i].lock);
- while (true)
+ while (true)
{
status = hdd_list_remove_front( &pAdapter->wmm_tx_queue[i], &anchor );
if(VOS_STATUS_E_EMPTY != status)
@@ -182,7 +182,7 @@ static VOS_STATUS hdd_flush_tx_queues( hdd_adapter_t *pAdapter )
pktNode = list_entry(anchor, skb_list_node_t, anchor);
skb = pktNode->skb;
//TODO
- //++pAdapter->stats.tx_dropped;
+ //++pAdapter->stats.tx_dropped;
++pAdapter->hdd_stats.hddTxRxStats.txFlushed;
++pAdapter->hdd_stats.hddTxRxStats.txFlushedAC[i];
kfree_skb(skb);
@@ -283,7 +283,7 @@ static struct sk_buff* hdd_mon_tx_fetch_pkt(hdd_adapter_t* pAdapter)
}
// do we have any packets pending in this AC?
- hdd_list_size( &pAdapter->wmm_tx_queue[ac], &size );
+ hdd_list_size( &pAdapter->wmm_tx_queue[ac], &size );
if( size == 0 )
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
@@ -317,9 +317,9 @@ static struct sk_buff* hdd_mon_tx_fetch_pkt(hdd_adapter_t* pAdapter)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
"%s: TX queue[%d] re-enabled", __func__, ac);
- pAdapter->isTxSuspended[ac] = VOS_FALSE;
+ pAdapter->isTxSuspended[ac] = VOS_FALSE;
/* Enable Queues which we have disabled earlier */
- netif_tx_start_all_queues( pAdapter->dev );
+ netif_tx_start_all_queues( pAdapter->dev );
}
return skb;
@@ -381,20 +381,20 @@ void hdd_mon_tx_mgmt_pkt(hdd_adapter_t* pAdapter)
if( (hdr->frame_control & HDD_FRAME_SUBTYPE_MASK)
== HDD_FRAME_SUBTYPE_DEAUTH )
{
- hdd_softap_sta_deauth( pAdapter, hdr->addr1 );
+ hdd_softap_sta_deauth( pAdapter, hdr->addr1 );
goto mgmt_handled;
}
- else if( (hdr->frame_control & HDD_FRAME_SUBTYPE_MASK)
+ else if( (hdr->frame_control & HDD_FRAME_SUBTYPE_MASK)
== HDD_FRAME_SUBTYPE_DISASSOC )
{
- hdd_softap_sta_disassoc( pAdapter, hdr->addr1 );
+ hdd_softap_sta_disassoc( pAdapter, hdr->addr1 );
goto mgmt_handled;
}
}
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: Sending action frame to SAP to TX, Len %d", __func__, skb->len);
- if (VOS_STATUS_SUCCESS !=
+ if (VOS_STATUS_SUCCESS !=
WLANSAP_SendAction( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
skb->data, skb->len, 0) )
{
@@ -428,7 +428,7 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
(struct ieee80211_radiotap_header *)skb->data;
/*Supplicant sends the EAPOL packet on monitor interface*/
- pPgBkAdapter = pAdapter->sessionCtx.monitor.pAdapterForTx;
+ pPgBkAdapter = pAdapter->sessionCtx.monitor.pAdapterForTx;
if(pPgBkAdapter == NULL)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
@@ -436,23 +436,23 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
__func__);
goto fail; /* too short to be possibly valid */
}
-
+
/* check if toal skb length is greater then radio tab header length of not */
if (unlikely(skb->len < sizeof(struct ieee80211_radiotap_header)))
goto fail; /* too short to be possibly valid */
-
+
/* check if radio tap header version is correct or not */
if (unlikely(rtap_hdr->it_version))
goto fail; /* only version 0 is supported */
-
+
/*Strip off the radio tap header*/
rt_hdr_len = ieee80211_get_radiotap_len(skb->data);
-
+
/* check if skb length if greator then total radio tap header length ot not*/
if (unlikely(skb->len < rt_hdr_len))
goto fail;
-
- /* Update the trans_start for this netdev */
+
+ /* Update the trans_start for this netdev */
dev->trans_start = jiffies;
/*
* fix up the pointers accounting for the radiotap
@@ -460,46 +460,46 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
*/
skb_set_mac_header(skb, rt_hdr_len);
skb_set_network_header(skb, rt_hdr_len);
- skb_set_transport_header(skb, rt_hdr_len);
+ skb_set_transport_header(skb, rt_hdr_len);
/* Pull rtap header out of the skb */
skb_pull(skb, rt_hdr_len);
-
- /*Supplicant adds: radiotap Hdr + radiotap data + 80211 Header. So after
- * radio tap header and 802.11 header starts
+
+ /*Supplicant adds: radiotap Hdr + radiotap data + 80211 Header. So after
+ * radio tap header and 802.11 header starts
*/
hdr = (struct ieee80211_hdr *)skb->data;
-
- /* Send data frames through the normal Data path. In this path we will
+
+ /* Send data frames through the normal Data path. In this path we will
* conver rcvd 802.11 packet to 802.3 packet */
if ( (hdr->frame_control & HDD_FRAME_TYPE_MASK) == HDD_FRAME_TYPE_DATA)
- {
+ {
v_U8_t da[6];
v_U8_t sa[6];
memcpy (da, hdr->addr1, VOS_MAC_ADDR_SIZE);
memcpy (sa, hdr->addr2, VOS_MAC_ADDR_SIZE);
-
- /* Pull 802.11 MAC header */
+
+ /* Pull 802.11 MAC header */
skb_pull(skb, HDD_80211_HEADER_LEN);
-
- if ( HDD_FRAME_SUBTYPE_QOSDATA ==
+
+ if ( HDD_FRAME_SUBTYPE_QOSDATA ==
(hdr->frame_control & HDD_FRAME_SUBTYPE_MASK))
{
skb_pull(skb, HDD_80211_HEADER_QOS_CTL);
}
- /* Pull LLC header */
+ /* Pull LLC header */
skb_pull(skb, HDD_LLC_HDR_LEN);
- /* Create space for Ethernet header */
+ /* Create space for Ethernet header */
skb_push(skb, HDD_MAC_HDR_SIZE*2);
memcpy(&skb->data[0], da, HDD_MAC_HDR_SIZE);
memcpy(&skb->data[HDD_DEST_ADDR_OFFSET], sa, HDD_MAC_HDR_SIZE);
- /* Only EAPOL Data packets are allowed through monitor interface */
+ /* Only EAPOL Data packets are allowed through monitor interface */
if (vos_be16_to_cpu(
- (*(unsigned short*)&skb->data[HDD_ETHERTYPE_802_1_X_FRAME_OFFSET]) )
+ (*(unsigned short*)&skb->data[HDD_ETHERTYPE_802_1_X_FRAME_OFFSET]) )
!= HDD_ETHERTYPE_802_1_X)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_FATAL,
@@ -510,7 +510,7 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
}
skb->protocol = htons(HDD_ETHERTYPE_802_1_X);
-
+
hdd_hostapd_select_queue(pPgBkAdapter->dev, skb);
return hdd_softap_hard_start_xmit( skb, pPgBkAdapter->dev );
}
@@ -529,10 +529,10 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
* and re-enable the queues once we get TX feedback for this packet */
netif_tx_stop_all_queues(pAdapter->dev);
pAdapter->isTxSuspended[ac] = VOS_TRUE;
- spin_unlock(&pAdapter->wmm_tx_queue[ac].lock);
- return NETDEV_TX_BUSY;
+ spin_unlock(&pAdapter->wmm_tx_queue[ac].lock);
+ return NETDEV_TX_BUSY;
}
- spin_unlock(&pAdapter->wmm_tx_queue[ac].lock);
+ spin_unlock(&pAdapter->wmm_tx_queue[ac].lock);
//Use the skb->cb field to hold the list node information
pktNode = (skb_list_node_t *)&skb->cb;
@@ -558,15 +558,15 @@ int hdd_mon_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
if ( pktListSize == 1 )
{
- /* In this context we cannot acquire any mutex etc. And to transmit
+ /* In this context we cannot acquire any mutex etc. And to transmit
* this packet we need to call SME API. So to take care of this we will
- * schedule a workqueue
+ * schedule a workqueue
*/
schedule_work(&pPgBkAdapter->monTxWorkQueue);
}
return NETDEV_TX_OK;
}
-
+
fail:
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_WARN,
"%s: Packet Rcvd at Monitor interface is not proper,"
@@ -1017,7 +1017,7 @@ void hdd_tx_timeout(struct net_device *dev)
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Transmission timeout occurred", __func__);
- //Getting here implies we disabled the TX queues for too long. Queues are
+ //Getting here implies we disabled the TX queues for too long. Queues are
//disabled either because of disassociation or low resource scenarios. In
//case of disassociation it is ok to ignore this. But if associated, we have
//do possible recovery here
@@ -1045,21 +1045,21 @@ void hdd_tx_timeout(struct net_device *dev)
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"carrier state: %d", netif_carrier_ok(dev));
-}
+}
/**============================================================================
- @brief hdd_stats() - Function registered with the Linux OS for
+ @brief hdd_stats() - Function registered with the Linux OS for
device TX/RX statistic
@param dev : [in] pointer to Libra network device
-
+
@return : pointer to net_device_stats structure
===========================================================================*/
struct net_device_stats* hdd_stats(struct net_device *dev)
{
hdd_adapter_t *pAdapter = WLAN_HDD_GET_PRIV_PTR(dev);
-
+
return &pAdapter->stats;
}
@@ -1068,8 +1068,8 @@ struct net_device_stats* hdd_stats(struct net_device *dev)
@brief hdd_init_tx_rx() - Init function to initialize Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_init_tx_rx( hdd_adapter_t *pAdapter )
@@ -1084,8 +1084,8 @@ VOS_STATUS hdd_init_tx_rx( hdd_adapter_t *pAdapter )
//Will be zeroed out during alloc
while (++i != NUM_TX_QUEUES)
- {
- pAdapter->isTxSuspended[i] = VOS_FALSE;
+ {
+ pAdapter->isTxSuspended[i] = VOS_FALSE;
hdd_list_init( &pAdapter->wmm_tx_queue[i], HDD_TX_QUEUE_MAX_LEN);
}
@@ -1097,8 +1097,8 @@ VOS_STATUS hdd_init_tx_rx( hdd_adapter_t *pAdapter )
@brief hdd_deinit_tx_rx() - Deinit function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_deinit_tx_rx( hdd_adapter_t *pAdapter )
@@ -1107,7 +1107,7 @@ VOS_STATUS hdd_deinit_tx_rx( hdd_adapter_t *pAdapter )
v_SINT_t i = -1;
status = hdd_flush_tx_queues(pAdapter);
- while (++i != NUM_TX_QUEUES)
+ while (++i != NUM_TX_QUEUES)
{
//Free up actual list elements in the Tx queue
hdd_list_destroy( &pAdapter->wmm_tx_queue[i] );
@@ -1121,8 +1121,8 @@ VOS_STATUS hdd_deinit_tx_rx( hdd_adapter_t *pAdapter )
@brief hdd_disconnect_tx_rx() - Disconnect function to clean up Tx/RX
modules in HDD
- @param pAdapter : [in] pointer to adapter context
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @param pAdapter : [in] pointer to adapter context
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_disconnect_tx_rx( hdd_adapter_t *pAdapter )
@@ -1134,18 +1134,18 @@ VOS_STATUS hdd_disconnect_tx_rx( hdd_adapter_t *pAdapter )
/**============================================================================
@brief hdd_IsEAPOLPacket() - Checks the packet is EAPOL or not.
- @param pVosPacket : [in] pointer to vos packet
- @return : VOS_TRUE if the packet is EAPOL
+ @param pVosPacket : [in] pointer to vos packet
+ @return : VOS_TRUE if the packet is EAPOL
: VOS_FALSE otherwise
===========================================================================*/
v_BOOL_t hdd_IsEAPOLPacket( vos_pkt_t *pVosPacket )
{
VOS_STATUS vosStatus = VOS_STATUS_SUCCESS;
- v_BOOL_t fEAPOL = VOS_FALSE;
+ v_BOOL_t fEAPOL = VOS_FALSE;
void *pBuffer = NULL;
-
+
vosStatus = vos_pkt_peek_data( pVosPacket, (v_SIZE_t)HDD_ETHERTYPE_802_1_X_FRAME_OFFSET,
&pBuffer, HDD_ETHERTYPE_802_1_X_SIZE );
if (VOS_IS_STATUS_SUCCESS( vosStatus ) )
@@ -1154,8 +1154,8 @@ v_BOOL_t hdd_IsEAPOLPacket( vos_pkt_t *pVosPacket )
{
fEAPOL = VOS_TRUE;
}
- }
-
+ }
+
return fEAPOL;
}
@@ -1196,26 +1196,26 @@ v_BOOL_t hdd_IsWAIPacket( vos_pkt_t *pVosPacket )
to indicate that a packet has been transmitted across the SDIO bus
succesfully. OS packet resources can be released after this cbk.
- @param vosContext : [in] pointer to VOS context
- @param pVosPacket : [in] pointer to VOS packet (containing skb)
- @param vosStatusIn : [in] status of the transmission
+ @param vosContext : [in] pointer to VOS context
+ @param pVosPacket : [in] pointer to VOS packet (containing skb)
+ @param vosStatusIn : [in] status of the transmission
- @return : VOS_STATUS_E_FAILURE if any errors encountered
+ @return : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
- vos_pkt_t *pVosPacket,
+VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
+ vos_pkt_t *pVosPacket,
VOS_STATUS vosStatusIn )
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
- hdd_adapter_t *pAdapter = NULL;
+ hdd_adapter_t *pAdapter = NULL;
hdd_context_t *pHddCtx = NULL;
void* pOsPkt = NULL;
-
+
if( ( NULL == vosContext ) || ( NULL == pVosPacket ) )
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Null params being passed", __func__);
- return VOS_STATUS_E_FAILURE;
+ return VOS_STATUS_E_FAILURE;
}
//Return the skb to the OS
@@ -1227,7 +1227,7 @@ VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
vos_pkt_return_packet( pVosPacket );
return VOS_STATUS_E_FAILURE;
}
-
+
//Get the HDD context.
pHddCtx = (hdd_context_t *)vos_get_context( VOS_MODULE_ID_HDD, vosContext );
//Get the Adapter context.
@@ -1241,7 +1241,7 @@ VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
++pAdapter->hdd_stats.hddTxRxStats.txCompleted;
}
- kfree_skb((struct sk_buff *)pOsPkt);
+ kfree_skb((struct sk_buff *)pOsPkt);
//Return the VOS packet resources.
status = vos_pkt_return_packet( pVosPacket );
@@ -1255,17 +1255,17 @@ VOS_STATUS hdd_tx_complete_cbk( v_VOID_t *vosContext,
/**============================================================================
- @brief hdd_tx_fetch_packet_cbk() - Callback function invoked by TL to
+ @brief hdd_tx_fetch_packet_cbk() - Callback function invoked by TL to
fetch a packet for transmission.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param staId : [in] Station for which TL is requesting a pkt
@param ac : [in] access category requested by TL
@param pVosPacket : [out] pointer to VOS packet packet pointer
- @param pPktMetaInfo : [out] pointer to meta info for the pkt
-
+ @param pPktMetaInfo : [out] pointer to meta info for the pkt
+
@return : VOS_STATUS_E_EMPTY if no packets to transmit
- : VOS_STATUS_E_FAILURE if any errors encountered
+ : VOS_STATUS_E_FAILURE if any errors encountered
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
@@ -1288,8 +1288,8 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
tANI_U8 acAdmitted, i;
//Sanity check on inputs
- if ( ( NULL == vosContext ) ||
- ( NULL == pStaId ) ||
+ if ( ( NULL == vosContext ) ||
+ ( NULL == pStaId ) ||
( NULL == ppVosPacket ) ||
( NULL == pPktMetaInfo ) )
{
@@ -1304,7 +1304,7 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: HDD adapter context is Null", __func__);
return VOS_STATUS_E_FAILURE;
}
-
+
pAdapter = pHddCtx->sta_to_adapter[*pStaId];
if ((NULL == pAdapter) || (WLAN_HDD_ADAPTER_MAGIC != pAdapter->magic))
{
@@ -1333,7 +1333,7 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
// or we determine we have no more packets to send
// HDD is not allowed to change AC.
- // has this AC been admitted? or
+ // has this AC been admitted? or
// To allow EAPOL packets when not authenticated
if (unlikely((0==pAdapter->hddWmmStatus.wmmAcStatus[ac].wmmAcAccessAllowed) &&
(WLAN_HDD_GET_STATION_CTX_PTR(pAdapter))->conn_info.uIsAuthenticated))
@@ -1345,9 +1345,9 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
#endif // HDD_WMM_DEBUG
return VOS_STATUS_E_FAILURE;
}
-
+
// do we have any packets pending in this AC?
- hdd_list_size( &pAdapter->wmm_tx_queue[ac], &size );
+ hdd_list_size( &pAdapter->wmm_tx_queue[ac], &size );
if( size > 0 )
{
// yes, so process it
@@ -1366,12 +1366,12 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
return VOS_STATUS_E_FAILURE;
}
- //Get the vos packet. I don't want to dequeue and enqueue again if we are out of VOS resources
+ //Get the vos packet. I don't want to dequeue and enqueue again if we are out of VOS resources
//This simplifies the locking and unlocking of Tx queue
- status = vos_pkt_wrap_data_packet( &pVosPacket,
- VOS_PKT_TYPE_TX_802_3_DATA,
+ status = vos_pkt_wrap_data_packet( &pVosPacket,
+ VOS_PKT_TYPE_TX_802_3_DATA,
NULL, //OS Pkt is not being passed
- hdd_tx_low_resource_cbk,
+ hdd_tx_low_resource_cbk,
pAdapter );
if (status == VOS_STATUS_E_ALREADY || status == VOS_STATUS_E_RESOURCES)
@@ -1458,10 +1458,10 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
//FIXME This timestamp is really the time stamp of wrap_data_packet
vos_pkt_get_timestamp( pVosPacket, &timestamp );
pPktMetaInfo->usTimeStamp = (v_U16_t)timestamp;
-
+
if(pAdapter->sessionCtx.station.conn_info.uIsAuthenticated == VOS_TRUE)
- pPktMetaInfo->ucIsEapol = 0;
- else
+ pPktMetaInfo->ucIsEapol = 0;
+ else
pPktMetaInfo->ucIsEapol = hdd_IsEAPOLPacket( pVosPacket ) ? 1 : 0;
#ifdef FEATURE_WLAN_WAPI
@@ -1478,8 +1478,8 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
}
else
{
- /* 1. Check if ACM is set for this AC
- * 2. If set, check if this AC had already admitted
+ /* 1. Check if ACM is set for this AC
+ * 2. If set, check if this AC had already admitted
* 3. If not already admitted, downgrade the UP to next best UP */
if(!pAdapter->hddWmmStatus.wmmAcStatus[ac].wmmAcAccessRequired ||
pAdapter->hddWmmStatus.wmmAcStatus[ac].wmmAcTspecValid)
@@ -1522,7 +1522,7 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
pPktMetaInfo->ucBcast = vos_is_macaddr_broadcast( pDestMacAddress ) ? 1 : 0;
pPktMetaInfo->ucMcast = vos_is_macaddr_group( pDestMacAddress ) ? 1 : 0;
-
+
// if we are in a backpressure situation see if we can turn the hose back on
if ( (pAdapter->isTxSuspended[ac]) &&
@@ -1532,8 +1532,8 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
++pAdapter->hdd_stats.hddTxRxStats.txFetchDePressuredAC[ac];
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s: TX queue[%d] re-enabled", __func__, ac);
- pAdapter->isTxSuspended[ac] = VOS_FALSE;
- netif_tx_wake_queue(netdev_get_tx_queue(pAdapter->dev,
+ pAdapter->isTxSuspended[ac] = VOS_FALSE;
+ netif_tx_wake_queue(netdev_get_tx_queue(pAdapter->dev,
skb_get_queue_mapping(skb) ));
}
@@ -1610,25 +1610,25 @@ VOS_STATUS hdd_tx_fetch_packet_cbk( v_VOID_t *vosContext,
/**============================================================================
- @brief hdd_tx_low_resource_cbk() - Callback function invoked in the
- case where VOS packets are not available at the time of the call to get
- packets. This callback function is invoked by VOS when packets are
+ @brief hdd_tx_low_resource_cbk() - Callback function invoked in the
+ case where VOS packets are not available at the time of the call to get
+ packets. This callback function is invoked by VOS when packets are
available.
- @param pVosPacket : [in] pointer to VOS packet
- @param userData : [in] opaque user data that was passed initially
-
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @param pVosPacket : [in] pointer to VOS packet
+ @param userData : [in] opaque user data that was passed initially
+
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
=============================================================================*/
-VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
+VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
v_VOID_t *userData )
{
VOS_STATUS status;
v_SINT_t i = 0;
v_SIZE_t size = 0;
hdd_adapter_t* pAdapter = (hdd_adapter_t *)userData;
-
+
if(pAdapter == NULL)
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: HDD adapter context is Null", __func__);
@@ -1636,7 +1636,7 @@ VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
}
//Return the packet to VOS. We just needed to know that VOS is out of low resource
- //situation. Here we will only signal TL that there is a pending data for a STA.
+ //situation. Here we will only signal TL that there is a pending data for a STA.
//VOS packet will be requested (if needed) when TL comes back to fetch data.
vos_pkt_return_packet( pVosPacket );
@@ -1649,12 +1649,12 @@ VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
hdd_list_size( &pAdapter->wmm_tx_queue[i], &size );
if ( size > 0 )
{
- status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
- (WLAN_HDD_GET_STATION_CTX_PTR(pAdapter))->conn_info.staId [0],
+ status = WLANTL_STAPktPending( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
+ (WLAN_HDD_GET_STATION_CTX_PTR(pAdapter))->conn_info.staId [0],
(WLANTL_ACEnumType)i );
if( !VOS_IS_STATUS_SUCCESS( status ) )
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Failure in indicating pkt to TL for ac=%d", __func__,i);
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Failure in indicating pkt to TL for ac=%d", __func__,i);
}
}
}
@@ -1669,15 +1669,15 @@ VOS_STATUS hdd_tx_low_resource_cbk( vos_pkt_t *pVosPacket,
TL will call this to notify the HDD when one or more packets were
received for a registered STA.
- @param vosContext : [in] pointer to VOS context
+ @param vosContext : [in] pointer to VOS context
@param pVosPacketChain : [in] pointer to VOS packet chain
@param staId : [in] Station Id
- @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
+ @param pRxMetaInfo : [in] pointer to meta info for the received pkt(s)
- @return : VOS_STATUS_E_FAILURE if any errors encountered,
+ @return : VOS_STATUS_E_FAILURE if any errors encountered,
: VOS_STATUS_SUCCESS otherwise
===========================================================================*/
-VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
+VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
vos_pkt_t *pVosPacketChain,
v_U8_t staId,
WLANTL_RxMetaInfoType* pRxMetaInfo )
@@ -1691,7 +1691,7 @@ VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
vos_pkt_t* pNextVosPacket;
//Sanity check on inputs
- if ( ( NULL == vosContext ) ||
+ if ( ( NULL == vosContext ) ||
( NULL == pVosPacketChain ) ||
( NULL == pRxMetaInfo ) )
{
@@ -1813,10 +1813,10 @@ VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,"%s: Failure returning vos pkt", __func__);
}
-
+
pAdapter->dev->last_rx = jiffies;
- return status;
+ return status;
}
/**============================================================================
@brief hdd_tx_rx_pkt_cnt_stat_timer_handler() -
diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c
index ef9a1b66efba..a99d27643cab 100644
--- a/CORE/HDD/src/wlan_hdd_wext.c
+++ b/CORE/HDD/src/wlan_hdd_wext.c
@@ -532,7 +532,7 @@ int hdd_validate_mcc_config(hdd_adapter_t *pAdapter, v_UINT_t staId,
v_UINT_t arg1, v_UINT_t arg2, v_UINT_t arg3);
#ifdef WLAN_FEATURE_PACKET_FILTERING
-int wlan_hdd_set_filter(hdd_context_t *pHddCtx, tpPacketFilterCfg pRequest,
+int wlan_hdd_set_filter(hdd_context_t *pHddCtx, tpPacketFilterCfg pRequest,
v_U8_t sessionId);
#endif
@@ -6819,7 +6819,7 @@ static int iw_get_char_setnone(struct net_device *dev, struct iw_request_info *i
memset(&channel_list, 0, sizeof(channel_list));
status = iw_softap_get_channel_list(dev, info, wrqu, (char *)&channel_list);
- if ( !VOS_IS_STATUS_SUCCESS( status ) )
+ if ( !VOS_IS_STATUS_SUCCESS( status ) )
{
hddLog(VOS_TRACE_LEVEL_ERROR, "%s GetChannelList Failed!!!\n",__func__);
return -EINVAL;
@@ -8029,7 +8029,7 @@ static int iw_set_dynamic_mcbc_filter(struct net_device *dev,
return 0;
}
-static int iw_clear_dynamic_mcbc_filter(struct net_device *dev,
+static int iw_clear_dynamic_mcbc_filter(struct net_device *dev,
struct iw_request_info *info,
union iwreq_data *wrqu, char *extra)
{
@@ -8205,7 +8205,7 @@ static int iw_set_keepalive_params(struct net_device *dev, struct iw_request_inf
hddLog(VOS_TRACE_LEVEL_ERROR, "set Keep: TP before SME %d\n", keepaliveRequest.timePeriod);
- if (eHAL_STATUS_SUCCESS != sme_SetKeepAlive(WLAN_HDD_GET_HAL_CTX(pAdapter),
+ if (eHAL_STATUS_SUCCESS != sme_SetKeepAlive(WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId, &keepaliveRequest))
{
hddLog(VOS_TRACE_LEVEL_ERROR, "%s: Failure to execute Keep Alive\n",
@@ -8217,7 +8217,7 @@ static int iw_set_keepalive_params(struct net_device *dev, struct iw_request_inf
}
#ifdef WLAN_FEATURE_PACKET_FILTERING
-int wlan_hdd_set_filter(hdd_context_t *pHddCtx, tpPacketFilterCfg pRequest,
+int wlan_hdd_set_filter(hdd_context_t *pHddCtx, tpPacketFilterCfg pRequest,
tANI_U8 sessionId)
{
tSirRcvPktFilterCfgType packetFilterSetReq = {0};
@@ -8734,9 +8734,9 @@ static int iw_get_statistics(struct net_device *dev,
(char*) &(pStats->rx_error_cnt),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_BYTE_CNT,
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_BYTE_CNT,
(tANI_U8) sizeof (dStats->tx_uc_byte_cnt[0]),
- (char*) &(dStats->tx_uc_byte_cnt[0]),
+ (char*) &(dStats->tx_uc_byte_cnt[0]),
tlen);
FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_BYTE_CNT,
@@ -8755,29 +8755,29 @@ static int iw_get_statistics(struct net_device *dev,
(char*) &(aStats->tx_rate),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_UC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->rx_uc_byte_cnt[0]),
- (char*) &(dStats->rx_uc_byte_cnt[0]),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_UC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->rx_uc_byte_cnt[0]),
+ (char*) &(dStats->rx_uc_byte_cnt[0]),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_MC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->rx_mc_byte_cnt),
- (char*) &(dStats->rx_mc_byte_cnt),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_MC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->rx_mc_byte_cnt),
+ (char*) &(dStats->rx_mc_byte_cnt),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_BC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->rx_bc_byte_cnt),
- (char*) &(dStats->rx_bc_byte_cnt),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_RX_BC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->rx_bc_byte_cnt),
+ (char*) &(dStats->rx_bc_byte_cnt),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_UC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->tx_uc_byte_cnt[0]),
- (char*) &(dStats->tx_uc_byte_cnt[0]),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_UC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->tx_uc_byte_cnt[0]),
+ (char*) &(dStats->tx_uc_byte_cnt[0]),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_MC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->tx_mc_byte_cnt),
- (char*) &(dStats->tx_mc_byte_cnt),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_MC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->tx_mc_byte_cnt),
+ (char*) &(dStats->tx_mc_byte_cnt),
tlen);
- FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_BC_BYTE_CNT,
- (tANI_U8) sizeof (dStats->tx_bc_byte_cnt),
- (char*) &(dStats->tx_bc_byte_cnt),
+ FILL_TLV(p, (tANI_U8)WLAN_STATS_TX_BC_BYTE_CNT,
+ (tANI_U8) sizeof (dStats->tx_bc_byte_cnt),
+ (char*) &(dStats->tx_bc_byte_cnt),
tlen);
wrqu->data.length = tlen;
@@ -9453,12 +9453,12 @@ VOS_STATUS iw_set_power_params(struct net_device *dev, struct iw_request_info *i
}
uTotalSize -= nOffset;
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
- "Power request parameter %d Total size",
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
+ "Power request parameter %d Total size",
uTotalSize);
ptr += nOffset;
/* This is added for dynamic Tele LI enable (0xF1) /disable (0xF0)*/
- if(!(uTotalSize - nOffset) &&
+ if(!(uTotalSize - nOffset) &&
(powerRequest.uListenInterval != SIR_NOCHANGE_POWER_VALUE))
{
uTotalSize = 0;
@@ -9712,7 +9712,7 @@ static const struct iw_priv_args we_private_args[] = {
{ WE_SET_TM_LEVEL,
IW_PRIV_TYPE_INT | IW_PRIV_SIZE_FIXED | 1,
- 0,
+ 0,
"setTmLevel" },
#ifdef QCA_WIFI_2_0
@@ -10995,5 +10995,3 @@ int hdd_UnregisterWext(struct net_device *dev)
dev->wireless_handlers = NULL;
return 0;
}
-
-
diff --git a/CORE/HDD/src/wlan_hdd_wowl.c b/CORE/HDD/src/wlan_hdd_wowl.c
index aecb27554c9f..3a7e92a4fe56 100644
--- a/CORE/HDD/src/wlan_hdd_wowl.c
+++ b/CORE/HDD/src/wlan_hdd_wowl.c
@@ -94,13 +94,13 @@ static void dump_hdd_wowl_ptrn(tSirWowlAddBcastPtrn *ptrn)
{
int i;
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatetrnId = 0x%x", __func__,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatetrnId = 0x%x", __func__,
ptrn->ucPatternId);
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternByteOffset = 0x%x", __func__,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternByteOffset = 0x%x", __func__,
ptrn->ucPatternByteOffset);
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternSize = 0x%x", __func__,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternSize = 0x%x", __func__,
ptrn->ucPatternSize);
- VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternMaskSize = 0x%x", __func__,
+ VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: ucPatternMaskSize = 0x%x", __func__,
ptrn->ucPatternMaskSize);
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: Pattern: ", __func__);
for(i = 0; i < ptrn->ucPatternSize; i++)
@@ -120,7 +120,7 @@ static void dump_hdd_wowl_ptrn(tSirWowlAddBcastPtrn *ptrn)
@return : FALSE if any errors encountered
: TRUE otherwise
===========================================================================*/
-v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
+v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
{
tSirWowlAddBcastPtrn localPattern;
int i, first_empty_slot, len, offset;
@@ -134,7 +134,7 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
/* There has to have atleast 1 byte for each field (pattern size, mask size,
* pattern, mask) e.g. PP:QQ:RR:SS ==> 11 chars */
- while ( len >= 11 )
+ while ( len >= 11 )
{
// Detect duplicate pattern
for (i=0; i<pHddCtx->cfg_ini->maxWoWFilters; i++)
@@ -165,45 +165,45 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
// Maximum number of patterns have been configured already
if(first_empty_slot == -1)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Cannot add anymore patterns. No free slot!", __func__);
return VOS_FALSE;
}
//Validate the pattern
- if(ptrn[2] != WOWL_INTRA_PTRN_TOKENIZER ||
+ if(ptrn[2] != WOWL_INTRA_PTRN_TOKENIZER ||
ptrn[5] != WOWL_INTRA_PTRN_TOKENIZER)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Malformed pattern string. Skip!\n", __func__);
- ptrn += len;
+ ptrn += len;
goto next_ptrn;
}
// Extract the pattern size
- localPattern.ucPatternSize =
+ localPattern.ucPatternSize =
( hdd_parse_hex( ptrn[0] ) * 0x10 ) + hdd_parse_hex( ptrn[1] );
// Extract the pattern mask size
- localPattern.ucPatternMaskSize =
+ localPattern.ucPatternMaskSize =
( hdd_parse_hex( ptrn[3] ) * 0x10 ) + hdd_parse_hex( ptrn[4] );
if(localPattern.ucPatternSize > SIR_WOWL_BCAST_PATTERN_MAX_SIZE ||
localPattern.ucPatternMaskSize > WOWL_PTRN_MASK_MAX_SIZE)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Invalid length specified. Skip!\n", __func__);
- ptrn += len;
+ ptrn += len;
goto next_ptrn;
}
//compute the offset of tokenizer after the pattern
offset = 5 + 2*localPattern.ucPatternSize + 1;
- if(offset >= len || ptrn[offset] != WOWL_INTRA_PTRN_TOKENIZER)
+ if(offset >= len || ptrn[offset] != WOWL_INTRA_PTRN_TOKENIZER)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Malformed pattern string..skip!\n", __func__);
- ptrn += len;
+ ptrn += len;
goto next_ptrn;
}
@@ -211,21 +211,21 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
offset = offset + 2*localPattern.ucPatternMaskSize;
if(offset+1 != len) //offset begins with 0
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Malformed pattern string...skip!\n", __func__);
- ptrn += len;
+ ptrn += len;
goto next_ptrn;
}
temp = ptrn;
- // Now advance to where pattern begins
- ptrn += 6;
+ // Now advance to where pattern begins
+ ptrn += 6;
// Extract the pattern
for(i=0; i < localPattern.ucPatternSize; i++)
{
- localPattern.ucPattern[i] =
+ localPattern.ucPattern[i] =
(hdd_parse_hex( ptrn[0] ) * 0x10 ) + hdd_parse_hex( ptrn[1] );
ptrn += 2; //skip to next byte
}
@@ -235,16 +235,16 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
// Extract the pattern Mask
for(i=0; i < localPattern.ucPatternMaskSize; i++)
{
- localPattern.ucPatternMask[i] =
+ localPattern.ucPatternMask[i] =
(hdd_parse_hex( ptrn[0] ) * 0x10 ) + hdd_parse_hex( ptrn[1] );
ptrn += 2; //skip to next byte
}
//All is good. Store the pattern locally
- g_hdd_wowl_ptrns[first_empty_slot] = (char*) kmalloc(len+1, GFP_KERNEL);
- if(g_hdd_wowl_ptrns[first_empty_slot] == NULL)
+ g_hdd_wowl_ptrns[first_empty_slot] = (char*) kmalloc(len+1, GFP_KERNEL);
+ if(g_hdd_wowl_ptrns[first_empty_slot] == NULL)
{
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: kmalloc failure", __func__);
return VOS_FALSE;
}
@@ -260,14 +260,14 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
if ( !HAL_STATUS_SUCCESS( halStatus ) )
{
// Add failed, so invalidate the local storage
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"sme_WowlAddBcastPattern failed with error code (%d)", halStatus );
kfree(g_hdd_wowl_ptrns[first_empty_slot]);
g_hdd_wowl_ptrns[first_empty_slot] = NULL;
}
dump_hdd_wowl_ptrn(&localPattern);
-
+
next_ptrn:
if (*ptrn == WOWL_INTER_PTRN_TOKENIZER)
{
@@ -275,7 +275,7 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
len = find_ptrn_len(ptrn);
continue;
}
- else
+ else
break;
}
@@ -290,7 +290,7 @@ v_BOOL_t hdd_add_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
@return : FALSE if any errors encountered
: TRUE otherwise
===========================================================================*/
-v_BOOL_t hdd_del_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
+v_BOOL_t hdd_del_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
{
tSirWowlDelBcastPtrn delPattern;
unsigned char id;
@@ -318,7 +318,7 @@ v_BOOL_t hdd_del_wowl_ptrn (hdd_adapter_t *pAdapter, const char * ptrn)
if ( HAL_STATUS_SUCCESS( halStatus ) )
{
// Remove from local storage as well
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"Deleted pattern with id %d [%s]", id, g_hdd_wowl_ptrns[id]);
kfree(g_hdd_wowl_ptrns[id]);
@@ -519,7 +519,7 @@ v_BOOL_t hdd_del_wowl_ptrn_debugfs(hdd_adapter_t *pAdapter, v_U8_t pattern_idx)
@return : FALSE if any errors encountered
: TRUE otherwise
===========================================================================*/
-v_BOOL_t hdd_enter_wowl (hdd_adapter_t *pAdapter, v_BOOL_t enable_mp, v_BOOL_t enable_pbm)
+v_BOOL_t hdd_enter_wowl (hdd_adapter_t *pAdapter, v_BOOL_t enable_mp, v_BOOL_t enable_pbm)
{
tSirSmeWowlEnterParams wowParams;
eHalStatus halStatus;
@@ -535,7 +535,7 @@ v_BOOL_t hdd_enter_wowl (hdd_adapter_t *pAdapter, v_BOOL_t enable_mp, v_BOOL_t e
}
// Request to put Libra into WoWL
- halStatus = sme_EnterWowl( hHal, hdd_wowl_callback,
+ halStatus = sme_EnterWowl( hHal, hdd_wowl_callback,
pAdapter,
#ifdef WLAN_WAKEUP_EVENTS
hdd_wowl_wakeIndication_callback,
@@ -548,7 +548,7 @@ v_BOOL_t hdd_enter_wowl (hdd_adapter_t *pAdapter, v_BOOL_t enable_mp, v_BOOL_t e
if ( eHAL_STATUS_PMC_PENDING != halStatus )
{
// We failed to enter WoWL
- VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
+ VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"sme_EnterWowl failed with error code (%d)", halStatus );
return VOS_FALSE;
}
@@ -562,7 +562,7 @@ v_BOOL_t hdd_enter_wowl (hdd_adapter_t *pAdapter, v_BOOL_t enable_mp, v_BOOL_t e
@return : FALSE if any errors encountered
: TRUE otherwise
===========================================================================*/
-v_BOOL_t hdd_exit_wowl (hdd_adapter_t*pAdapter)
+v_BOOL_t hdd_exit_wowl (hdd_adapter_t*pAdapter)
{
tSirSmeWowlExitParams wowParams;
tHalHandle hHal = WLAN_HDD_GET_HAL_CTX(pAdapter);
@@ -583,20 +583,20 @@ v_BOOL_t hdd_exit_wowl (hdd_adapter_t*pAdapter)
/**============================================================================
@brief hdd_init_wowl() - Init function which will initialize the WoWL module
- and perform any required intial configuration
+ and perform any required intial configuration
@return : FALSE if any errors encountered
: TRUE otherwise
===========================================================================*/
-v_BOOL_t hdd_init_wowl (hdd_adapter_t*pAdapter)
+v_BOOL_t hdd_init_wowl (hdd_adapter_t*pAdapter)
{
hdd_context_t *pHddCtx = NULL;
pHddCtx = pAdapter->pHddCtx;
memset(g_hdd_wowl_ptrns, 0, sizeof(g_hdd_wowl_ptrns));
- //Add any statically configured patterns
- hdd_add_wowl_ptrn(pAdapter, pHddCtx->cfg_ini->wowlPattern);
+ //Add any statically configured patterns
+ hdd_add_wowl_ptrn(pAdapter, pHddCtx->cfg_ini->wowlPattern);
return VOS_TRUE;
}
diff --git a/CORE/MAC/inc/qwlan_version.h b/CORE/MAC/inc/qwlan_version.h
index ec497115dcfb..4d08df36c6c2 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 50
+#define QWLAN_VERSION_BUILD 51
-#define QWLAN_VERSIONSTR "1.0.0.50"
+#define QWLAN_VERSIONSTR "1.0.0.51"
#ifdef QCA_WIFI_2_0
diff --git a/CORE/MAC/inc/sirApi.h b/CORE/MAC/inc/sirApi.h
index ecd047720c53..9f0df6aa94f0 100644
--- a/CORE/MAC/inc/sirApi.h
+++ b/CORE/MAC/inc/sirApi.h
@@ -665,7 +665,7 @@ typedef struct sSirSmeStartBssReq
} tSirSmeStartBssReq, *tpSirSmeStartBssReq;
#define GET_IE_LEN_IN_BSS(lenInBss) ( lenInBss + sizeof(lenInBss) - \
- ((int) OFFSET_OF( tSirBssDescription, ieFields)))
+ ((uintptr_t)OFFSET_OF( tSirBssDescription, ieFields)))
#define WSCIE_PROBE_RSP_LEN (317 + 2)
diff --git a/CORE/MAC/src/dph/dphHashTable.c b/CORE/MAC/src/dph/dphHashTable.c
index 0a98194df695..c94290236a20 100644
--- a/CORE/MAC/src/dph/dphHashTable.c
+++ b/CORE/MAC/src/dph/dphHashTable.c
@@ -67,20 +67,12 @@ void dphHashTableClassInit(tpAniSirGlobal pMac, dphHashTableClass* pDphHashTable
{
tANI_U16 i;
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- for (i=0; i <= pDphHashTable->size; i++)
-#else
- for (i=0; i < pDphHashTable->size; i++)
-#endif
+ for (i=0; i<pDphHashTable->size; i++)
{
pDphHashTable->pHashTable[i] = 0;
}
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- for (i=0; i <= pDphHashTable->size; i++)
-#else
- for (i=0; i < pDphHashTable->size; i++)
-#endif
+ for (i=0; i<pDphHashTable->size; i++)
{
pDphHashTable->pDphNodeArray[i].valid = 0;
pDphHashTable->pDphNodeArray[i].added = 0;
@@ -173,11 +165,7 @@ tpDphHashNode dphLookupHashEntry(tpAniSirGlobal pMac, tANI_U8 staAddr[], tANI_U1
tpDphHashNode dphGetHashEntry(tpAniSirGlobal pMac, tANI_U16 peerIdx, dphHashTableClass* pDphHashTable)
{
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- if (peerIdx <= pDphHashTable->size)
-#else
if (peerIdx < pDphHashTable->size)
-#endif
{
if (pDphHashTable->pDphNodeArray[peerIdx].added)
return &pDphHashTable->pDphNodeArray[peerIdx];
@@ -219,11 +207,7 @@ tpDphHashNode dphLookupAssocId(tpAniSirGlobal pMac, tANI_U16 staIdx, tANI_U16*
{
tANI_U8 i;
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- for (i=0; i <= pDphHashTable->size; i++)
-#else
- for (i=0; i < pDphHashTable->size; i++)
-#endif
+ for(i=0; i<pDphHashTable->size; i++)
{
if( (pDphHashTable->pDphNodeArray[i].added) &&
(pDphHashTable->pDphNodeArray[i].staIndex == staIdx))
@@ -233,11 +217,7 @@ tpDphHashNode dphLookupAssocId(tpAniSirGlobal pMac, tANI_U16 staIdx, tANI_U16*
}
}
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- if (i == pDphHashTable->size+1)
-#else
- if (i == pDphHashTable->size)
-#endif
+ if(i==pDphHashTable->size)
return NULL;
return &pDphHashTable->pDphNodeArray[i];
@@ -266,11 +246,7 @@ tpDphHashNode dphInitStaState(tpAniSirGlobal pMac, tSirMacAddr staAddr,
tpDphHashNode pStaDs;
tANI_U16 staIdx = HAL_STA_INVALID_IDX;
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- if (assocId > pDphHashTable->size)
-#else
if (assocId >= pDphHashTable->size)
-#endif
{
PELOGE(limLog(pMac, LOGE, FL("Invalid Assoc Id %d"), assocId);)
return NULL;
@@ -340,17 +316,7 @@ tpDphHashNode dphAddHashEntry(tpAniSirGlobal pMac, tSirMacAddr staAddr, tANI_U16
assocId, index);
dphPrintMacAddr(pMac, staAddr, LOG1);)
- /* In station role, DPH_STA_HASH_INDEX_PEER (index 1) is reserved for peer
- * station index corresponding to AP.Avoid choosing that index and get
- * index starting from (DPH_STA_HASH_INDEX_PEER + 1) (index 2) for TDLS
- * stations; as a result the peer index or associd can be equal to
- * pDphHashTable->size so for TDLS+CLD modifying the condition
- */
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- if (assocId > pDphHashTable->size)
-#else
if (assocId >= pDphHashTable->size)
-#endif
{
PELOGE(limLog(pMac, LOGE, FL("invalid STA id %d"), assocId);)
return NULL;
@@ -427,11 +393,7 @@ tSirRetStatus dphDeleteHashEntry(tpAniSirGlobal pMac, tSirMacAddr staAddr, tANI_
assocId, index);
dphPrintMacAddr(pMac, staAddr, LOG1);)
-#if defined(FEATURE_WLAN_TDLS) && defined(QCA_WIFI_2_0)
- if (assocId > pDphHashTable->size)
-#else
if (assocId >= pDphHashTable->size)
-#endif
{
PELOGE(limLog(pMac, LOGE, FL("invalid STA id %d"), assocId);)
return eSIR_FAILURE;
diff --git a/CORE/MAC/src/pe/lim/limApi.c b/CORE/MAC/src/pe/lim/limApi.c
index c17695a526d8..72373be89df6 100644
--- a/CORE/MAC/src/pe/lim/limApi.c
+++ b/CORE/MAC/src/pe/lim/limApi.c
@@ -357,12 +357,7 @@ static void __limInitAssocVars(tpAniSirGlobal pMac)
{
limLog( pMac, LOGP, FL( "cfg get assoc sta limit failed" ));
}
-#ifdef QCA_WIFI_2_0
- /* This +1 is done because of peerIdx assign logic in limAssignPeerIdx */
- pMac->lim.gLimAssocStaLimit = val + 1;
-#else
pMac->lim.gLimAssocStaLimit = val;
-#endif
pMac->lim.gLimIbssStaLimit = val;
// Place holder for current authentication request
// being handled
@@ -981,7 +976,7 @@ tSirRetStatus peOpen(tpAniSirGlobal pMac, tMacOpenParameters *pMacOpenParam)
return eSIR_FAILURE;
}
- pMac->lim.limTimers.gpLimCnfWaitTimer = vos_mem_malloc(sizeof(TX_TIMER) * pMac->lim.maxStation);
+ pMac->lim.limTimers.gpLimCnfWaitTimer = vos_mem_malloc(sizeof(TX_TIMER) * (pMac->lim.maxStation + 1));
if (NULL == pMac->lim.limTimers.gpLimCnfWaitTimer)
{
PELOGE(limLog(pMac, LOGE, FL("memory allocate failed!"));)
diff --git a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
index f6947a555d62..62c600421eba 100644
--- a/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
+++ b/CORE/MAC/src/pe/lim/limProcessCfgUpdates.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -597,12 +597,7 @@ limHandleCFGparamUpdate(tpAniSirGlobal pMac, tANI_U32 cfgId)
limLog( pMac, LOGE, FL( "Unable to get WNI_CFG_ASSOC_STA_LIMIT" ));
break;
}
-#ifdef QCA_WIFI_2_0
- /* This +1 is done becuse of peerIdx assign logic in limAssignPeerIdx */
- pMac->lim.gLimAssocStaLimit = (tANI_U16)val1 + 1;
-#else
pMac->lim.gLimAssocStaLimit = (tANI_U16)val1;
-#endif
break;
case WNI_CFG_DEL_ALL_RX_BA_SESSIONS_2_4_G_BTC:
@@ -787,17 +782,10 @@ limUpdateConfig(tpAniSirGlobal pMac,tpPESession psessionEntry)
}
val = WNI_CFG_ASSOC_STA_LIMIT_STADEF;
}
-#ifdef QCA_WIFI_2_0
- /* This +1 is done becuse of peerIdx assign logic in limAssignPeerIdx */
- pMac->lim.gLimAssocStaLimit =(tANI_U16) val + 1;
-#else
pMac->lim.gLimAssocStaLimit = (tANI_U16)val;
-#endif
#if defined WLAN_FEATURE_VOWIFI
rrmUpdateConfig( pMac, psessionEntry );
#endif
PELOG1(limLog(pMac, LOG1, FL("Updated Lim shadow state based on CFG"));)
-
-
}
diff --git a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
index 53d927eba8cc..696c81796679 100644
--- a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
@@ -3236,7 +3236,7 @@ void limProcessMlmSetStaKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ )
if( eLIM_MLM_WT_SET_STA_KEY_STATE != psessionEntry->limMlmState )
{
// Mesg received from HAL in Invalid state!
- limLog( pMac, LOGW, FL( "Received unexpected [Mesg Id - %d] in state %X" ), limMsgQ->type, psessionEntry->limMlmState );
+ limLog( pMac, LOGE, FL( "Received unexpected [Mesg Id - %d] in state %X" ), limMsgQ->type, psessionEntry->limMlmState );
// There's not much that MLME can do at this stage...
respReqd = 0;
}
@@ -3303,7 +3303,7 @@ void limProcessMlmSetBssKeyRsp( tpAniSirGlobal pMac, tpSirMsgQ limMsgQ )
eLIM_MLM_WT_SET_STA_BCASTKEY_STATE != psessionEntry->limMlmState )
{
// Mesg received from HAL in Invalid state!
- limLog( pMac, LOGW, FL( "Received unexpected [Mesg Id - %d] in state %X" ), limMsgQ->type, psessionEntry->limMlmState );
+ limLog( pMac, LOGE, FL( "Received unexpected [Mesg Id - %d] in state %X" ), limMsgQ->type, psessionEntry->limMlmState );
// There's not much that MLME can do at this stage...
respReqd = 0;
}
diff --git a/CORE/MAC/src/pe/lim/limSerDesUtils.c b/CORE/MAC/src/pe/lim/limSerDesUtils.c
index db88848b8a7f..2ac0f897b3ff 100644
--- a/CORE/MAC/src/pe/lim/limSerDesUtils.c
+++ b/CORE/MAC/src/pe/lim/limSerDesUtils.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -2323,23 +2323,23 @@ limIsSmeGetAssocSTAsReqValid(tpAniSirGlobal pMac, tpSirSmeGetAssocSTAsReq pGetAs
return eSIR_FAILURE;
// Extract pUsrContext
- pGetAssocSTAsReq->pUsrContext = (void *)limGetU32(pBuf);
- pBuf += sizeof(tANI_U32);
- len -= sizeof(tANI_U32);
+ vos_mem_copy((tANI_U8 *)pGetAssocSTAsReq->pUsrContext, pBuf, sizeof(void*));
+ pBuf += sizeof(void*);
+ len -= sizeof(void*);
if (limCheckRemainingLength(pMac, len) == eSIR_FAILURE)
return eSIR_FAILURE;
// Extract pSapEventCallback
- pGetAssocSTAsReq->pSapEventCallback = (void *)limGetU32(pBuf);
- pBuf += sizeof(tANI_U32);
- len -= sizeof(tANI_U32);
+ vos_mem_copy((tANI_U8 *)pGetAssocSTAsReq->pSapEventCallback, pBuf, sizeof(void*));
+ pBuf += sizeof(void*);
+ len -= sizeof(void*);
if (limCheckRemainingLength(pMac, len) == eSIR_FAILURE)
return eSIR_FAILURE;
// Extract pAssocStasArray
- pGetAssocSTAsReq->pAssocStasArray = (void *)limGetU32(pBuf);
- pBuf += sizeof(tANI_U32);
- len -= sizeof(tANI_U32);
+ vos_mem_copy((tANI_U8 *)pGetAssocSTAsReq->pAssocStasArray, pBuf, sizeof(void*));
+ pBuf += sizeof(void*);
+ len -= sizeof(void*);
PELOG1(limLog(pMac, LOG1, FL("SME_GET_ASSOC_STAS_REQ length consumed %d bytes "), len);)
@@ -2476,16 +2476,16 @@ limIsSmeGetWPSPBCSessionsReqValid(tpAniSirGlobal pMac, tSirSmeGetWPSPBCSessionsR
return eSIR_FAILURE;
// Extract pUsrContext
- pGetWPSPBCSessionsReq->pUsrContext = (void *)limGetU32(pBuf);
- pBuf += sizeof(tANI_U32);
- len -= sizeof(tANI_U32);
+ vos_mem_copy((tANI_U8 *)pGetWPSPBCSessionsReq->pUsrContext, pBuf, sizeof(void*));
+ pBuf += sizeof(void*);
+ len -= sizeof(void*);
if (limCheckRemainingLength(pMac, len) == eSIR_FAILURE)
return eSIR_FAILURE;
// Extract pSapEventCallback
- pGetWPSPBCSessionsReq->pSapEventCallback = (void *)limGetU32(pBuf);
- pBuf += sizeof(tANI_U32);
- len -= sizeof(tANI_U32);
+ vos_mem_copy((tANI_U8 *)pGetWPSPBCSessionsReq->pSapEventCallback, pBuf, sizeof(void*));
+ pBuf += sizeof(void*);
+ len -= sizeof(void*);
if (limCheckRemainingLength(pMac, len) == eSIR_FAILURE)
return eSIR_FAILURE;
diff --git a/CORE/MAC/src/pe/lim/limSession.c b/CORE/MAC/src/pe/lim/limSession.c
index 2e02c9529e0b..0714048c5499 100644
--- a/CORE/MAC/src/pe/lim/limSession.c
+++ b/CORE/MAC/src/pe/lim/limSession.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -110,23 +110,38 @@ tpPESession peCreateSession(tpAniSirGlobal pMac, tANI_U8 *bssid, tANI_U8* sessio
vos_mem_set((void*)&pMac->lim.gpSession[i], sizeof(tPESession), 0);
//Allocate space for Station Table for this session.
+#ifdef QCA_WIFI_2_0
pMac->lim.gpSession[i].dph.dphHashTable.pHashTable = vos_mem_malloc(
- sizeof(tpDphHashNode)*numSta);
+ sizeof(tpDphHashNode)* (numSta + 1));
+#else
+ pMac->lim.gpSession[i].dph.dphHashTable.pHashTable = vos_mem_malloc(
+ sizeof(tpDphHashNode)*numSta);
+#endif
if ( NULL == pMac->lim.gpSession[i].dph.dphHashTable.pHashTable )
{
limLog(pMac, LOGE, FL("memory allocate failed!"));
return NULL;
}
-
+#ifdef QCA_WIFI_2_0
+ pMac->lim.gpSession[i].dph.dphHashTable.pDphNodeArray = vos_mem_malloc(
+ sizeof(tDphHashNode) * (numSta + 1));
+#else
pMac->lim.gpSession[i].dph.dphHashTable.pDphNodeArray = vos_mem_malloc(
sizeof(tDphHashNode)*numSta);
+#endif
if ( NULL == pMac->lim.gpSession[i].dph.dphHashTable.pDphNodeArray )
{
limLog(pMac, LOGE, FL("memory allocate failed!"));
vos_mem_free(pMac->lim.gpSession[i].dph.dphHashTable.pHashTable);
+ pMac->lim.gpSession[i].dph.dphHashTable.pHashTable = NULL;
return NULL;
}
+
+#ifdef QCA_WIFI_2_0
+ pMac->lim.gpSession[i].dph.dphHashTable.size = numSta + 1;
+#else
pMac->lim.gpSession[i].dph.dphHashTable.size = numSta;
+#endif
dphHashTableClassInit(pMac,
&pMac->lim.gpSession[i].dph.dphHashTable);
@@ -138,6 +153,8 @@ tpPESession peCreateSession(tpAniSirGlobal pMac, tANI_U8 *bssid, tANI_U8* sessio
PELOGE(limLog(pMac, LOGE, FL("memory allocate failed!"));)
vos_mem_free(pMac->lim.gpSession[i].dph.dphHashTable.pHashTable);
vos_mem_free(pMac->lim.gpSession[i].dph.dphHashTable.pDphNodeArray);
+ pMac->lim.gpSession[i].dph.dphHashTable.pHashTable = NULL;
+ pMac->lim.gpSession[i].dph.dphHashTable.pDphNodeArray = NULL;
return NULL;
}
vos_mem_set(pMac->lim.gpSession[i].gpLimPeerIdxpool,
@@ -349,7 +366,7 @@ void peDeleteSession(tpAniSirGlobal pMac, tpPESession psessionEntry)
limLog(pMac, LOGW, FL("Trying to delete a session %d"), psessionEntry->peSessionId);
- for (n = 0; n < pMac->lim.maxStation; n++)
+ for (n = 0; n < (pMac->lim.maxStation + 1); n++)
{
timer_ptr = &pMac->lim.limTimers.gpLimCnfWaitTimer[n];
diff --git a/CORE/MAC/src/pe/lim/limTimerUtils.c b/CORE/MAC/src/pe/lim/limTimerUtils.c
index 3030ef5482df..c07dcd12bd84 100644
--- a/CORE/MAC/src/pe/lim/limTimerUtils.c
+++ b/CORE/MAC/src/pe/lim/limTimerUtils.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -564,7 +564,7 @@ limCreateTimers(tpAniSirGlobal pMac)
}
cfgValue = SYS_MS_TO_TICKS(cfgValue);
- for (i=0; i<pMac->lim.maxStation; i++)
+ for (i=0; i < (pMac->lim.maxStation + 1); i++)
{
if (tx_timer_create(&pMac->lim.limTimers.gpLimCnfWaitTimer[i],
"CNF_MISS_TIMEOUT",
diff --git a/CORE/MAC/src/pe/lim/limUtils.c b/CORE/MAC/src/pe/lim/limUtils.c
index 8b430a606ca2..cb75ece63303 100644
--- a/CORE/MAC/src/pe/lim/limUtils.c
+++ b/CORE/MAC/src/pe/lim/limUtils.c
@@ -1017,7 +1017,7 @@ limCleanupMlm(tpAniSirGlobal pMac)
// Deactivate and delete cnf wait timer
- for (n = 0; n < pMac->lim.maxStation; n++)
+ for (n = 0; n < (pMac->lim.maxStation + 1); n++)
{
tx_timer_deactivate(&pMac->lim.limTimers.gpLimCnfWaitTimer[n]);
tx_timer_delete(&pMac->lim.limTimers.gpLimCnfWaitTimer[n]);
diff --git a/CORE/SAP/inc/sapApi.h b/CORE/SAP/inc/sapApi.h
index f8dcb3e98821..7fbcd4802548 100644
--- a/CORE/SAP/inc/sapApi.h
+++ b/CORE/SAP/inc/sapApi.h
@@ -30,12 +30,12 @@
/*===========================================================================
- W L A N S O F T A P P A L L A Y E R
+ W L A N S O F T A P P A L L A Y E R
E X T E R N A L A P I
-
-
+
+
DESCRIPTION
- This file contains the external API exposed by the wlan SAP PAL layer
+ This file contains the external API exposed by the wlan SAP PAL layer
module.
===========================================================================*/
@@ -69,8 +69,8 @@ when who what, where, why
/*----------------------------------------------------------------------------
* Include Files
* -------------------------------------------------------------------------*/
-#include "vos_api.h"
-#include "vos_packet.h"
+#include "vos_api.h"
+#include "vos_packet.h"
#include "vos_types.h"
#include "p2p_Api.h"
@@ -80,14 +80,14 @@ when who what, where, why
* -------------------------------------------------------------------------*/
#ifdef __cplusplus
extern "C" {
- #endif
-
+ #endif
+
/*----------------------------------------------------------------------------
* Defines
* -------------------------------------------------------------------------*/
-
+
/*--------------------------------------------------------------------------
defines and enum
------------------------------------------------------------------------*/
@@ -110,12 +110,12 @@ when who what, where, why
reasonCode take form 802.11 standard Table 7-22 to be passed to WLANSAP_DisassocSta api.
------------------------------------------------------------------------*/
-typedef enum{
- eSAP_RC_RESERVED0, /*0*/
- eSAP_RC_UNSPECIFIED, /*1*/
- eSAP_RC_PREV_AUTH_INVALID, /*2*/
- eSAP_RC_STA_LEFT_DEAUTH, /*3*/
- eSAP_RC_INACTIVITY_DISASSOC, /*4*/
+typedef enum{
+ eSAP_RC_RESERVED0, /*0*/
+ eSAP_RC_UNSPECIFIED, /*1*/
+ eSAP_RC_PREV_AUTH_INVALID, /*2*/
+ eSAP_RC_STA_LEFT_DEAUTH, /*3*/
+ eSAP_RC_INACTIVITY_DISASSOC, /*4*/
eSAP_RC_AP_CAPACITY_FULL, /*5*/
eSAP_RC_CLS2_FROM_NON_AUTH_STA, /*6*/
eSAP_RC_CLS3_FROM_NON_AUTH_STA, /*7*/
@@ -136,14 +136,14 @@ typedef enum{
eSAP_RC_INVALID_RSN, /*22*/
eSAP_RC_1X_AUTH_FAILED, /*23*/
eSAP_RC_CHIPER_SUITE_REJECTED, /*24*/
-}eSapReasonCode;
+}eSapReasonCode;
typedef enum {
eSAP_DOT11_MODE_abg = 0x0001,
eSAP_DOT11_MODE_11a = 0x0002,
- eSAP_DOT11_MODE_11b = 0x0004,
- eSAP_DOT11_MODE_11g = 0x0008,
- eSAP_DOT11_MODE_11n = 0x0010,
+ eSAP_DOT11_MODE_11b = 0x0004,
+ eSAP_DOT11_MODE_11g = 0x0008,
+ eSAP_DOT11_MODE_11n = 0x0010,
eSAP_DOT11_MODE_11g_ONLY = 0x0080,
eSAP_DOT11_MODE_11n_ONLY = 0x0100,
eSAP_DOT11_MODE_11b_ONLY = 0x0400,
@@ -173,17 +173,17 @@ typedef enum {
typedef enum {
eSAP_START_BSS_EVENT = 0, /*Event sent when BSS is started*/
eSAP_STOP_BSS_EVENT, /*Event sent when BSS is stopped*/
- eSAP_STA_ASSOC_IND, /* Indicate the association request to upper layers */
- eSAP_STA_ASSOC_EVENT, /*Event sent when we have successfully associated a station and
+ eSAP_STA_ASSOC_IND, /* Indicate the association request to upper layers */
+ eSAP_STA_ASSOC_EVENT, /*Event sent when we have successfully associated a station and
upper layer neeeds to allocate a context*/
- eSAP_STA_REASSOC_EVENT, /*Event sent when we have successfully reassociated a station and
+ eSAP_STA_REASSOC_EVENT, /*Event sent when we have successfully reassociated a station and
upper layer neeeds to allocate a context*/
eSAP_STA_DISASSOC_EVENT, /*Event sent when associated a station has disassociated as a result of various conditions */
eSAP_STA_SET_KEY_EVENT, /*Event sent when user called WLANSAP_SetKeySta */
eSAP_STA_DEL_KEY_EVENT, /*Event sent when user called WLANSAP_DelKeySta */
eSAP_STA_MIC_FAILURE_EVENT, /*Event sent whenever there is MIC failure detected */
eSAP_ASSOC_STA_CALLBACK_EVENT, /*Event sent when user called WLANSAP_GetAssocStations */
- eSAP_GET_WPSPBC_SESSION_EVENT, /* Event send when user call WLANSAP_getWpsSessionOverlap */
+ eSAP_GET_WPSPBC_SESSION_EVENT, /* Event send when user call WLANSAP_getWpsSessionOverlap */
eSAP_WPS_PBC_PROBE_REQ_EVENT, /* Event send on WPS PBC probe request is received */
eSAP_INDICATE_MGMT_FRAME,
eSAP_REMAIN_CHAN_READY,
@@ -199,12 +199,12 @@ typedef enum {
eSAP_OPEN_SYSTEM,
eSAP_SHARED_KEY,
eSAP_AUTO_SWITCH
- } eSapAuthType;
+ } eSapAuthType;
typedef enum {
eSAP_MAC_INITATED_DISASSOC = 0x10000, /*Disassociation was internally initated from CORE stack*/
eSAP_USR_INITATED_DISASSOC /*Disassociation was internally initated from host by invoking WLANSAP_DisassocSta call*/
- } eSapDisassocReason;
+ } eSapDisassocReason;
/*Handle boolean over here*/
typedef enum {
@@ -213,8 +213,8 @@ typedef enum {
}eSapBool;
/*---------------------------------------------------------------------------
-SAP PAL "status" and "reason" error code defines
- ---------------------------------------------------------------------------*/
+SAP PAL "status" and "reason" error code defines
+ ---------------------------------------------------------------------------*/
typedef enum {
eSAP_STATUS_SUCCESS, /* Success. */
eSAP_STATUS_FAILURE, /* General Failure. */
@@ -223,8 +223,8 @@ typedef enum {
}eSapStatus;
/*---------------------------------------------------------------------------
-SAP PAL "status" and "reason" error code defines
- ---------------------------------------------------------------------------*/
+SAP PAL "status" and "reason" error code defines
+ ---------------------------------------------------------------------------*/
typedef enum {
eSAP_WPSPBC_OVERLAP_IN120S, /* Overlap */
eSAP_WPSPBC_NO_WPSPBC_PROBE_REQ_IN120S, /* no WPS probe request in 120 second */
@@ -267,7 +267,7 @@ typedef struct sap_StationAssocReassocCompleteEvent_s {
v_U8_t status;
v_U8_t ies[MAX_ASSOC_IND_IE_LEN];
v_U16_t iesLen;
- v_U32_t statusCode;
+ v_U32_t statusCode;
eSapAuthType SapAuthType;
v_BOOL_t wmmEnabled;
// Required for indicating the frames to upper layer
@@ -276,7 +276,7 @@ typedef struct sap_StationAssocReassocCompleteEvent_s {
tANI_U32 assocReqLength;
tANI_U8* assocReqPtr;
tANI_U32 assocRespLength;
- tANI_U8* assocRespPtr;
+ tANI_U8* assocRespPtr;
tANI_U8 timingMeasCap;
} tSap_StationAssocReassocCompleteEvent;
@@ -301,7 +301,7 @@ typedef struct sap_StationDeleteKeyCompleteEvent_s {
/*struct corresponding to SAP_STA_MIC_FAILURE_EVENT */
typedef struct sap_StationMICFailureEvent_s {
- v_MACADDR_t srcMacAddr; //address used to compute MIC
+ v_MACADDR_t srcMacAddr; //address used to compute MIC
v_MACADDR_t staMac; //taMacAddr transmitter address
v_MACADDR_t dstMacAddr;
eSapBool multicast;
@@ -326,43 +326,43 @@ typedef struct sap_AssocMacAddr_s {
typedef struct sap_AssocStaListEvent_s {
VOS_MODULE_ID module; /* module id that was passed in WLANSAP_GetAssocStations API*/
v_U8_t noOfAssocSta; /* Number of associated stations*/
- tpSap_AssocMacAddr pAssocStas; /*Pointer to pre allocated memory to obtain list of associated
+ tpSap_AssocMacAddr pAssocStas; /*Pointer to pre allocated memory to obtain list of associated
stations passed in WLANSAP_GetAssocStations API*/
} tSap_AssocStaListEvent;
-
+
typedef struct sap_GetWPSPBCSessionEvent_s {
v_U8_t status;
- VOS_MODULE_ID module; /* module id that was passed in WLANSAP_GetAssocStations API*/
+ VOS_MODULE_ID module; /* module id that was passed in WLANSAP_GetAssocStations API*/
v_U8_t UUID_E[16]; // Unique identifier of the AP.
- v_MACADDR_t addr;
+ v_MACADDR_t addr;
eWPSPBCOverlap wpsPBCOverlap;
-} tSap_GetWPSPBCSessionEvent;
+} tSap_GetWPSPBCSessionEvent;
typedef struct sap_WPSPBCProbeReqEvent_s {
v_U8_t status;
- VOS_MODULE_ID module; /* module id that was passed in WLANSAP_GetAssocStations API*/
+ VOS_MODULE_ID module; /* module id that was passed in WLANSAP_GetAssocStations API*/
tSirWPSPBCProbeReq WPSPBCProbeReq;
-} tSap_WPSPBCProbeReqEvent;
+} tSap_WPSPBCProbeReqEvent;
typedef struct sap_ManagementFrameInfo_s {
tANI_U32 nFrameLength;
tANI_U8 frameType;
- tANI_U32 rxChan; //Channel of where packet is received
+ tANI_U32 rxChan; //Channel of where packet is received
tANI_U8 *pbFrames; //Point to a buffer contain the beacon, assoc req, assoc rsp frame, in that order
//user needs to use nBeaconLength, nAssocReqLength, nAssocRspLength to desice where
//each frame starts and ends.
} tSap_ManagementFrameInfo;
typedef struct sap_SendActionCnf_s {
- eSapStatus actionSendSuccess;
+ eSapStatus actionSendSuccess;
} tSap_SendActionCnf;
typedef struct sap_UnknownSTAJoinEvent_s {
- v_MACADDR_t macaddr;
+ v_MACADDR_t macaddr;
} tSap_UnknownSTAJoinEvent;
typedef struct sap_MaxAssocExceededEvent_s {
- v_MACADDR_t macaddr;
+ v_MACADDR_t macaddr;
} tSap_MaxAssocExceededEvent;
typedef struct sap_OperatingChannelChangeEvent_s {
@@ -378,7 +378,7 @@ typedef struct sap_Event_s {
union {
tSap_StartBssCompleteEvent sapStartBssCompleteEvent; /*SAP_START_BSS_EVENT*/
tSap_StopBssCompleteEvent sapStopBssCompleteEvent; /*SAP_STOP_BSS_EVENT*/
- tSap_StationAssocIndication sapAssocIndication; /*SAP_ASSOC_INDICATION */
+ tSap_StationAssocIndication sapAssocIndication; /*SAP_ASSOC_INDICATION */
tSap_StationAssocReassocCompleteEvent sapStationAssocReassocCompleteEvent; /*SAP_STA_ASSOC_EVENT, SAP_STA_REASSOC_EVENT*/
tSap_StationDisassocCompleteEvent sapStationDisassocCompleteEvent;/*SAP_STA_DISASSOC_EVENT*/
tSap_StationSetKeyCompleteEvent sapStationSetKeyCompleteEvent;/*SAP_STA_SET_KEY_EVENT*/
@@ -388,7 +388,7 @@ typedef struct sap_Event_s {
tSap_GetWPSPBCSessionEvent sapGetWPSPBCSessionEvent; /*SAP_GET_WPSPBC_SESSION_EVENT */
tSap_WPSPBCProbeReqEvent sapPBCProbeReqEvent; /*eSAP_WPS_PBC_PROBE_REQ_EVENT */
tSap_ManagementFrameInfo sapManagementFrameInfo; /*eSAP_INDICATE_MGMT_FRAME*/
- tSap_SendActionCnf sapActionCnf; /* eSAP_SEND_ACTION_CNF */
+ tSap_SendActionCnf sapActionCnf; /* eSAP_SEND_ACTION_CNF */
tSap_UnknownSTAJoinEvent sapUnknownSTAJoin; /* eSAP_UNKNOWN_STA_JOIN */
tSap_MaxAssocExceededEvent sapMaxAssocExceeded; /* eSAP_MAX_ASSOC_EXCEEDED */
tSap_OperatingChannelChangeEvent sapChannelChange; /* eSAP_CHANNEL_CHANGE_EVENT */
@@ -416,7 +416,7 @@ typedef struct sap_Config {
v_BOOL_t obssProtEnabled; /*Specify if OBSS protection is enabled or disabled*/
v_MACADDR_t deny_mac[MAX_ACL_MAC_ADDRESS]; /* MAC filtering */
v_MACADDR_t self_macaddr; //self macaddress or BSSID
-
+
v_U8_t channel; /* Operation channel */
v_U8_t max_num_sta; /* maximum number of STAs in station table */
v_U8_t dtim_period; /* dtim interval */
@@ -482,7 +482,7 @@ typedef struct sSapText {
typedef struct sap_WPSProbeRspIE_s {
v_U32_t FieldPresent;
v_U32_t Version; // Version. 0x10 = version 1.0, 0x11 = etc.
- v_U32_t wpsState; // 1 = unconfigured, 2 = configured.
+ v_U32_t wpsState; // 1 = unconfigured, 2 = configured.
v_BOOL_t APSetupLocked; // Must be included if value is TRUE
v_BOOL_t SelectedRegistra; //BOOL: indicates if the user has recently activated a Registrar to add an Enrollee.
v_U16_t DevicePasswordID; // Device Password ID
@@ -513,7 +513,7 @@ typedef struct sap_WPSProbeRspIE_s {
typedef struct sap_WPSBeaconIE_s {
v_U32_t FieldPresent;
v_U32_t Version; // Version. 0x10 = version 1.0, 0x11 = etc.
- v_U32_t wpsState; // 1 = unconfigured, 2 = configured.
+ v_U32_t wpsState; // 1 = unconfigured, 2 = configured.
v_BOOL_t APSetupLocked; // Must be included if value is TRUE
v_BOOL_t SelectedRegistra; //BOOL: indicates if the user has recently activated a Registrar to add an Enrollee.
v_U16_t DevicePasswordID; // Device Password ID
@@ -576,24 +576,24 @@ void sapCleanupAllChannelList(void);
/*==========================================================================
FUNCTION WLANSAP_Set_WpsIe
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to set WPS IE.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
pWPSIE: tSap_WPSIE structure for the station
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_Set_WpsIe
@@ -604,23 +604,23 @@ WLANSAP_Set_WpsIe
/*==========================================================================
FUNCTION WLANSAP_Update_WpsIe
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to start WPS session.
DEPENDENCIES
- NA.
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_Update_WpsIe
@@ -631,23 +631,23 @@ WLANSAP_Update_WpsIe
/*==========================================================================
FUNCTION WLANSAP_Stop_Wps
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to stop WPS session.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_Stop_Wps
@@ -658,11 +658,11 @@ WLANSAP_Stop_Wps
/*==========================================================================
FUNCTION WLANSAP_Get_WPS_State
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to get WPS state.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -671,22 +671,22 @@ pvosGCtx: Pointer to vos global context structure
OUT
pbWPSState: Pointer to variable to indicate if it is in WPS Registration state
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_Get_WPS_State
(
v_PVOID_t pvosGCtx, v_BOOL_t * pbWPSState
-);
+);
/*----------------------------------------------------------------------------
- * Opaque SAP handle Type Declaration
+ * Opaque SAP handle Type Declaration
* -------------------------------------------------------------------------*/
typedef v_PVOID_t tSapHandle, *ptSapHandle;
@@ -698,149 +698,149 @@ typedef v_PVOID_t tSapHandle, *ptSapHandle;
/*==========================================================================
FUNCTION WLANSAP_Open
- DESCRIPTION
- Called at driver initialization (vos_open). SAP will initialize
- all its internal resources and will wait for the call to start to
- register with the other modules.
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ Called at driver initialization (vos_open). SAP will initialize
+ all its internal resources and will wait for the call to start to
+ register with the other modules.
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
- pvosGCtx: pointer to the global vos context; a handle to SAP's
- control block can be extracted from its context
-
+ pvosGCtx: pointer to the global vos context; a handle to SAP's
+ control block can be extracted from its context
+
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_Open
-(
- v_PVOID_t pvosGCtx
+(
+ v_PVOID_t pvosGCtx
);
/*==========================================================================
FUNCTION WLANSAP_Start
- DESCRIPTION
- Called as part of the overall start procedure (vos_start).
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ Called as part of the overall start procedure (vos_start).
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
- pvosGCtx: pointer to the global vos context; a handle to SAP's
- control block can be extracted from its context
-
+ pvosGCtx: pointer to the global vos context; a handle to SAP's
+ control block can be extracted from its context
+
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
Other codes can be returned as a result of a BAL failure;
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_Start
-(
- v_PVOID_t pvosGCtx
+(
+ v_PVOID_t pvosGCtx
);
/*==========================================================================
FUNCTION WLANSAP_Stop
- DESCRIPTION
- Called by vos_stop to stop operation in SAP, before close.
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ Called by vos_stop to stop operation in SAP, before close.
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
- pvosGCtx: pointer to the global vos context; a handle to SAP's
- control block can be extracted from its context
-
+ pvosGCtx: pointer to the global vos context; a handle to SAP's
+ control block can be extracted from its context
+
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_Stop
-(
- v_PVOID_t pvosGCtx
+(
+ v_PVOID_t pvosGCtx
);
/*==========================================================================
FUNCTION WLANSAP_Close
- DESCRIPTION
- Called by vos_close during general driver close procedure. SAP will clean up
- all the internal resources.
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ Called by vos_close during general driver close procedure. SAP will clean up
+ all the internal resources.
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
- pvosGCtx: pointer to the global vos context; a handle to SAP's
- control block can be extracted from its context
-
+ pvosGCtx: pointer to the global vos context; a handle to SAP's
+ control block can be extracted from its context
+
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_Close
-(
- v_PVOID_t pvosGCtx
+(
+ v_PVOID_t pvosGCtx
);
/*==========================================================================
FUNCTION (*tpWLAN_SAPEventCB)
- DESCRIPTION
- Implements the callback for ALL asynchronous events.
+ DESCRIPTION
+ Implements the callback for ALL asynchronous events.
Including Events resulting from:
- * Start BSS
+ * Start BSS
* Stop BSS,...
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
pSapEvent: pointer to the union of "Sap Event" structures. This now encodes ALL event types.
Including Command Complete and Command Status
pUsrContext : pUsrContext parameter that was passed to sapStartBss
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
VOS_STATUS_E_FAULT: pointer to pSapEvent is NULL
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
typedef VOS_STATUS (*tpWLAN_SAPEventCB)( tpSap_Event pSapEvent, v_PVOID_t pUsrContext);
@@ -849,18 +849,18 @@ typedef VOS_STATUS (*tpWLAN_SAPEventCB)( tpSap_Event pSapEvent, v_PVOID_t pUsrC
/*==========================================================================
FUNCTION WLANSAP_getState
- DESCRIPTION
+ DESCRIPTION
This api returns the current SAP state to the caller.
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
pContext : Pointer to Sap Context structure
RETURN VALUE
- Returns the SAP FSM state.
+ Returns the SAP FSM state.
============================================================================*/
v_U8_t WLANSAP_getState ( v_PVOID_t pvosGCtx);
@@ -868,14 +868,14 @@ v_U8_t WLANSAP_getState ( v_PVOID_t pvosGCtx);
/*==========================================================================
FUNCTION WLANSAP_StartBss
- DESCRIPTION
+ DESCRIPTION
This api function provides SAP FSM event eWLAN_SAP_HDD_PHYSICAL_LINK_CREATE for
-starting AP BSS
+starting AP BSS
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
@@ -883,19 +883,19 @@ pConfig: Pointer to configuration structure passed down from HDD(HostApd for And
hdd_SapEventCallback: Callback function in HDD called by SAP to inform HDD about SAP results
usrDataForCallback: Parameter that will be passed back in all the SAP callback events.
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_StartBss
(
- v_PVOID_t pvosGCtx,
- tpWLAN_SAPEventCB pSapEventCallback,
+ v_PVOID_t pvosGCtx,
+ tpWLAN_SAPEventCB pSapEventCallback,
tsap_Config_t *pConfig, v_PVOID_t pUsrContext
);
@@ -934,26 +934,26 @@ WLANSAP_SetMacACL
/*==========================================================================
FUNCTION WLANSAP_Stop
- DESCRIPTION
+ DESCRIPTION
This api function provides SAP FSM event eWLAN_SAP_HDD_PHYSICAL_LINK_DISCONNECT for
-stopping BSS
+stopping BSS
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS W
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_StopBss
(
v_PVOID_t pvosGCtx
@@ -962,26 +962,26 @@ WLANSAP_StopBss
/*==========================================================================
FUNCTION WLANSAP_DisassocSta
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD initiated disassociation of station
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx : Pointer to vos global context structure
pPeerStaMac : Mac address of the station to disassociate
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_DisassocSta
(
v_PVOID_t pvosGCtx, v_U8_t *pPeerStaMac
@@ -990,26 +990,26 @@ WLANSAP_DisassocSta
/*==========================================================================
FUNCTION WLANSAP_DeauthSta
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD initiated deauthentication of station
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx : Pointer to vos global context structure
pPeerStaMac : Mac address of the station to deauthenticate
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_DeauthSta
(
v_PVOID_t pvosGCtx, v_U8_t *pPeerStaMac
@@ -1018,11 +1018,11 @@ WLANSAP_DeauthSta
/*==========================================================================
FUNCTION WLANSAP_SetChannelRange
- DESCRIPTION
+ DESCRIPTION
This api function sets the range of channels for SoftAP.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1030,84 +1030,84 @@ WLANSAP_DeauthSta
startChannel : start channel
endChannel : End channel
operatingBand : Operating band (2.4GHz/5GHz)
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
-WLANSAP_SetChannelRange(tHalHandle hHal,v_U8_t startChannel, v_U8_t endChannel,
+WLANSAP_SetChannelRange(tHalHandle hHal,v_U8_t startChannel, v_U8_t endChannel,
v_U8_t operatingBand);
/*==========================================================================
FUNCTION WLANSAP_SetKeySta
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to delete key for a station.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
pSetKeyInfo: tCsrRoamSetKey structure for the station
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_SetKeySta
(
v_PVOID_t pvosGCtx, tCsrRoamSetKey *pSetKeyInfo
-);
+);
/*==========================================================================
FUNCTION WLANSAP_DelKeySta
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to delete key for a station.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
pSetKeyInfo: tCsrRoamSetKey structure for the station
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_DelKeySta
(
v_PVOID_t pvosGCtx, tCsrRoamRemoveKey *pDelKeyInfo
-);
+);
/*==========================================================================
FUNCTION WLANSAP_GetAssocStations
- DESCRIPTION
+ DESCRIPTION
This api function is used to probe the list of associated stations from various modules of CORE stack
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1117,44 +1117,44 @@ mod: Module from whom list of associtated stations is supposed to be probed. If
then by default VOS_MODULE_ID_PE will be probed
IN/OUT
pNoOfAssocStas:- Number of associated stations that are known to the module specified in mod parameter
-pAssocStas: Pointer to list of associated stations that are known to the module specified in mod parameter
+pAssocStas: Pointer to list of associated stations that are known to the module specified in mod parameter
NOTE:- The memory for this list will be allocated by the caller of this API
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_GetAssocStations
(
- v_PVOID_t pvosGCtx, VOS_MODULE_ID module,
+ v_PVOID_t pvosGCtx, VOS_MODULE_ID module,
tpSap_AssocMacAddr pAssocStas
-);
+);
/*==========================================================================
FUNCTION WLANSAP_RemoveWpsSessionOverlap
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to remove an entry from session session overlap info.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
pRemoveMac: pointer to v_MACADDR_t for session MAC address that needs to be removed from wps session
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
VOS_STATUS_E_FAULT: Session is not dectected. The parameter is function not valid.
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_RemoveWpsSessionOverlap
@@ -1167,11 +1167,11 @@ WLANSAP_RemoveWpsSessionOverlap
/*==========================================================================
FUNCTION WLANSAP_getWpsSessionOverlap
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to get WPS session overlap info.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1179,14 +1179,14 @@ WLANSAP_RemoveWpsSessionOverlap
pvosGCtx: Pointer to vos global context structure
pSessionMac: pointer to v_MACADDR_t for session MAC address
uuide: Pointer to 16 bytes array for session UUID_E
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
VOS_STATUS_E_FAULT: Overlap is dectected. The parameter is function not valid.
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_getWpsSessionOverlap
@@ -1197,18 +1197,18 @@ WLANSAP_getWpsSessionOverlap
/*==========================================================================
FUNCTION WLANSAP_SetCounterMeasure
- DESCRIPTION
- This api function is used to disassociate all the stations and prevent
- association for any other station.Whenever Authenticator receives 2 mic failures
- within 60 seconds, Authenticator will enable counter measure at SAP Layer.
- Authenticator will start the 60 seconds timer. Core stack will not allow any
- STA to associate till HDD disables counter meassure. Core stack shall kick out all the
- STA which are currently associated and DIASSOC Event will be propogated to HDD for
- each STA to clean up the HDD STA table.Once the 60 seconds timer expires, Authenticator
+ DESCRIPTION
+ This api function is used to disassociate all the stations and prevent
+ association for any other station.Whenever Authenticator receives 2 mic failures
+ within 60 seconds, Authenticator will enable counter measure at SAP Layer.
+ Authenticator will start the 60 seconds timer. Core stack will not allow any
+ STA to associate till HDD disables counter meassure. Core stack shall kick out all the
+ STA which are currently associated and DIASSOC Event will be propogated to HDD for
+ each STA to clean up the HDD STA table.Once the 60 seconds timer expires, Authenticator
will disable the counter meassure at core stack. Now core stack can allow STAs to associate.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1216,13 +1216,13 @@ WLANSAP_getWpsSessionOverlap
pvosGCtx: Pointer to vos global context structure
bEnable: If TRUE than all stations will be disassociated and no more will be allowed to associate. If FALSE than CORE
will come out of this state.
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
WLANSAP_SetCounterMeasure
@@ -1233,28 +1233,28 @@ WLANSAP_SetCounterMeasure
/*==========================================================================
FUNCTION WLANSap_getstationIE_information
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to retrive the WPA and RSNIE of a station.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
pLen : length of WPARSN elment IE where it would be copied
- pBuf : buf to copy the WPARSNIe
-
+ pBuf : buf to copy the WPARSNIe
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
-WLANSap_getstationIE_information(v_PVOID_t pvosGCtx,
+WLANSap_getstationIE_information(v_PVOID_t pvosGCtx,
v_U32_t *pLen,
v_U8_t *pBuf);
@@ -1267,54 +1267,54 @@ WLANSAP_getWpsSessionOverlap
/*==========================================================================
FUNCTION WLANSAP_ClearACL
- DESCRIPTION
+ DESCRIPTION
This api function removes all the entries in both accept and deny lists.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_ClearACL
-(
+(
v_PVOID_t pvosGCtx
);
/*==========================================================================
FUNCTION WLANSAP_SetMode
- DESCRIPTION
+ DESCRIPTION
This api is used to set mode for ACL
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_SetMode
-(
+(
v_PVOID_t pvosGCtx,
v_U32_t mode
);
@@ -1322,27 +1322,27 @@ WLANSAP_SetMode
/*==========================================================================
FUNCTION WLANSAP_ModifyACL
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to add/remove mac addresses from black/white lists (ACLs).
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx : Pointer to vos global context structure
- pPeerStaMac : MAC address to be added or removed
+ pPeerStaMac : MAC address to be added or removed
listType : add/remove to be done on black or white list
cmd : Are we doing to add or delete a mac addr from an ACL.
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_ModifyACL
(
v_PVOID_t pvosGCtx,
@@ -1354,36 +1354,36 @@ WLANSAP_ModifyACL
/*==========================================================================
FUNCTION WLANSAP_Set_WPARSNIes
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to set AP WPA and RSN IE in its beacon and probe response.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
- pWPARSNIEs: buffer to the WPA/RSN IEs
+ pWPARSNIEs: buffer to the WPA/RSN IEs
WPARSNIEsLen: length of WPA/RSN IEs
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS WLANSAP_Set_WPARSNIes(v_PVOID_t pvosGCtx, v_U8_t *pWPARSNIEs, v_U32_t WPARSNIEsLen);
/*==========================================================================
FUNCTION WLANSAP_GetStatistics
- DESCRIPTION
+ DESCRIPTION
This api function provides for Ap App/HDD to get TL statistics for all stations of Soft AP.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1394,11 +1394,11 @@ VOS_STATUS WLANSAP_Set_WPARSNIes(v_PVOID_t pvosGCtx, v_U8_t *pWPARSNIEs, v_U32_t
statBuf: Buffer to get the statistics
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS WLANSAP_GetStatistics(v_PVOID_t pvosGCtx, tSap_SoftapStats *statBuf, v_BOOL_t bReset);
@@ -1406,11 +1406,11 @@ VOS_STATUS WLANSAP_GetStatistics(v_PVOID_t pvosGCtx, tSap_SoftapStats *statBuf,
FUNCTION WLANSAP_SendAction
- DESCRIPTION
+ DESCRIPTION
This api function provides to send action frame sent by upper layer.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1418,70 +1418,70 @@ VOS_STATUS WLANSAP_GetStatistics(v_PVOID_t pvosGCtx, tSap_SoftapStats *statBuf,
pvosGCtx: Pointer to vos global context structure
pBuf: Pointer of the action frame to be transmitted
len: Length of the action frame
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS WLANSAP_SendAction( v_PVOID_t pvosGCtx, const tANI_U8 *pBuf,
+VOS_STATUS WLANSAP_SendAction( v_PVOID_t pvosGCtx, const tANI_U8 *pBuf,
tANI_U32 len, tANI_U16 wait );
/*==========================================================================
FUNCTION WLANSAP_RemainOnChannel
- DESCRIPTION
+ DESCRIPTION
This api function provides to set Remain On channel on specified channel
for specified duration.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
- channel: Channel on which driver has to listen
+ channel: Channel on which driver has to listen
duration: Duration for which driver has to listen on specified channel
callback: Callback function to be called once Listen is done.
- pContext: Context needs to be called in callback function.
-
+ pContext: Context needs to be called in callback function.
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS WLANSAP_RemainOnChannel( v_PVOID_t pvosGCtx,
tANI_U8 channel, tANI_U32 duration,
- remainOnChanCallback callback,
+ remainOnChanCallback callback,
void *pContext );
/*==========================================================================
FUNCTION WLANSAP_CancelRemainOnChannel
- DESCRIPTION
+ DESCRIPTION
This api cancel previous remain on channel request.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
IN
pvosGCtx: Pointer to vos global context structure
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS WLANSAP_CancelRemainOnChannel( v_PVOID_t pvosGCtx );
@@ -1490,12 +1490,12 @@ VOS_STATUS WLANSAP_CancelRemainOnChannel( v_PVOID_t pvosGCtx );
FUNCTION WLANSAP_RegisterMgmtFrame
- DESCRIPTION
+ DESCRIPTION
HDD use this API to register specified type of frame with CORE stack.
On receiving such kind of frame CORE stack should pass this frame to HDD
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1504,26 +1504,26 @@ VOS_STATUS WLANSAP_CancelRemainOnChannel( v_PVOID_t pvosGCtx );
frameType: frameType that needs to be registered with PE.
matchData: Data pointer which should be matched after frame type is matched.
matchLen: Length of the matchData
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS WLANSAP_RegisterMgmtFrame( v_PVOID_t pvosGCtx, tANI_U16 frameType,
+VOS_STATUS WLANSAP_RegisterMgmtFrame( v_PVOID_t pvosGCtx, tANI_U16 frameType,
tANI_U8* matchData, tANI_U16 matchLen );
/*==========================================================================
FUNCTION WLANSAP_DeRegisterMgmtFrame
- DESCRIPTION
- This API is used to deregister previously registered frame.
+ DESCRIPTION
+ This API is used to deregister previously registered frame.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
PARAMETERS
@@ -1532,15 +1532,15 @@ VOS_STATUS WLANSAP_RegisterMgmtFrame( v_PVOID_t pvosGCtx, tANI_U16 frameType,
frameType: frameType that needs to be De-registered with PE.
matchData: Data pointer which should be matched after frame type is matched.
matchLen: Length of the matchData
-
+
RETURN VALUE
- The VOS_STATUS code associated with performing the operation
+ The VOS_STATUS code associated with performing the operation
VOS_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS WLANSAP_DeRegisterMgmtFrame( v_PVOID_t pvosGCtx, tANI_U16 frameType,
+VOS_STATUS WLANSAP_DeRegisterMgmtFrame( v_PVOID_t pvosGCtx, tANI_U16 frameType,
tANI_U8* matchData, tANI_U16 matchLen );
/*==========================================================================
@@ -1629,8 +1629,7 @@ WLANSAP_DfsSendCSAIeRequest(v_PVOID_t pSapCtx);
#ifdef __cplusplus
}
-#endif
+#endif
#endif /* #ifndef WLAN_QCT_WLANSAP_H */
-
diff --git a/CORE/SAP/src/sapApiLinkCntl.c b/CORE/SAP/src/sapApiLinkCntl.c
index fa05f83e60a3..0dddb6d6d9cb 100644
--- a/CORE/SAP/src/sapApiLinkCntl.c
+++ b/CORE/SAP/src/sapApiLinkCntl.c
@@ -28,16 +28,16 @@
/*===========================================================================
s a p A p i L i n k C n t l . C
-
+
OVERVIEW:
-
+
This software unit holds the implementation of the WLAN SAP modules
Link Control functions.
-
- The functions externalized by this module are to be called ONLY by other
- WLAN modules (HDD)
- DEPENDENCIES:
+ The functions externalized by this module are to be called ONLY by other
+ WLAN modules (HDD)
+
+ DEPENDENCIES:
Are listed for each API below.
===========================================================================*/
@@ -102,33 +102,33 @@
/*==========================================================================
FUNCTION WLANSAP_ScanCallback()
- DESCRIPTION
- Callback for Scan (scan results) Events
+ DESCRIPTION
+ Callback for Scan (scan results) Events
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
tHalHandle : tHalHandle passed in with the scan request
*pContext : The second context pass in for the caller (sapContext)
scanID : scanID got after the scan
status : Status of scan -success, failure or abort
-
+
RETURN VALUE
- The eHalStatus code associated with performing the operation
+ The eHalStatus code associated with performing the operation
eHAL_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
eHalStatus
WLANSAP_ScanCallback
(
- tHalHandle halHandle,
+ tHalHandle halHandle,
void *pContext, /* Opaque SAP handle */
- v_U32_t scanID,
+ v_U32_t scanID,
eCsrScanStatus scanStatus
)
{
@@ -146,7 +146,7 @@ WLANSAP_ScanCallback
/*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -*/
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, before switch on scanStatus = %d", __func__, scanStatus);
- switch (scanStatus)
+ switch (scanStatus)
{
case eCSR_SCAN_SUCCESS:
// sapScanCompleteCallback with eCSR_SCAN_SUCCESS
@@ -173,7 +173,7 @@ WLANSAP_ScanCallback
event = eSAP_CHANNEL_SELECTION_FAILED;
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, CSR scanStatus = %s (%d)", __func__, "eCSR_SCAN_ABORT/FAILURE", scanStatus);
}
-
+
if (operChannel == SAP_CHANNEL_NOT_SELECTED)
#ifdef SOFTAP_CHANNEL_RANGE
{
@@ -235,7 +235,7 @@ WLANSAP_ScanCallback
vos_mem_free(psapContext->channelList);
psapContext->channelList = NULL;
}
-#endif
+#endif
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, Channel selected = %d", __func__, psapContext->channel);
@@ -245,7 +245,7 @@ WLANSAP_ScanCallback
sapEvent.u1 = scanStatus; // roamstatus
sapEvent.u2 = 0; // roamResult
- /* Handle event */
+ /* Handle event */
sapstatus = sapFsm(psapContext, &sapEvent);
return sapstatus;
@@ -254,13 +254,13 @@ WLANSAP_ScanCallback
/*==========================================================================
FUNCTION WLANSAP_RoamCallback()
- DESCRIPTION
- Callback for Roam (connection status) Events
+ DESCRIPTION
+ Callback for Roam (connection status) Events
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
pContext : pContext passed in with the roam request
@@ -269,26 +269,26 @@ WLANSAP_ScanCallback
roamId : To identify the callback related roam request. 0 means unsolicited
roamStatus : Flag indicating the status of the callback
roamResult : Result
-
+
RETURN VALUE
- The eHalStatus code associated with performing the operation
+ The eHalStatus code associated with performing the operation
eHAL_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
eHalStatus
WLANSAP_RoamCallback
(
- void *pContext, /* Opaque SAP handle */
+ void *pContext, /* Opaque SAP handle */
tCsrRoamInfo *pCsrRoamInfo,
- v_U32_t roamId,
- eRoamCmdStatus roamStatus,
+ v_U32_t roamId,
+ eRoamCmdStatus roamStatus,
eCsrRoamResult roamResult
)
{
- /* sapContext value */
- ptSapContext sapContext = (ptSapContext) pContext;
+ /* sapContext value */
+ ptSapContext sapContext = (ptSapContext) pContext;
tWLAN_SAPEvent sapEvent; /* State machine event */
VOS_STATUS vosStatus = VOS_STATUS_SUCCESS;
eHalStatus halStatus = eHAL_STATUS_SUCCESS;
@@ -324,13 +324,13 @@ WLANSAP_RoamCallback
__func__, "eCSR_ROAM_INFRA_IND", roamStatus);
if(roamResult == eCSR_ROAM_RESULT_INFRA_START_FAILED)
{
- /* Fill in the event structure */
- sapEvent.event = eSAP_MAC_START_FAILS;
+ /* Fill in the event structure */
+ sapEvent.event = eSAP_MAC_START_FAILS;
sapEvent.params = pCsrRoamInfo;
sapEvent.u1 = roamStatus;
- sapEvent.u2 = roamResult;
-
- /* Handle event */
+ sapEvent.u2 = roamResult;
+
+ /* Handle event */
vosStatus = sapFsm(sapContext, &sapEvent);
if(!VOS_IS_STATUS_SUCCESS(vosStatus))
{
@@ -388,39 +388,39 @@ WLANSAP_RoamCallback
sapSignalHDDevent(sapContext, pCsrRoamInfo, eSAP_STA_MIC_FAILURE_EVENT,(v_PVOID_t) eSAP_STATUS_FAILURE);
}
break;
-
+
case eCSR_ROAM_WPS_PBC_PROBE_REQ_IND:
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, CSR roamStatus = %s (%d)\n",
__func__, "eCSR_ROAM_WPS_PBC_PROBE_REQ_IND", roamStatus);
- break;
+ break;
case eCSR_ROAM_INDICATE_MGMT_FRAME:
- sapSignalHDDevent(sapContext, pCsrRoamInfo,
- eSAP_INDICATE_MGMT_FRAME,
+ sapSignalHDDevent(sapContext, pCsrRoamInfo,
+ eSAP_INDICATE_MGMT_FRAME,
(v_PVOID_t) eSAP_STATUS_SUCCESS);
break;
case eCSR_ROAM_REMAIN_CHAN_READY:
- sapSignalHDDevent(sapContext, pCsrRoamInfo,
- eSAP_REMAIN_CHAN_READY,
+ sapSignalHDDevent(sapContext, pCsrRoamInfo,
+ eSAP_REMAIN_CHAN_READY,
(v_PVOID_t) eSAP_STATUS_SUCCESS);
break;
case eCSR_ROAM_SEND_ACTION_CNF:
- sapSignalHDDevent(sapContext, pCsrRoamInfo,
+ sapSignalHDDevent(sapContext, pCsrRoamInfo,
eSAP_SEND_ACTION_CNF,
(v_PVOID_t)((eSapStatus)((roamResult == eCSR_ROAM_RESULT_NONE)
? eSAP_STATUS_SUCCESS : eSAP_STATUS_FAILURE)));
break;
case eCSR_ROAM_DISCONNECT_ALL_P2P_CLIENTS:
- sapSignalHDDevent(sapContext, pCsrRoamInfo,
- eSAP_DISCONNECT_ALL_P2P_CLIENT,
+ sapSignalHDDevent(sapContext, pCsrRoamInfo,
+ eSAP_DISCONNECT_ALL_P2P_CLIENT,
(v_PVOID_t) eSAP_STATUS_SUCCESS );
break;
-
+
case eCSR_ROAM_SEND_P2P_STOP_BSS:
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, Received stopbss", __func__);
- sapSignalHDDevent(sapContext, pCsrRoamInfo,
- eSAP_MAC_TRIG_STOP_BSS_EVENT,
+ sapSignalHDDevent(sapContext, pCsrRoamInfo,
+ eSAP_MAC_TRIG_STOP_BSS_EVENT,
(v_PVOID_t) eSAP_STATUS_SUCCESS );
break;
@@ -457,13 +457,13 @@ WLANSAP_RoamCallback
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, CSR roamResult = %s (%d)\n",
__func__, "eCSR_ROAM_RESULT_INFRA_ASSOCIATION_IND", roamResult);
sapContext->nStaWPARSnReqIeLength = pCsrRoamInfo->rsnIELen;
-
+
if(sapContext->nStaWPARSnReqIeLength)
vos_mem_copy( sapContext->pStaWpaRsnReqIE,
pCsrRoamInfo->prsnIE, sapContext->nStaWPARSnReqIeLength);
sapContext->nStaAddIeLength = pCsrRoamInfo->addIELen;
-
+
if(sapContext->nStaAddIeLength)
vos_mem_copy( sapContext->pStaAddIE,
pCsrRoamInfo->paddIE, sapContext->nStaAddIeLength);
@@ -471,7 +471,7 @@ WLANSAP_RoamCallback
sapContext->SapQosCfg.WmmIsEnabled = pCsrRoamInfo->wmmEnabledSta;
// MAC filtering
vosStatus = sapIsPeerMacAllowed(sapContext, (v_U8_t *)pCsrRoamInfo->peerMac);
-
+
if ( VOS_STATUS_SUCCESS == vosStatus )
{
vosStatus = sapSignalHDDevent( sapContext, pCsrRoamInfo, eSAP_STA_ASSOC_IND, (v_PVOID_t)eSAP_STATUS_SUCCESS);
@@ -491,7 +491,7 @@ WLANSAP_RoamCallback
MAC_ADDRESS_STR") not allowed", __func__, roamResult,
MAC_ADDR_ARRAY(pCsrRoamInfo->peerMac));
halStatus = eHAL_STATUS_FAILURE;
- }
+ }
break;
@@ -553,7 +553,7 @@ WLANSAP_RoamCallback
}
break;
- case eCSR_ROAM_RESULT_MIC_ERROR_UNICAST:
+ case eCSR_ROAM_RESULT_MIC_ERROR_UNICAST:
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, CSR roamResult = %s (%d)\n",
__func__, "eCSR_ROAM_RESULT_MIC_ERROR_UNICAST", roamResult);
/* Fill in the event structure */
@@ -620,13 +620,13 @@ WLANSAP_RoamCallback
case eCSR_ROAM_RESULT_INFRA_STOPPED:
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, CSR roamResult = %s (%d)\n",
__func__, "eCSR_ROAM_RESULT_INFRA_STOPPED", roamResult);
- /* Fill in the event structure */
+ /* Fill in the event structure */
sapEvent.event = eSAP_MAC_READY_FOR_CONNECTIONS;
sapEvent.params = pCsrRoamInfo;
sapEvent.u1 = roamStatus;
sapEvent.u2 = roamResult;
- /* Handle event */
+ /* Handle event */
vosStatus = sapFsm(sapContext, &sapEvent);
if(!VOS_IS_STATUS_SUCCESS(vosStatus))
{
diff --git a/CORE/SAP/src/sapChSelect.c b/CORE/SAP/src/sapChSelect.c
index f4752cf14c09..fc5e19470c06 100644
--- a/CORE/SAP/src/sapChSelect.c
+++ b/CORE/SAP/src/sapChSelect.c
@@ -211,17 +211,17 @@ void sapUpdateUnsafeChannelList()
/*==========================================================================
FUNCTION sapCleanupChannelList
- DESCRIPTION
+ DESCRIPTION
Function sapCleanupChannelList frees up the memory allocated to the channel list.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
NULL
-
+
RETURN VALUE
NULL
============================================================================*/
@@ -231,7 +231,7 @@ void sapCleanupChannelList(void)
v_PVOID_t pvosGCtx = vos_get_global_context(VOS_MODULE_ID_SAP, NULL);
ptSapContext pSapCtx;
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO,
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO,
"Cleaning up the channel list structure");
if (NULL == pvosGCtx)
@@ -257,18 +257,18 @@ void sapCleanupChannelList(void)
/*==========================================================================
FUNCTION sapSetPreferredChannel
- DESCRIPTION
+ DESCRIPTION
Function sapSetPreferredChannel sets the channel list which has been configured
- into sap context (pSapCtx) which will be used at the time of best channel selection.
+ into sap context (pSapCtx) which will be used at the time of best channel selection.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
*ptr: pointer having the command followed by the arguments in string format
-
+
RETURN VALUE
int: return 0 when success else returns error code.
============================================================================*/
@@ -282,7 +282,7 @@ int sapSetPreferredChannel(tANI_U8* ptr)
int tempInt;
int j;
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
"Enter: %s", __func__);
if (NULL == pvosGCtx)
@@ -337,7 +337,7 @@ int sapSetPreferredChannel(tANI_U8* ptr)
return -EINVAL;
}
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
"%s: Number of channel added are: %d", __func__, tempInt);
if (tempInt <= 0 || tempInt > 255)
@@ -362,7 +362,7 @@ int sapSetPreferredChannel(tANI_U8* ptr)
{
/*param pointing to the beginning of first space after number of channels*/
- param = strpbrk( param, " " );
+ param = strpbrk( param, " " );
/*no channel list after the number of channels argument*/
if (NULL == param)
{
@@ -399,7 +399,7 @@ int sapSetPreferredChannel(tANI_U8* ptr)
pSapCtx->SapChnlList.channelList[j] = tempInt;
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
"%s: Channel %d added to preferred channel list",
__func__, pSapCtx->SapChnlList.channelList[j] );
@@ -418,7 +418,7 @@ int sapSetPreferredChannel(tANI_U8* ptr)
}
}
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
"Exit: %s", __func__);
return 0;
@@ -427,26 +427,26 @@ int sapSetPreferredChannel(tANI_U8* ptr)
/*==========================================================================
FUNCTION sapSelectPreferredChannelFromChannelList
- DESCRIPTION
+ DESCRIPTION
Function sapSelectPreferredChannelFromChannelList calculates the best channel
- among the configured channel list. If channel list not configured then returns
+ among the configured channel list. If channel list not configured then returns
the best channel calculated among all the channel list.
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
*pSpectInfoParams : Pointer to tSapChSelSpectInfo structure
bestChNum: best channel already calculated among all the chanels
- pSapCtx: having info of channel list from which best channel is selected
-
+ pSapCtx: having info of channel list from which best channel is selected
+
RETURN VALUE
v_U8_t: best channel
============================================================================*/
-v_U8_t sapSelectPreferredChannelFromChannelList(v_U8_t bestChNum,
- ptSapContext pSapCtx,
+v_U8_t sapSelectPreferredChannelFromChannelList(v_U8_t bestChNum,
+ ptSapContext pSapCtx,
tSapChSelSpectInfo *pSpectInfoParams)
{
v_U8_t j = 0;
@@ -454,8 +454,8 @@ v_U8_t sapSelectPreferredChannelFromChannelList(v_U8_t bestChNum,
//If Channel List is not Configured don't do anything
//Else return the Best Channel from the Channel List
- if((NULL == pSapCtx->SapChnlList.channelList) ||
- (NULL == pSpectInfoParams) ||
+ if((NULL == pSapCtx->SapChnlList.channelList) ||
+ (NULL == pSpectInfoParams) ||
(0 == pSapCtx->SapChnlList.numChannel))
{
return bestChNum;
@@ -471,8 +471,8 @@ v_U8_t sapSelectPreferredChannelFromChannelList(v_U8_t bestChNum,
{
if( (pSapCtx->SapChnlList.channelList[j]) == bestChNum)
{
- VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
- "Best channel computed from Channel List is: %d",
+ VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
+ "Best channel computed from Channel List is: %d",
bestChNum);
return bestChNum;
}
@@ -489,22 +489,22 @@ v_U8_t sapSelectPreferredChannelFromChannelList(v_U8_t bestChNum,
/*==========================================================================
FUNCTION sapChanSelInit
- DESCRIPTION
+ DESCRIPTION
Function sapChanSelInit allocates the memory, intializes the
structures used by the channel selection algorithm
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
*pSpectInfoParams : Pointer to tSapChSelSpectInfo structure
-
+
RETURN VALUE
v_BOOL_t: Success or FAIL
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
v_BOOL_t sapChanSelInit(tHalHandle halHandle, tSapChSelSpectInfo *pSpectInfoParams)
{
@@ -526,7 +526,7 @@ v_BOOL_t sapChanSelInit(tHalHandle halHandle, tSapChSelSpectInfo *pSpectInfoPara
// Channels for that 2.4GHz band
//Considered only for 2.4GHz need to change in future to support 5GHz support
pSpectInfoParams->numSpectChans = pMac->scan.base20MHzChannels.numChannels;
-
+
// Allocate memory for weight computation of 2.4GHz
pSpectCh = (tSapSpectChInfo *)vos_mem_malloc((pSpectInfoParams->numSpectChans) * sizeof(*pSpectCh));
@@ -580,30 +580,30 @@ v_BOOL_t sapChanSelInit(tHalHandle halHandle, tSapChSelSpectInfo *pSpectInfoPara
/*==========================================================================
FUNCTION sapweightRssiCount
- DESCRIPTION
+ DESCRIPTION
Function weightRssiCount calculates the channel weight due to rssi
and data count(here number of BSS observed)
-
- DEPENDENCIES
- NA.
- PARAMETERS
+ DEPENDENCIES
+ NA.
+
+ PARAMETERS
IN
rssi : Max signal strength receieved from a BSS for the channel
count : Number of BSS observed in the channel
-
+
RETURN VALUE
v_U32_t : Calculated channel weight based on above two
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
v_U32_t sapweightRssiCount(v_S7_t rssi, v_U16_t count)
{
v_S31_t rssiWeight=0;
v_S31_t countWeight=0;
v_U32_t rssicountWeight=0;
-
+
// Weight from RSSI
rssiWeight = SOFTAP_RSSI_WEIGHT * (rssi - SOFTAP_MIN_RSSI)
/(SOFTAP_MAX_RSSI - SOFTAP_MIN_RSSI);
@@ -622,11 +622,11 @@ v_U32_t sapweightRssiCount(v_S7_t rssi, v_U16_t count)
else if (countWeight < 0)
countWeight = 0;
- rssicountWeight = rssiWeight + countWeight;
+ rssicountWeight = rssiWeight + countWeight;
VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, rssiWeight=%d, countWeight=%d, rssicountWeight=%d",
__func__, rssiWeight, countWeight, rssicountWeight);
-
+
return(rssicountWeight);
}
@@ -1371,25 +1371,25 @@ void sapInterferenceRssiCount(tSapSpectChInfo *pSpectCh)
/*==========================================================================
FUNCTION sapComputeSpectWeight
- DESCRIPTION
+ DESCRIPTION
Main function for computing the weight of each channel in the
spectrum based on the RSSI value of the BSSes on the channel
and number of BSS
-
- DEPENDENCIES
- NA.
- PARAMETERS
+ DEPENDENCIES
+ NA.
+
+ PARAMETERS
IN
pSpectInfoParams : Pointer to the tSpectInfoParams structure
halHandle : Pointer to HAL handle
pResult : Pointer to tScanResultHandle
-
+
RETURN VALUE
void : NULL
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
void sapComputeSpectWeight( tSapChSelSpectInfo* pSpectInfoParams,
tHalHandle halHandle, tScanResultHandle pResult)
@@ -1460,7 +1460,7 @@ void sapComputeSpectWeight( tSapChSelSpectInfo* pSpectInfoParams,
for (chn_num = 0; chn_num < pSpectInfoParams->numSpectChans; chn_num++) {
/*
- * if the Beacon has channel ID, use it other wise we will
+ * if the Beacon has channel ID, use it other wise we will
* rely on the channelIdSelf
*/
if(pScanResult->BssDescriptor.channelId == 0)
@@ -1507,7 +1507,7 @@ void sapComputeSpectWeight( tSapChSelSpectInfo* pSpectInfoParams,
case PHY_DOUBLE_CHANNEL_HIGH_PRIMARY: // Below the Primary channel
pExtSpectCh = (pSpectCh - 1);
- if(pExtSpectCh != NULL)
+ if(pExtSpectCh != NULL)
{
rssi = pSpectCh->rssiAgr + SAP_SUBBAND1_RSSI_EFFECT_PRIMARY;
if (IS_RSSI_VALID(pExtSpectCh->rssiAgr, rssi))
@@ -1733,22 +1733,22 @@ void sapComputeSpectWeight( tSapChSelSpectInfo* pSpectInfoParams,
/*==========================================================================
FUNCTION sapChanSelExit
- DESCRIPTION
- Exit function for free out the allocated memory, to be called
+ DESCRIPTION
+ Exit function for free out the allocated memory, to be called
at the end of the dfsSelectChannel function
-
- DEPENDENCIES
- NA.
- PARAMETERS
+ DEPENDENCIES
+ NA.
+
+ PARAMETERS
IN
pSpectInfoParams : Pointer to the tSapChSelSpectInfo structure
-
+
RETURN VALUE
void : NULL
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
void sapChanSelExit( tSapChSelSpectInfo *pSpectInfoParams )
{
@@ -1759,21 +1759,21 @@ void sapChanSelExit( tSapChSelSpectInfo *pSpectInfoParams )
/*==========================================================================
FUNCTION sapSortChlWeight
- DESCRIPTION
+ DESCRIPTION
Funtion to sort the channels with the least weight first
-
- DEPENDENCIES
- NA.
- PARAMETERS
+ DEPENDENCIES
+ NA.
+
+ PARAMETERS
IN
pSpectInfoParams : Pointer to the tSapChSelSpectInfo structure
-
+
RETURN VALUE
void : NULL
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
void sapSortChlWeight(tSapChSelSpectInfo *pSpectInfoParams)
{
@@ -1789,7 +1789,7 @@ void sapSortChlWeight(tSapChSelSpectInfo *pSpectInfoParams)
minWeightIndex = i;
for( j = i + 1; j < pSpectInfoParams->numSpectChans; j++) {
if(pSpectCh[j].weight < pSpectCh[minWeightIndex].weight) {
- minWeightIndex = j;
+ minWeightIndex = j;
}
}
if(minWeightIndex != i) {
@@ -1804,7 +1804,7 @@ void sapSortChlWeight(tSapChSelSpectInfo *pSpectInfoParams)
minWeightIndex = i;
for( j = i + 1; j < SPECT_24GHZ_CH_COUNT; j++) {
if(pSpectCh[j].weight < pSpectCh[minWeightIndex].weight) {
- minWeightIndex = j;
+ minWeightIndex = j;
}
}
if(minWeightIndex != i) {
@@ -1829,36 +1829,36 @@ void sapSortChlWeight(tSapChSelSpectInfo *pSpectInfoParams)
/*==========================================================================
FUNCTION sapSelectChannel
- DESCRIPTION
- Runs a algorithm to select the best channel to operate in based on BSS
+ DESCRIPTION
+ Runs a algorithm to select the best channel to operate in based on BSS
rssi and bss count on each channel
-
- DEPENDENCIES
- NA.
- PARAMETERS
+ DEPENDENCIES
+ NA.
+
+ PARAMETERS
IN
halHandle : Pointer to HAL handle
pResult : Pointer to tScanResultHandle
-
+
RETURN VALUE
v_U8_t : Success - channel number, Fail - zero
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
v_U8_t sapSelectChannel(tHalHandle halHandle, ptSapContext pSapCtx, tScanResultHandle pScanResult)
{
// DFS param object holding all the data req by the algo
- tSapChSelSpectInfo oSpectInfoParams = {NULL,0};
- tSapChSelSpectInfo *pSpectInfoParams = &oSpectInfoParams; // Memory? NB
+ tSapChSelSpectInfo oSpectInfoParams = {NULL,0};
+ tSapChSelSpectInfo *pSpectInfoParams = &oSpectInfoParams; // Memory? NB
v_U8_t bestChNum = 0;
#ifdef SOFTAP_CHANNEL_RANGE
v_U32_t startChannelNum;
v_U32_t endChannelNum;
v_U32_t operatingBand = 0;
v_U8_t count = 0;
-#endif
+#endif
VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, Running SAP Ch Select", __func__);
if (NULL == pScanResult)
@@ -1952,4 +1952,3 @@ v_U8_t sapSelectChannel(tHalHandle halHandle, ptSapContext pSapCtx, tScanResult
else
return SAP_CHANNEL_NOT_SELECTED;
}
-
diff --git a/CORE/SAP/src/sapChSelect.h b/CORE/SAP/src/sapChSelect.h
index e3321eb71080..35c4c8267b76 100644
--- a/CORE/SAP/src/sapChSelect.h
+++ b/CORE/SAP/src/sapChSelect.h
@@ -31,14 +31,14 @@
/*===========================================================================
s a p C h S e l e c t . h
-
+
OVERVIEW:
-
+
This software unit holds the implementation of the WLAN SAP modules
functions for channel selection.
- DEPENDENCIES:
-
+ DEPENDENCIES:
+
Are listed for each API below.
===========================================================================*/
@@ -111,7 +111,7 @@ typedef enum
} tSapChannel;
/**
-* Structure holding information of each channel in the spectrum,
+* Structure holding information of each channel in the spectrum,
* it contains the channel number, the computed weight
*/
@@ -130,7 +130,7 @@ typedef struct {
} tSapSpectChInfo;//tDfsSpectChInfo;
/**
-* Structure holding all the information required to make a
+* Structure holding all the information required to make a
* decision for the best operating channel based on dfs formula
*/
@@ -148,4 +148,3 @@ typedef struct sSapChSelParams {
} tSapChSelParams;
#endif // if !defined __SAP_CH_SELECT_H
-
diff --git a/CORE/SAP/src/sapFsm.c b/CORE/SAP/src/sapFsm.c
index df880b1fb56d..b24cb59343b9 100644
--- a/CORE/SAP/src/sapFsm.c
+++ b/CORE/SAP/src/sapFsm.c
@@ -2143,4 +2143,3 @@ VOS_STATUS sapInitDfsChannelNolList(ptSapContext sapContext)
return VOS_STATUS_SUCCESS;
}
-
diff --git a/CORE/SAP/src/sapInternal.h b/CORE/SAP/src/sapInternal.h
index be5712fbd160..9a74376a10da 100644
--- a/CORE/SAP/src/sapInternal.h
+++ b/CORE/SAP/src/sapInternal.h
@@ -30,12 +30,12 @@
/*===========================================================================
- W L A N S A P P A L L A Y E R
+ W L A N S A P P A L L A Y E R
I N T E R N A L A P I
DESCRIPTION
- This file contains the internal API exposed by the wlan SAP PAL layer
+ This file contains the internal API exposed by the wlan SAP PAL layer
module.
===========================================================================*/
@@ -69,8 +69,8 @@ when who what, where, why
/*----------------------------------------------------------------------------
* Include Files
* -------------------------------------------------------------------------*/
-#include "vos_api.h"
-#include "vos_packet.h"
+#include "vos_api.h"
+#include "vos_packet.h"
// Pick up the CSR API definitions
#include "csrApi.h"
@@ -83,8 +83,8 @@ when who what, where, why
* -------------------------------------------------------------------------*/
#ifdef __cplusplus
extern "C" {
- #endif
-
+ #endif
+
/*----------------------------------------------------------------------------
* Defines
@@ -93,12 +93,12 @@ when who what, where, why
#define SAP_DFS_NON_OCCUPANCY_PERIOD (30 * 60 * 1000 )
#define SAP_DEBUG
-// Used to enable or disable security on the BT-AMP link
+// Used to enable or disable security on the BT-AMP link
#define WLANSAP_SECURITY_ENABLED_STATE VOS_TRUE
-// How do I get SAP context from voss context?
-#define VOS_GET_SAP_CB(ctx) vos_get_context( VOS_MODULE_ID_SAP, ctx)
+// How do I get SAP context from voss context?
+#define VOS_GET_SAP_CB(ctx) vos_get_context( VOS_MODULE_ID_SAP, ctx)
-#define VOS_GET_HAL_CB(ctx) vos_get_context( VOS_MODULE_ID_PE, ctx)
+#define VOS_GET_HAL_CB(ctx) vos_get_context( VOS_MODULE_ID_PE, ctx)
//MAC Address length
#define ANI_EAPOL_KEY_RSN_NONCE_SIZE 32
@@ -120,7 +120,7 @@ typedef struct sSapContext tSapContext;
/*----------------------------------------------------------------------------
* Opaque SAP context Type Declaration
* -------------------------------------------------------------------------*/
-// We were only using this syntax, when this was truly opaque.
+// We were only using this syntax, when this was truly opaque.
// (I.E., it was defined in a different file.)
@@ -185,7 +185,7 @@ typedef struct sSapContext {
// Include the current channel of AP
v_U32_t channel;
-
+
// Include the SME(CSR) sessionId here
v_U8_t sessionId;
@@ -197,7 +197,7 @@ typedef struct sSapContext {
// Include the associations MAC addresses
v_U8_t self_mac_addr[VOS_MAC_ADDRESS_LEN];
- // Own SSID
+ // Own SSID
v_U8_t ownSsid[MAX_SSID_LEN];
v_U32_t ownSsidLen;
@@ -205,7 +205,7 @@ typedef struct sSapContext {
v_U8_t ucSecEnabled;
// Include the SME(CSR) context here
- tCsrRoamProfile csrRoamProfile;
+ tCsrRoamProfile csrRoamProfile;
v_U32_t csrRoamId;
//Sap session
@@ -215,15 +215,15 @@ typedef struct sSapContext {
tpWLAN_SAPEventCB pfnSapEventCallback;
// Include the enclosing VOSS context here
- v_PVOID_t pvosGCtx;
+ v_PVOID_t pvosGCtx;
// Include the state machine structure here, state var that keeps track of state machine
eSapFsmStates_t sapsMachine;
- // Actual storage for AP and self (STA) SSID
+ // Actual storage for AP and self (STA) SSID
tCsrSSIDInfo SSIDList[2];
- // Actual storage for AP bssid
+ // Actual storage for AP bssid
tCsrBssid bssid;
// Mac filtering settings
@@ -239,12 +239,12 @@ typedef struct sSapContext {
v_PVOID_t pUsrContext;
v_U32_t nStaWPARSnReqIeLength;
- v_U8_t pStaWpaRsnReqIE[MAX_ASSOC_IND_IE_LEN];
+ v_U8_t pStaWpaRsnReqIE[MAX_ASSOC_IND_IE_LEN];
tSirAPWPSIEs APWPSIEs;
tSirRSNie APWPARSNIEs;
v_U32_t nStaAddIeLength;
- v_U8_t pStaAddIE[MAX_ASSOC_IND_IE_LEN];
+ v_U8_t pStaAddIE[MAX_ASSOC_IND_IE_LEN];
v_U8_t *channelList;
tSapChannelListInfo SapChnlList;
@@ -269,7 +269,7 @@ typedef struct sSapContext {
/*----------------------------------------------------------------------------
- * External declarations for global context
+ * External declarations for global context
* -------------------------------------------------------------------------*/
// The main per-Physical Link (per WLAN association) context.
extern ptSapContext gpSapCtx;
@@ -277,13 +277,13 @@ extern ptSapContext gpSapCtx;
/*----------------------------------------------------------------------------
* SAP state machine event definition
* -------------------------------------------------------------------------*/
-/* The event structure */
+/* The event structure */
typedef struct sWLAN_SAPEvent {
v_PVOID_t params; /* A VOID pointer type for all possible inputs */
v_U32_t event; /* State machine input event message */
v_U32_t u1; /* introduced to handle csrRoamCompleteCallback roamStatus */
v_U32_t u2; /* introduced to handle csrRoamCompleteCallback roamResult */
-} tWLAN_SAPEvent, *ptWLAN_SAPEvent;
+} tWLAN_SAPEvent, *ptWLAN_SAPEvent;
/*----------------------------------------------------------------------------
* Function Declarations and Documentation
@@ -293,34 +293,34 @@ typedef struct sWLAN_SAPEvent {
FUNCTION WLANSAP_ScanCallback()
- DESCRIPTION
- Callback for Scan (scan results) Events
+ DESCRIPTION
+ Callback for Scan (scan results) Events
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
tHalHandle: the tHalHandle passed in with the scan request
*p2: the second context pass in for the caller, opaque sap Handle here
scanID:
- status: Status of scan -success, failure or abort
-
+ status: Status of scan -success, failure or abort
+
RETURN VALUE
- The eHalStatus code associated with performing the operation
+ The eHalStatus code associated with performing the operation
eHAL_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
+
+ SIDE EFFECTS
============================================================================*/
eHalStatus
WLANSAP_ScanCallback
(
- tHalHandle halHandle,
+ tHalHandle halHandle,
void *pContext,
- v_U32_t scanID,
+ v_U32_t scanID,
eCsrScanStatus scanStatus
);
@@ -328,13 +328,13 @@ WLANSAP_ScanCallback
FUNCTION WLANSAP_RoamCallback()
- DESCRIPTION
- Callback for Roam (connection status) Events
+ DESCRIPTION
+ Callback for Roam (connection status) Events
- DEPENDENCIES
- NA.
+ DEPENDENCIES
+ NA.
- PARAMETERS
+ PARAMETERS
IN
pContext: is the pContext passed in with the roam request
@@ -343,22 +343,22 @@ WLANSAP_ScanCallback
roamId: is to identify the callback related roam request. 0 means unsolicited
roamStatus: is a flag indicating the status of the callback
roamResult: is the result
-
+
RETURN VALUE
- The eHalStatus code associated with performing the operation
+ The eHalStatus code associated with performing the operation
eHAL_STATUS_SUCCESS: Success
-
- SIDE EFFECTS
-
+
+ SIDE EFFECTS
+
============================================================================*/
eHalStatus
WLANSAP_RoamCallback
(
- void *pContext,
+ void *pContext,
tCsrRoamInfo *pCsrRoamInfo,
- v_U32_t roamId,
- eRoamCmdStatus roamStatus,
+ v_U32_t roamId,
+ eRoamCmdStatus roamStatus,
eCsrRoamResult roamResult
);
@@ -366,30 +366,30 @@ WLANSAP_RoamCallback
FUNCTION WLANSAP_CleanCB
- DESCRIPTION
+ DESCRIPTION
Clear out all fields in the SAP context.
-
- DEPENDENCIES
-
- PARAMETERS
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
pSapCtx: pointer to the SAP control block
freeFlag: flag indicating whether to free any allocations.
RETURN VALUE
- The result code associated with performing the operation
+ The result code associated with performing the operation
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-VOS_STATUS
+VOS_STATUS
WLANSAP_CleanCB
-(
+(
ptSapContext pSapCtx,
v_U32_t freeFlag /* If 0 do not empty */
);
@@ -397,33 +397,33 @@ WLANSAP_CleanCB
FUNCTION WLANSapFsm
- DESCRIPTION
- SAP forward state machine to handle the states of the SAP
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ SAP forward state machine to handle the states of the SAP
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
sapContext: pointer to the SAP control block
sapEvent : SAP event
status : status of SAP state machine
-
+
RETURN VALUE
Status of the SAP forward machine
- VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
- fault
- VOS_STATUS_SUCCESS: Everything is good :)
+ VOS_STATUS_E_FAULT: pointer to SAP cb is NULL ; access would cause a page
+ fault
+ VOS_STATUS_SUCCESS: Everything is good :)
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
SapFsm
(
- ptSapContext sapContext, /* sapContext value */
+ ptSapContext sapContext, /* sapContext value */
ptWLAN_SAPEvent sapEvent, /* State machine event */
v_U8_t *status /* return the SAP status here */
);
@@ -432,27 +432,27 @@ SapFsm
FUNCTION WLANSAP_pmcFullPwrReqCB
- DESCRIPTION
- Callback provide to PMC in the pmcRequestFullPower API.
-
- DEPENDENCIES
-
- PARAMETERS
+ DESCRIPTION
+ Callback provide to PMC in the pmcRequestFullPower API.
+
+ DEPENDENCIES
+
+ PARAMETERS
IN
- callbackContext: The user passed in a context to identify
- status: The halStatus
-
+ callbackContext: The user passed in a context to identify
+ status: The halStatus
+
RETURN VALUE
None
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-void
+void
WLANSAP_pmcFullPwrReqCB
-(
- void *callbackContext,
+(
+ void *callbackContext,
eHalStatus status
);
@@ -460,22 +460,22 @@ WLANSAP_pmcFullPwrReqCB
FUNCTION sapSelectChannel
- DESCRIPTION
+ DESCRIPTION
Runs a algorithm to select the best channel to operate in for Soft AP in 2.4GHz band
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
halHandle : Pointer to HAL handle
pSapCtx : Pointer to SAP context
pResult : Pointer to tScanResultHandle
-
+
RETURN VALUE
If SUCCESS channel number or zero for FAILURE.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
@@ -485,18 +485,18 @@ v_U8_t sapSelectChannel(tHalHandle halHandle, ptSapContext pSapCtx, tScanResultH
FUNCTION sapSignalHDDevent
- DESCRIPTION
+ DESCRIPTION
SAP HDD event callback function
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
sapContext : Pointer to SAP handle
- pCsrRoamInfo : csrRoamprofile
+ pCsrRoamInfo : csrRoamprofile
sapHddevent : SAP HDD callback event
-
+
RETURN VALUE
If SUCCESS or FAILURE.
@@ -511,12 +511,12 @@ sapSignalHDDevent( ptSapContext sapContext, tCsrRoamInfo * pCsrRoamInfo, eSapHdd
FUNCTION sapFsm
- DESCRIPTION
+ DESCRIPTION
SAP Forward state machine
- DEPENDENCIES
-
- PARAMETERS
+ DEPENDENCIES
+
+ PARAMETERS
IN
sapContext : Pointer to SAP handle
@@ -525,7 +525,7 @@ sapSignalHDDevent( ptSapContext sapContext, tCsrRoamInfo * pCsrRoamInfo, eSapHdd
RETURN VALUE
If SUCCESS or FAILURE.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
@@ -539,12 +539,12 @@ sapFsm
FUNCTION sapConvertToCsrProfile
- DESCRIPTION
+ DESCRIPTION
sapConvertToCsrProfile
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
pconfig_params : Pointer to configuration structure
@@ -564,12 +564,12 @@ sapconvertToCsrProfile(tsap_Config_t *pconfig_params, eCsrRoamBssType bssType, t
FUNCTION sapFreeRoamProfile
- DESCRIPTION
+ DESCRIPTION
sapConvertToCsrProfile
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
profile : pointer to a csrProfile that needs to be freed
@@ -586,12 +586,12 @@ void sapFreeRoamProfile(tCsrRoamProfile *profile);
FUNCTION sapIsPeerMacAllowed
- DESCRIPTION
+ DESCRIPTION
Function to implement MAC filtering for station association in SoftAP
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
sapContext : Pointer to SAP handle
@@ -600,7 +600,7 @@ void sapFreeRoamProfile(tCsrRoamProfile *profile);
RETURN VALUE
If SUCCESS or FAILURE.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
@@ -610,12 +610,12 @@ sapIsPeerMacAllowed(ptSapContext sapContext, v_U8_t *peerMac);
FUNCTION sapSortMacList
- DESCRIPTION
+ DESCRIPTION
Function to implement sorting of MAC addresses
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
macList : Pointer to mac address array
@@ -624,7 +624,7 @@ sapIsPeerMacAllowed(ptSapContext sapContext, v_U8_t *peerMac);
RETURN VALUE
None
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
void
@@ -665,13 +665,13 @@ sapAddMacToACL(v_MACADDR_t *macList, v_U8_t *size, v_U8_t *peerMac);
FUNCTION sapRemoveMacFromACL
- DESCRIPTION
+ DESCRIPTION
Function to REMOVE a mac address from an ACL.
The function ensures that the ACL list remains sorted after the DELETION.
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
macList : ACL list of mac addresses (black/white list)
@@ -683,7 +683,7 @@ sapAddMacToACL(v_MACADDR_t *macList, v_U8_t *size, v_U8_t *peerMac);
RETURN VALUE
None.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
void
@@ -693,13 +693,13 @@ sapRemoveMacFromACL(v_MACADDR_t *macList, v_U8_t *size, v_U8_t index);
FUNCTION sapPrintACL
- DESCRIPTION
+ DESCRIPTION
Function to print all the mac address of an ACL.
Useful for debug.
-
- DEPENDENCIES
- PARAMETERS
+ DEPENDENCIES
+
+ PARAMETERS
IN
macList : ACL list of mac addresses (black/white list)
@@ -708,28 +708,28 @@ sapRemoveMacFromACL(v_MACADDR_t *macList, v_U8_t *size, v_U8_t index);
RETURN VALUE
None.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
-void
+void
sapPrintACL(v_MACADDR_t *macList, v_U8_t size);
/*==========================================================================
FUNCTION sapSearchMacList
- DESCRIPTION
+ DESCRIPTION
Function to search for a mac address in an ACL
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
macList : list of mac addresses (black/white list)
num_mac : size of the ACL
peerMac : Mac address of the peer
- OP
+ OP
index : the index at which the peer mac is found
this value gets filled in this function. If the caller is not interested
in the index of the peerMac to be searched, it can pass NULL here.
@@ -738,7 +738,7 @@ sapPrintACL(v_MACADDR_t *macList, v_U8_t size);
SUCCESS : if the mac addr being searched for is found
FAILURE : if the mac addr being searched for is NOT found
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
eSapBool
@@ -749,12 +749,12 @@ sapSearchMacList(v_MACADDR_t *macList, v_U8_t num_mac, v_U8_t *peerMac, v_U8_t *
FUNCTION sap_AcquireGlobalLock
- DESCRIPTION
+ DESCRIPTION
Function to implement acquire SAP global lock
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
sapContext : Pointer to SAP handle
@@ -763,7 +763,7 @@ sapSearchMacList(v_MACADDR_t *macList, v_U8_t num_mac, v_U8_t *peerMac, v_U8_t *
RETURN VALUE
If SUCCESS or FAILURE.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
@@ -773,12 +773,12 @@ sap_AcquireGlobalLock( ptSapContext pSapCtx );
FUNCTION sapIsPeerMacAllowed
- DESCRIPTION
+ DESCRIPTION
Function to implement release SAP global lock
- DEPENDENCIES
+ DEPENDENCIES
- PARAMETERS
+ PARAMETERS
IN
sapContext : Pointer to SAP handle
@@ -787,7 +787,7 @@ sap_AcquireGlobalLock( ptSapContext pSapCtx );
RETURN VALUE
If SUCCESS or FAILURE.
- SIDE EFFECTS
+ SIDE EFFECTS
============================================================================*/
VOS_STATUS
@@ -851,6 +851,5 @@ sapInitDfsChannelNolList(ptSapContext sapContext);
#ifdef __cplusplus
}
-#endif
+#endif
#endif /* #ifndef WLAN_QCT_WLANSAP_INTERNAL_H */
-
diff --git a/CORE/SERVICES/HIF/DXE/dmux_dxe.c b/CORE/SERVICES/HIF/DXE/dmux_dxe.c
index cbed9da5a764..42b25c967213 100644
--- a/CORE/SERVICES/HIF/DXE/dmux_dxe.c
+++ b/CORE/SERVICES/HIF/DXE/dmux_dxe.c
@@ -64,7 +64,7 @@ ATH_DEBUG_INSTANTIATE_MODULE_VAR(dmux_dxe,
#endif
//PS TEST - need to put this in a common location
-#define HIF_DXE_RX_BUFFER_SIZE 2612
+#define HIF_DXE_RX_BUFFER_SIZE 2612
enum dmux_dxe_frame_type {
DMUX_DXE_FRAME_TYPE_DATA = 0,
@@ -85,10 +85,10 @@ static inline void dmux_dxe_rx_bd_swap(isoc_rx_bd_t *rx_bd)
{
isoc_hw_bd_swap_bytes32((char *) rx_bd, sizeof(*rx_bd));
}
-#endif
+#endif
-//static enum A_BOOL
-static A_BOOL
+//static enum A_BOOL
+static A_BOOL
dmux_dxe_validate_frame(adf_nbuf_t rx_frame)
{
isoc_rx_bd_t *rx_bd;
@@ -126,7 +126,7 @@ dmux_dxe_validate_frame(adf_nbuf_t rx_frame)
if ((mpdu_header_offset < sizeof(*rx_bd)) && (!(amsdu_subframe && !amsdu_subframe_first))) {
/* AMSDU case, ucMPDUHOffset = 0 it should be handled separately. Drop packet */
- return FALSE;
+ return FALSE;
}
/* A-MSDU frame, but not first sub-frame
@@ -143,17 +143,17 @@ dmux_dxe_validate_frame(adf_nbuf_t rx_frame)
}
/* Update RX BD */
- //PS TEST - NOTE - this is uncached memory. We might consider keeping a cached RX SW DESC
+ //PS TEST - NOTE - this is uncached memory. We might consider keeping a cached RX SW DESC
rx_bd->mpdu_header_offset = mpdu_header_offset;
- /*
+ /*
* Fix HW reported frame type as typeSubtype in BD is not reliable.
- * Determine frame type (data/mgmt) from 802.11 MAC header.
+ * Determine frame type (data/mgmt) from 802.11 MAC header.
*/
frame_type_subtype = IEEE80211_FC0_TYPE_DATA | IEEE80211_FC0_SUBTYPE_QOS;
- if (0 == rx_bd->frame_translate)
+ if (0 == rx_bd->frame_translate)
{
- if(!amsdu_subframe)
+ if(!amsdu_subframe)
{
dot11frame = (struct ieee80211_frame *)(((a_uint8_t *)rx_bd) + mpdu_header_offset);
frame_type_subtype = dot11frame->i_fc[0];
@@ -164,14 +164,14 @@ dmux_dxe_validate_frame(adf_nbuf_t rx_frame)
dot11frame = (struct ieee80211_frame *)(((a_uint8_t *)rx_bd) + sizeof(*rx_bd));
frame_type_subtype = dot11frame->i_fc[0];
}
- }
+ }
rx_bd->frame_type_subtype = frame_type_subtype;
return TRUE;
}
-static inline enum dmux_dxe_frame_type
+static inline enum dmux_dxe_frame_type
dmux_dxe_determine_frame_type(adf_nbuf_t rx_frame, E_HIFDXE_CHANNELTYPE channel_type)
{
isoc_rx_bd_t *rx_bd;
@@ -199,7 +199,7 @@ dmux_dxe_determine_frame_type(adf_nbuf_t rx_frame, E_HIFDXE_CHANNELTYPE channel_
}
}
-static void
+static void
dmux_dxe_indicate_frame_list(dmux_dxe_handle pdev, adf_nbuf_t rx_frame_list,
enum dmux_dxe_frame_type frame_type,
E_HIFDXE_CHANNELTYPE chan_type)
@@ -320,7 +320,7 @@ dmux_dxe_rx(void *pContext, adf_nbuf_t rx_list, E_HIFDXE_CHANNELTYPE channel_typ
}
-dmux_dxe_handle
+dmux_dxe_handle
dmux_dxe_attach(adf_os_device_t osdev)
{
S_HIFDXE_CALLBACK hif_dxe_callbacks = {0};
@@ -337,7 +337,7 @@ dmux_dxe_attach(adf_os_device_t osdev)
g_pdev = adf_os_mem_alloc(osdev, sizeof(struct dmux_dxe_pdev_t));
if (NULL == g_pdev) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("%s : dmux_dxe object allocation failure.\n", __FUNCTION__));
- return NULL;
+ return NULL;
}
adf_os_mem_zero(g_pdev, sizeof(*g_pdev));
@@ -371,9 +371,9 @@ void dmux_dxe_detach(dmux_dxe_handle pdev)
if ((NULL == pdev) || (pdev != g_pdev)) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("dmux_dxe_detach: Invalid handle.\n"));
- return;
+ return;
}
-
+
if (!adf_os_atomic_dec_and_test(&pdev->ref_count)) {
/* there are other clients still using dmux_dxe */
return;
@@ -401,7 +401,7 @@ dmux_dxe_register_callback_rx_mgmt(
{
if ((NULL == pdev) || (pdev != g_pdev)) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("%s: Invalid handle.\n", __FUNCTION__));
- return A_EINVAL;
+ return A_EINVAL;
}
pdev->rx_mgmt_cb = rx_mgmt_cb;
@@ -416,7 +416,7 @@ dmux_dxe_register_callback_rx_ctrl(
{
if ((NULL == pdev) || (pdev != g_pdev)) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("%s: Invalid handle.\n", __FUNCTION__));
- return A_EINVAL;
+ return A_EINVAL;
}
pdev->rx_ctrl_cb = rx_ctrl_cb;
@@ -431,7 +431,7 @@ dmux_dxe_register_callback_rx_data(
{
if ((NULL == pdev) || (pdev != g_pdev)) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("%s: Invalid handle.\n", __FUNCTION__));
- return A_EINVAL;
+ return A_EINVAL;
}
pdev->rx_data_cb = rx_data_cb;
@@ -446,7 +446,7 @@ dmux_dxe_register_callback_msg(
{
if ((NULL == pdev) || (pdev != g_pdev)) {
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("%s: Invalid handle.\n", __FUNCTION__));
- return A_EINVAL;
+ return A_EINVAL;
}
pdev->msg_cb = msg_cb;
diff --git a/CORE/SERVICES/HIF/DXE/dmux_dxe_api.h b/CORE/SERVICES/HIF/DXE/dmux_dxe_api.h
index f218086da2ea..b32d838c901a 100644
--- a/CORE/SERVICES/HIF/DXE/dmux_dxe_api.h
+++ b/CORE/SERVICES/HIF/DXE/dmux_dxe_api.h
@@ -53,7 +53,7 @@ void dmux_dxe_detach(dmux_dxe_handle pdev);
typedef void (*dmux_dxe_ctrl_cb)(void *context, adf_nbuf_t info);
/**
- * @brief
+ * @brief
* allow clients to register for rx control frame callbacks
*/
A_STATUS
@@ -64,7 +64,7 @@ dmux_dxe_register_callback_rx_ctrl(
typedef void (*dmux_dxe_mgmt_cb)(void *context, adf_nbuf_t info);
/**
- * @brief
+ * @brief
* allow clients to register for rx management frame callbacks
*/
A_STATUS
@@ -76,7 +76,7 @@ typedef void
(*dmux_dxe_data_cb)(void *context, adf_nbuf_t info, E_HIFDXE_CHANNELTYPE chan);
/**
- * @brief
+ * @brief
* allow clients to register for rx data frame callbacks
*/
A_STATUS
@@ -87,7 +87,7 @@ dmux_dxe_register_callback_rx_data(
typedef void (*dmux_dxe_msg_cb)(void *context, adf_nbuf_t info);
/**
- * @brief
+ * @brief
* allow clients to register for HTT T2H message callbacks
*/
A_STATUS
diff --git a/CORE/SERVICES/HIF/DXE/dmux_dxe_internal.h b/CORE/SERVICES/HIF/DXE/dmux_dxe_internal.h
index ed51b5053d30..59366f33a68f 100644
--- a/CORE/SERVICES/HIF/DXE/dmux_dxe_internal.h
+++ b/CORE/SERVICES/HIF/DXE/dmux_dxe_internal.h
@@ -37,7 +37,7 @@
struct dmux_dxe_pdev_t {
adf_os_atomic_t ref_count; /* module reference count */
- hif_dxe_handle h_hif_dxe;
+ hif_dxe_handle h_hif_dxe;
dmux_dxe_data_cb rx_data_cb;
dmux_dxe_mgmt_cb rx_mgmt_cb;
dmux_dxe_ctrl_cb rx_ctrl_cb;
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe.c b/CORE/SERVICES/HIF/DXE/hif_dxe.c
index c672e7236f48..18f9292504a5 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe.c
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe.c
@@ -33,7 +33,7 @@
* DXE software module communicates with the RIVA DXE HW block for data path which
* is a DMA engine to transfer Data from Host DDR to Target DDR.
* Provides API to :
-* - Initialize the DMA block registers, Allocate DMA Memory for Descriptors/Rx Network Packets.
+* - Initialize the DMA block registers, Allocate DMA Memory for Descriptors/Rx Network Packets.
* - Send Recieve Network Packets over the DXE.
* - Register Tx Complete, Rx and Low Resource Callbacks.
* - Send Tx Data packets and report Rx Packets
@@ -93,23 +93,23 @@ A_STATUS hif_dxe_notify_smsm(S_HIFDXE_CONTEXT *dxe_ctx,u_int8_t kickDxe,u_int8_t
if(kickDxe)
{
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s Set Kick off DXE\n",__FUNCTION__));
- setSt |= HIFDXE_SMSM_WLAN_TX_ENABLE;
+ setSt |= HIFDXE_SMSM_WLAN_TX_ENABLE;
}
else
{
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s Clear Kick off DXE\n",__FUNCTION__));
clrSt |= HIFDXE_SMSM_WLAN_TX_ENABLE;
}
-
+
if(ringEmpty)
{
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s SMSM Tx Ring Empty\n",__FUNCTION__));
- clrSt |= HIFDXE_SMSM_WLAN_TX_RINGS_NOT_EMPTY;
+ clrSt |= HIFDXE_SMSM_WLAN_TX_RINGS_NOT_EMPTY;
}
else
{
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s SMSM Tx Ring Not Empty\n",__FUNCTION__));
- setSt |= HIFDXE_SMSM_WLAN_TX_RINGS_NOT_EMPTY;
+ setSt |= HIFDXE_SMSM_WLAN_TX_RINGS_NOT_EMPTY;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s SMSM C : %x S : %x\n",__FUNCTION__,clrSt,setSt));
@@ -191,7 +191,7 @@ A_STATUS dxe_tx_pull_frames(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *ch
adf_os_assert(0);
return A_ERROR;
}
- //FIXME_RT The Spin Lock must be held only for DMA Channel operation and client cb must not be invoked under this spin lock
+ //FIXME_RT The Spin Lock must be held only for DMA Channel operation and client cb must not be invoked under this spin lock
adf_os_spin_lock(&channelEntry->dxeChannelLock);
currentCtrlBlk = channelEntry->tailCtrlBlk;
@@ -358,11 +358,11 @@ A_STATUS dxe_tx_complete_handler(void *pvcontext)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("dxe_tx_complete_handler : Enable TX complete interrupt FAIL! "));
- return status;
+ return status;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("dxe_tx_complete_handler TX COMP INT Enabled, remain TX frame count on ring %d\n", adf_os_atomic_read(&pdxectx->tx_pkts_pending)));
- /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
+ /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
the posibility of a race*/
dxe_ps_complete(pdxectx, TRUE);
}
@@ -424,13 +424,13 @@ A_STATUS dxe_tx_complete_handler(void *pvcontext)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("dxe_tx_complete_handler : Enable TX complete interrupt FAIL! "));
- return status;
+ return status;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("dxe_tx_complete_handler TX COMP INT Enabled, remaining TX frame count on ring %d\n", adf_os_atomic_read(&pdxectx->tx_pkts_pending)));
}
- /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
+ /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
the posibility of a race*/
dxe_ps_complete(pdxectx, TRUE);
@@ -438,7 +438,7 @@ A_STATUS dxe_tx_complete_handler(void *pvcontext)
return status;
}
-/* Fill RX ring with adf_nbufs.
+/* Fill RX ring with adf_nbufs.
* DOES NOT KICK THE HARDWARE. This is the caller's responsibility.
*
* Return TRUE if at least one buffer added to ring.
@@ -470,7 +470,7 @@ static u_int8_t dxe_rx_ring_fill_n(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBT
* another A-MPDU rx, no special recovery is needed.
*/
AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_rx_ring_fill_n: Failed to Retrieve Free Rx Buffers . Starting Rx Refill Timer Num Rx Desc : %d \n",adf_os_atomic_read(&channel->numFreeDesc)));
- adf_os_timer_start(&channel->rx_refill_retry_timer,
+ adf_os_timer_start(&channel->rx_refill_retry_timer,
HIF_DXE_RX_RING_REFILL_RETRY_TIME_MS);
break;
}
@@ -505,7 +505,7 @@ static u_int8_t dxe_rx_ring_fill_n(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBT
{
/* Issue a dummy read from the DXE descriptor DDR location to ensure
* that any posted writes are reflected in memory before DXE looks at
- * the descriptor.
+ * the descriptor.
*/
if (channel->extraConfig.cw_ctrl_read != desc->descCtrl.ctrl)
{
@@ -543,11 +543,11 @@ static void dxe_rx_ring_refill_retry(void *arg)
S_HIFDXE_CONTEXT *dxe_ctx = channel->dxe_ctx;
u_int8_t new_frame;
- AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_rx_ring_refill_retry Before Replenish NumDesc : %d",adf_os_atomic_read(&channel->numFreeDesc)));
+ AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_rx_ring_refill_retry Before Replenish NumDesc : %d",adf_os_atomic_read(&channel->numFreeDesc)));
new_frame = dxe_rx_ring_replenish(channel->dxe_ctx, channel);
- AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_rx_ring_refill_retry After Replenish NumDesc : %d",adf_os_atomic_read(&channel->numFreeDesc)));
+ AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_rx_ring_refill_retry After Replenish NumDesc : %d",adf_os_atomic_read(&channel->numFreeDesc)));
if (!new_frame)
{
@@ -628,8 +628,8 @@ static adf_nbuf_t dxe_rx_ring_reap(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBT
adf_os_spin_lock(&channelEntry->dxeChannelLock);
- ctrlblk = channelEntry->headCtrlBlk;
- desc = ctrlblk->linkedDesc;
+ ctrlblk = channelEntry->headCtrlBlk;
+ desc = ctrlblk->linkedDesc;
descCtrl = WLANDXE_U32_SWAP_ENDIAN(desc->descCtrl.ctrl);
/* Process hardware RX ring */
@@ -648,8 +648,8 @@ static adf_nbuf_t dxe_rx_ring_reap(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBT
if (rx_buf_prior)
{
adf_nbuf_set_next(rx_buf_prior, rx_buf);
- }
- else
+ }
+ else
{
rx_buf_list_head = rx_buf;
}
@@ -679,7 +679,7 @@ static adf_nbuf_t dxe_rx_ring_reap(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBT
return rx_buf_list_head;
}
-/*
+/*
* Attempt to resync SW RX ring head ptr with HW RX ring head.
*
* This is called as part of a software workaround for a hardware bug.
@@ -713,9 +713,9 @@ static A_BOOL dxe_rx_ring_resync(S_HIFDXE_CONTEXT *dxe_ctx,
dxeChannelAllDescDump(channelEntry, channelEntry->channelType);
#endif
- /* Abnormal interrupt detected, try to find invalidated descriptor
- * (i.e. hardware completed rx frame)
- * This would be the hardware head ptr.
+ /* Abnormal interrupt detected, try to find invalidated descriptor
+ * (i.e. hardware completed rx frame)
+ * This would be the hardware head ptr.
*/
for (desc_loop = 0; desc_loop < channel->numDesc; desc_loop++)
{
@@ -741,7 +741,7 @@ static A_BOOL dxe_rx_ring_resync(S_HIFDXE_CONTEXT *dxe_ctx,
}
/* Return TRUE if RX ring has completed frames to be processed */
-static u_int8_t dxe_rx_channel_read_and_clear_intr(S_HIFDXE_CONTEXT *dxe_ctx,
+static u_int8_t dxe_rx_channel_read_and_clear_intr(S_HIFDXE_CONTEXT *dxe_ctx,
WLANDXE_ChannelCBType *channel,
u_int32_t *chstatus)
{
@@ -851,7 +851,7 @@ A_STATUS dxe_rx_handler(void *pvcontext)
/* Reap - unlink RX bufs from RX ring */
rx_buf_list_head_array[i] = dxe_rx_ring_reap(dxe_ctx, channel);
- /* START - SW WAR
+ /* START - SW WAR
* Workaround for hw and sw's head ptr out of sync after Riva power up.
* If two successive RX interrupts with no completed frames in RX ring,
* try to manually resync SW ring head ptr to HW ring head ptr.
@@ -900,7 +900,7 @@ A_STATUS dxe_rx_handler(void *pvcontext)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("dxe_rx_handler: Enable RX Ready interrupt fail\n"));
- return status;
+ return status;
}
/* Let Riva go back to sleep */
@@ -928,7 +928,7 @@ A_STATUS dxe_dma_core_start(S_HIFDXE_CONTEXT *dxe_ctx)
/* Reset First */
registerData = WLANDXE_DMA_CSR_RESET_MASK;
registerData = hif_dxe_os_readreg(dxe_ctx->hif_os_handle,WALNDEX_DMA_CSR_ADDRESS);
- registerData = WLANDXE_DMA_CSR_EN_MASK;
+ registerData = WLANDXE_DMA_CSR_EN_MASK;
registerData |= WLANDXE_DMA_CSR_ECTR_EN_MASK;
registerData |= WLANDXE_DMA_CSR_TSTMP_EN_MASK;
registerData |= WLANDXE_DMA_CSR_H2H_SYNC_EN_MASK;
@@ -1055,7 +1055,7 @@ A_STATUS dxe_tx_push_frame(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *cha
}
adf_os_spin_lock(&channelEntry->dxeChannelLock);
- adf_os_atomic_set(&channelEntry->numFragmentCurrentChain, 0);
+ adf_os_atomic_set(&channelEntry->numFragmentCurrentChain, 0);
num_frags = adf_nbuf_get_num_frags(nbuf);
currentCtrlBlk = channelEntry->headCtrlBlk;
@@ -1126,7 +1126,7 @@ A_STATUS dxe_tx_push_frame(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *cha
}
channelEntry->numTotalFrame++;
- AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("dxe_tx_push_frame NUM TX FRAG %d, Total Frame %d\n",adf_os_atomic_read(&channelEntry->numFragmentCurrentChain), channelEntry->numTotalFrame));
+ AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("dxe_tx_push_frame NUM TX FRAG %d, Total Frame %d\n",adf_os_atomic_read(&channelEntry->numFragmentCurrentChain), channelEntry->numTotalFrame));
/* Program Channel control register
* Set as end of packet
@@ -1159,7 +1159,7 @@ A_STATUS dxe_tx_push_frame(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *cha
{
AR_DEBUG_PRINTF(ATH_DEBUG_TRC,( "dxe_tx_push_frame SMSM_ret LO=%d HI=%d\n", adf_os_atomic_read(&dxe_ctx->dxeChannel[HIFDXE_CHANNEL_TX_LOW_PRI].numRsvdDesc),
adf_os_atomic_read(&dxe_ctx->dxeChannel[HIFDXE_CHANNEL_TX_HIGH_PRI].numRsvdDesc )));
-
+
hif_dxe_notify_smsm(dxe_ctx, TRUE, FALSE);
return status;
}
@@ -1205,7 +1205,7 @@ A_STATUS dxe_tx_push_frame(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *cha
hif_dxe_os_writereg(dxe_ctx->hif_os_handle,channelEntry->channelRegister.chDXESadrlRegAddr,
WLANDXE_U32_SWAP_ENDIAN(firstDesc->dxedesc.dxe_short_desc.srcMemAddrL));
- hif_dxe_os_writereg(dxe_ctx->hif_os_handle,channelEntry->channelRegister.chDXESadrhRegAddr,0);
+ hif_dxe_os_writereg(dxe_ctx->hif_os_handle,channelEntry->channelRegister.chDXESadrhRegAddr,0);
/* Linked list Descriptor pointer */
hif_dxe_os_writereg(dxe_ctx->hif_os_handle,channelEntry->channelRegister.chDXEDesclRegAddr,
@@ -1283,7 +1283,7 @@ A_STATUS dxe_alloc_dma_ring(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *ch
currentCtrlBlk->linkedDescPhyAddr = 0;
currentCtrlBlk->ctrlBlkOrder = idx;
- //Initialize Desc
+ //Initialize Desc
//AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("dxe_alloc_dmaring : Allocated Descriptor %d VA 0x%x, PA 0x%x\n", idx,currentDesc, physAddress));
if ((HIFDXE_CHANNEL_TX_LOW_PRI == channelEntry->channelType) ||
(HIFDXE_CHANNEL_TX_HIGH_PRI == channelEntry->channelType))
@@ -1328,7 +1328,7 @@ A_STATUS dxe_alloc_dma_ring(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *ch
{
prevCtrlBlk->nextCtrlBlk = currentCtrlBlk;
currentCtrlBlk->nextCtrlBlk = channelEntry->headCtrlBlk;
- prevDesc->dxedesc.dxe_short_desc.phyNextL =
+ prevDesc->dxedesc.dxe_short_desc.phyNextL =
WLANDXE_U32_SWAP_ENDIAN(physAddress);
currentDesc->dxedesc.dxe_short_desc.phyNextL =
WLANDXE_U32_SWAP_ENDIAN(channelEntry->headCtrlBlk->linkedDescPhyAddr);
@@ -1394,11 +1394,11 @@ A_STATUS dxe_free_dma_ring(S_HIFDXE_CONTEXT *dxe_ctx, WLANDXE_ChannelCBType *cha
//End Local Functions
/**
-* @ HIF DXE Attach . One Time Initialize of DXE HW / Allocate DXE SW Module Context / Alloc DXE Descriptors , Rx Buffers , Control Block /Attach OS Interrupts etc
+* @ HIF DXE Attach . One Time Initialize of DXE HW / Allocate DXE SW Module Context / Alloc DXE Descriptors , Rx Buffers , Control Block /Attach OS Interrupts etc
*
* @param[in]dev - OS Dev Handle
*
-* @retval hif_dxe_handle Allocates HIF DEX Context Block and returns handle for subsequent calls to DXE
+* @retval hif_dxe_handle Allocates HIF DEX Context Block and returns handle for subsequent calls to DXE
*/
hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
{
@@ -1423,7 +1423,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
if (NULL == dxe_ctx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("WLANDXE_Open Control Block Alloc Fail \n"));
- return NULL;
+ return NULL;
}
adf_os_mem_zero(dxe_ctx, sizeof(S_HIFDXE_CONTEXT));
@@ -1440,7 +1440,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("WLANDXE_Open : hif_dxe_os_init Failure! \n"));
adf_os_mem_free(dxe_ctx);
- return NULL;
+ return NULL;
}
status = dxe_cmn_def_config(dxe_ctx);
@@ -1448,7 +1448,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("WLANDXE_Open Common Configuration Fail"));
hif_dxe_detach(dxe_ctx);
- return NULL;
+ return NULL;
}
dxe_ctx->dxeChannel[HIFDXE_CHANNEL_TX_LOW_PRI].channelType = HIFDXE_CHANNEL_TX_LOW_PRI;
@@ -1468,10 +1468,10 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("WLANDXE_Open Channel Basic Configuration Fail for channel %d", idx));
hif_dxe_detach(dxe_ctx);
- return NULL;
+ return NULL;
}
- adf_os_spinlock_init(&currentChannel->dxeChannelLock);
+ adf_os_spinlock_init(&currentChannel->dxeChannelLock);
/* Allocate DXE Control Block will be used by host DXE driver */
status = dxe_alloc_dma_ring(dxe_ctx, currentChannel);
@@ -1480,7 +1480,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("WLANDXE_Open Alloc DXE Control Block Fail for channel %d", idx));
hif_dxe_detach(dxe_ctx);
- return NULL;
+ return NULL;
}
/* RX specific attach */
@@ -1492,7 +1492,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
dxe_rx_ring_fill_n(dxe_ctx, currentChannel, currentChannel->numDesc);
- adf_os_timer_init(dxe_ctx->osdev, &currentChannel->rx_refill_retry_timer,
+ adf_os_timer_init(dxe_ctx->osdev, &currentChannel->rx_refill_retry_timer,
dxe_rx_ring_refill_retry, (void *)currentChannel);
}
@@ -1503,7 +1503,7 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
dxe_ctx->rxIntDisabledByIMPS = FALSE;
dxe_ctx->txIntDisabledByIMPS = FALSE;
- /* Initializing default BMPS host power state and firmware Power state*/
+ /* Initializing default BMPS host power state and firmware Power state*/
dxe_ctx->hostPowerState = HIF_DXE_POWER_STATE_BMPS;
dxe_ctx->fwPowerState = HIF_DXE_FW_POWER_STATE_BMPS_UNKNOWN;
@@ -1530,11 +1530,11 @@ hif_dxe_handle hif_dxe_attach(adf_os_device_t dev)
}
/**
-* @ HIF DXE Start . Initialize DXE Channels For DMA
+* @ HIF DXE Start . Initialize DXE Channels For DMA
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
@@ -1549,7 +1549,7 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
if (NULL == pdxectx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_start : Invalid DXE Context \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
/* WLANDXE_Start called means DXE engine already initiates
@@ -1559,7 +1559,7 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_start : DXE HW init Fail \n"));
- return status;
+ return status;
}
/* Individual Channel Start */
@@ -1573,7 +1573,7 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_start : Start DMA channel %d Fail \n", idx));
- return status;
+ return status;
}
AR_DEBUG_PRINTF(HIF_DXE_DEBUG,("hif_dxe_start : Start DXE Channel %d SUCCESS! \n", idx));
}
@@ -1586,7 +1586,7 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_start : Enable TX complete interrupt FAIL! "));
- return status;
+ return status;
}
/* Disable TX ready Interrupt and Re-Enable Only when required */
@@ -1594,7 +1594,7 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_start : Enable TX complete interrupt FAIL! "));
- return status;
+ return status;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-%s\n",__FUNCTION__));
@@ -1604,9 +1604,9 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev)
/**
* @ HIF DXE Register . Register Packet Callbacks
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_client_registration(hif_dxe_handle hif_dxe_pdev, S_HIFDXE_CALLBACK *hif_dxe_cb)
{
@@ -1617,7 +1617,7 @@ A_STATUS hif_dxe_client_registration(hif_dxe_handle hif_dxe_pdev, S_HIFDXE_CALLB
if ((NULL == pdxectx) || (NULL == hif_dxe_cb))
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_client_registration : Invalid DXE Context \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
if (NULL != hif_dxe_cb->HifTxCompleteCb) {
@@ -1640,13 +1640,13 @@ A_STATUS hif_dxe_client_registration(hif_dxe_handle hif_dxe_pdev, S_HIFDXE_CALLB
}
/**
-* @ HIF DXE Send . Send packet on DXE
+* @ HIF DXE Send . Send packet on DXE
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
* @param[in]eHifDxeChannel - DXE Channel for Send
* @param[in]nbuf - SDU to send
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel, adf_nbuf_t nbuf)
{
@@ -1661,19 +1661,19 @@ A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel,
if (NULL == pdxectx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_send : Invalid DXE Context \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
if (NULL == nbuf)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_send : Invalid Data packet \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
if ((HIFDXE_CHANNEL_MAX <= channel))
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_send : Invalid Channel \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
currentChannel = &pdxectx->dxeChannel[channel];
@@ -1722,10 +1722,10 @@ A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel,
return status;
}
adf_os_atomic_inc(&pdxectx->tx_pkts_pending);
-
+
adf_os_atomic_inc(&currentChannel->tx_pkts_pending);
-
+
#if 0
//Try Drain Tx Queues
currentChannel = &pdxectx->dxeChannel[HIFDXE_CHANNEL_TX_HIGH_PRI];
@@ -1753,16 +1753,16 @@ A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel,
if (A_OK != status)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_send : Enable TX complete interrupt FAIL! "));
- return status;
+ return status;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("hif_dxe_send TX COMP INT Enabled, remain TX frame count on ring %d\n", adf_os_atomic_read(&pdxectx->tx_pkts_pending)));
- /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
+ /*Kicking the DXE after the TX Complete interrupt was enabled - to avoid
the posibility of a race*/
}
-
+
//Invoke PS Handler to check if SMSM Notify required
dxe_ps_complete(pdxectx, FALSE);
-
+
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-%s\n",__FUNCTION__));
return status;
@@ -1775,10 +1775,10 @@ A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel,
/**
* @ HIF DXE GetResources . Return Available Free Tx Slots in DXE DMA Tx Ring for specified channel
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
-* @param[in]eHifDxeChannel - DXE Channel
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]eHifDxeChannel - DXE Channel
*
-* @retval a_uint32_t Num Available Resources
+* @retval a_uint32_t Num Available Resources
*/
u_int32_t hif_dxe_get_resources(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel)
{
@@ -1790,7 +1790,7 @@ u_int32_t hif_dxe_get_resources(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYP
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_get_resources : Invalid DXE Context \n"));
adf_os_assert(0);
- return A_EINVAL;
+ return A_EINVAL;
}
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-%s\n",__FUNCTION__));
@@ -1799,9 +1799,9 @@ u_int32_t hif_dxe_get_resources(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYP
/**
* @ HIF DXE Flush Tx Packets . Flush And return Tx Packets Pending in DMA through Tx Completion Callbacks.
*
-* @param[in]dxe_ctx - HIF DXE Specific Context
+* @param[in]dxe_ctx - HIF DXE Specific Context
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_flush_txpackets(hif_dxe_handle hif_dxe_pdev)
{
@@ -1818,7 +1818,7 @@ A_STATUS hif_dxe_flush_txpackets(hif_dxe_handle hif_dxe_pdev)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_flush_txpackets : Invalid DXE Context \n"));
adf_os_assert(0);
- return A_EINVAL;
+ return A_EINVAL;
}
/* To ensure DXE wake up, Sedn SMSM Notification */
@@ -1881,10 +1881,10 @@ A_STATUS hif_dxe_flush_txpackets(hif_dxe_handle hif_dxe_pdev)
/**
* @ HIF DXE Set Power State . Synchronously Set Power State relevant for DXE / Ensure No references into DXE are Outstanding
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
* @param[in]PowerState - New Power State
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_set_power_state(hif_dxe_handle hif_dxe_pdev, a_uint8_t PowerState )
{
@@ -1895,11 +1895,11 @@ A_STATUS hif_dxe_set_power_state(hif_dxe_handle hif_dxe_pdev, a_uint8_t PowerSta
}
/**
-* @ HIF DXE Stop . Stop DMA
+* @ HIF DXE Stop . Stop DMA
*
-* @param[in]hif_dxe_pdev - HIF DXE Specific Context
+* @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_stop(hif_dxe_handle hif_dxe_pdev)
{
@@ -1913,7 +1913,7 @@ A_STATUS hif_dxe_stop(hif_dxe_handle hif_dxe_pdev)
if (NULL == pdxectx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_stop : Invalid DXE Context \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
//FIXME_RT Make sure No Outstanding References to DXE . Synchronize with dxe_stopped
@@ -1948,10 +1948,10 @@ A_STATUS hif_dxe_stop(hif_dxe_handle hif_dxe_pdev)
/**
* @brief HIF DXE Read register
- *
- * @param[in] hif_dxe_pdev - HIF DXE Specific Context
+ *
+ * @param[in] hif_dxe_pdev - HIF DXE Specific Context
* @param[in] Addr
- *
+ *
* @return Read Value
*/
u_int32_t hif_dxe_readreg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr)
@@ -1962,11 +1962,11 @@ u_int32_t hif_dxe_readreg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr)
/**
* @brief HIF DXE Write register
- *
- * @param[in] hif_dxe_pdev - HIF DXE Specific Context
+ *
+ * @param[in] hif_dxe_pdev - HIF DXE Specific Context
* @param[in] Addr
* @param[in] val
- *
+ *
* @return void
*/
void
@@ -1979,9 +1979,9 @@ hif_dxe_writereg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr, u_int32_t val)
/**
* @ HIF DXE Detach . UnInitialize DXE Resources / HW / Free Memory / Detach OS Interrupts etc
*
-* @param[in]dxe_ctx - HIF DXE Specific Context
+* @param[in]dxe_ctx - HIF DXE Specific Context
*
-* @retval A_STATUS
+* @retval A_STATUS
*/
A_STATUS hif_dxe_detach(hif_dxe_handle hif_dxe_pdev)
{
@@ -1995,7 +1995,7 @@ A_STATUS hif_dxe_detach(hif_dxe_handle hif_dxe_pdev)
if (NULL == pdxectx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("hif_dxe_detach Invalid DXE Context \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
@@ -2055,8 +2055,8 @@ void hif_dxe_dump()
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("Num Free Desc : %d\n",currentChannel->numFreeDesc));
AR_DEBUG_PRINTF(ATH_DEBUG_ERR, ("Channel Status : 0x%x\n",regval));
}
-
- //For Debugging Tx Stall Scenario check and print Avalibale BD's in BMU
+
+ //For Debugging Tx Stall Scenario check and print Avalibale BD's in BMU
if(((currentChannel->channelType == HIFDXE_CHANNEL_TX_LOW_PRI) || (currentChannel->channelType == HIFDXE_CHANNEL_TX_HIGH_PRI)) &&
currentChannel->tx_pkts_pending > HIF_DXE_TX_PENDING_DEBUG_THRESHOLD )
{
@@ -2069,7 +2069,7 @@ void hif_dxe_dump()
A_UINT8 wq_idx = 0;
//Currently dump only if bd's less than 10 times Threshold
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(" Channel : %d TxPending : %d Avail BD-PDU : 0x%x Threshold : 0x%x \n",idx,currentChannel->tx_pkts_pending,avail_bds,bd_thres0));
-
+
for(wq_idx=0; wq_idx < 27; wq_idx++)
{
wq_addr = (0xFB80001c | ((wq_idx << 8) & 0xff00));
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe.h b/CORE/SERVICES/HIF/DXE/hif_dxe.h
index a182eaedc69a..687bc4d4e2ee 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe.h
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe.h
@@ -33,7 +33,7 @@
* DXE software module communicates with the RIVA DXE HW block for data path which
* is a DMA engine to transfer Data between [ Host DDR <--> Target DDR]
* Provides API to :
- * - Initialize the DMA block registers , Allocate DMA Memory for Descriptors/Rx Network Packets.
+ * - Initialize the DMA block registers , Allocate DMA Memory for Descriptors/Rx Network Packets.
* - Register Tx Complete , Rx and Low Resource Callbacks.
* - Send Tx Data packets and report Rx Packets
* - Report Available Free Slots in Tx Ring
@@ -76,20 +76,20 @@ typedef struct _S_HIFDXE_CALLBACK
/**
- * @ HIF DXE Attach . One Time Initialize of DXE HW / Allocate DXE SW Module Context / Alloc DXE Descriptors , Rx Buffers , Control Block /Attach OS Interrupts etc
+ * @ HIF DXE Attach . One Time Initialize of DXE HW / Allocate DXE SW Module Context / Alloc DXE Descriptors , Rx Buffers , Control Block /Attach OS Interrupts etc
*
* @param[in]dev - OS Dev Handle
*
- * @retval hif_dxe_handle Allocates HIF DEX Context Block and returns handle for subsequent calls to DXE
+ * @retval hif_dxe_handle Allocates HIF DEX Context Block and returns handle for subsequent calls to DXE
*/
hif_dxe_handle hif_dxe_attach(adf_os_device_t dev);
/**
- * @ HIF DXE Start . Initialize the DMA Channels and per channel DMA Registers to Valid Values.
+ * @ HIF DXE Start . Initialize the DMA Channels and per channel DMA Registers to Valid Values.
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev);
@@ -97,20 +97,20 @@ A_STATUS hif_dxe_start(hif_dxe_handle hif_dxe_pdev);
/**
* @ HIF DXE Register . Register Packet Callbacks
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_client_registration(hif_dxe_handle hif_dxe_pdev, S_HIFDXE_CALLBACK *hif_dxe_cb);
/**
- * @ HIF DXE Send . Send packet on DXE
+ * @ HIF DXE Send . Send packet on DXE
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
* @param[in]eHifDxeChannel - DXE Channel for Send
* @param[in]nbuf - SDU to send
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel, adf_nbuf_t nbuf);
@@ -123,10 +123,10 @@ A_STATUS hif_dxe_send(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel,
/**
* @ HIF DXE GetResources . Return Available Free Tx Slots in DXE DMA Tx Ring for specified channel
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
- * @param[in]eHifDxeChannel - DXE Channel
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]eHifDxeChannel - DXE Channel
*
- * @retval a_uint32_t Num Available Resources
+ * @retval a_uint32_t Num Available Resources
*/
u_int32_t hif_dxe_get_resources(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYPE channel);
@@ -134,9 +134,9 @@ u_int32_t hif_dxe_get_resources(hif_dxe_handle hif_dxe_pdev, E_HIFDXE_CHANNELTYP
/**
* @ HIF DXE Flush Tx Packets . Flush And return Tx Packets Pending in DMA through Tx Completion Callbacks.
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_flush_packets(hif_dxe_handle hif_dxe_pdev);
@@ -144,20 +144,20 @@ A_STATUS hif_dxe_flush_packets(hif_dxe_handle hif_dxe_pdev);
/**
* @ HIF DXE Set Power State . Synchronously Set Power State relevant for DXE / Ensure No references into DXE are Outstanding
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
* @param[in]PowerState - New Power State
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_set_power_state(hif_dxe_handle hif_dxe_pdev, u_int8_t power_state );
/**
* @brief HIF DXE Read register
- *
- * @param[in] hif_dxe_pdev - HIF DXE Specific Context
+ *
+ * @param[in] hif_dxe_pdev - HIF DXE Specific Context
* @param[in] Addr
- *
+ *
* @return Read Value
*/
u_int32_t hif_dxe_readreg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr);
@@ -165,11 +165,11 @@ u_int32_t hif_dxe_readreg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr);
/**
* @brief HIF DXE Write register
- *
- * @param[in] hif_dxe_pdev - HIF DXE Specific Context
+ *
+ * @param[in] hif_dxe_pdev - HIF DXE Specific Context
* @param[in] Addr
* @param[in] val
- *
+ *
* @return void
*/
void
@@ -177,11 +177,11 @@ hif_dxe_writereg(hif_dxe_handle hif_dxe_pdev, u_int32_t addr, u_int32_t val);
/**
- * @ HIF DXE Stop . Stop DMA
+ * @ HIF DXE Stop . Stop DMA
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_stop(hif_dxe_handle hif_dxe_pdev);
@@ -189,9 +189,9 @@ A_STATUS hif_dxe_stop(hif_dxe_handle hif_dxe_pdev);
/**
* @ HIF DXE Detach . UnInitialize DXE Resources / HW / Free Memory / Detach OS Interrupts etc
*
- * @param[in]hif_dxe_pdev - HIF DXE Specific Context
+ * @param[in]hif_dxe_pdev - HIF DXE Specific Context
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
A_STATUS hif_dxe_detach(hif_dxe_handle hif_dxe_pdev);
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe_config.c b/CORE/SERVICES/HIF/DXE/hif_dxe_config.c
index f2020dcdb054..5429717badc0 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe_config.c
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe_config.c
@@ -27,14 +27,14 @@
/**
* @file hif_dxe_config.c
-* @brief Provide functions for DXE HIF module DMA Channel configuration
+* @brief Provide functions for DXE HIF module DMA Channel configuration
* @details
-* This file Implements the HIF DXE DMA Channel Configuration Values like :
+* This file Implements the HIF DXE DMA Channel Configuration Values like :
* - DMA Channel Base Addresses
* - DMA Channel Interrupt Maskshif
* - Provide DMA Channel to DMA Channel Configuration mapping
* - Per Channel Config Values like : NumDesc , NumBuffers , Priority , DMA xfr direction etc
-* -
+* -
* -
*/
#include "adf_os_types.h"
@@ -100,11 +100,11 @@ WLANDXE_ChannelConfigType chanTXLowPriConfig =
0,
/* Reference WQ, TX23 */
-#ifdef HIF_DXE_TEST
+#ifdef HIF_DXE_TEST
11,
#else
23,
-#endif
+#endif
/* USB Only, End point info */
0,
@@ -260,7 +260,7 @@ WLANDXE_ChannelMappingType channelList[HIFDXE_CHANNEL_MAX] =
{HIFDXE_CHANNEL_RX_HIGH_PRI, WLANDXE_DMA_CHANNEL_3, &chanRXHighPriConfig},
};
-WLANDXE_TxCompIntConfigType txCompInt =
+WLANDXE_TxCompIntConfigType txCompInt =
{
/* TX Complete Interrupt enable method */
WLANDXE_TX_COMP_INT_PER_K_FRAMES,
@@ -304,7 +304,7 @@ A_STATUS dxe_chan_def_config(S_HIFDXE_CONTEXT * pdxectx,WLANDXE_ChannelCBType
if ((NULL == pdxectx) || (NULL == channelEntry))
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,("dxe_chan_def_config : Invalid DXE Context / DMA Channel Entry \n"));
- return A_EINVAL;
+ return A_EINVAL;
}
for(idx = 0; idx < HIFDXE_CHANNEL_MAX; idx++)
@@ -353,7 +353,7 @@ A_STATUS dxe_chan_def_config(S_HIFDXE_CONTEXT * pdxectx,WLANDXE_ChannelCBType
/* Enable INT External Descriptor */
channelEntry->extraConfig.chan_mask |= WLANDXE_CH_CTRL_INE_ED_MASK;
/* Set Channel This is not channel, event counter, somthing wrong */
- channelEntry->extraConfig.chan_mask |=
+ channelEntry->extraConfig.chan_mask |=
mappedChannel->DMAChannel << WLANDXE_CH_CTRL_CTR_SEL_OFFSET;
/* Transfer Type */
channelEntry->extraConfig.chan_mask |= mappedChannel->channelConfig->xfrType;
@@ -384,7 +384,7 @@ A_STATUS dxe_chan_def_config(S_HIFDXE_CONTEXT * pdxectx,WLANDXE_ChannelCBType
/* Host System Using Little Endian */
channelEntry->extraConfig.chan_mask |= WLANDXE_CH_CTRL_ENDIAN_MASK;
/* BMU Threshold select */
- channelEntry->extraConfig.chan_mask |=
+ channelEntry->extraConfig.chan_mask |=
channelEntry->channelConfig.bmuThdSel << WLANDXE_CH_CTRL_BTHLD_SEL_OFFSET;
/* EOP for control register ??? */
channelEntry->extraConfig.chan_mask |= WLANDXE_CH_CTRL_EOP_MASK;
@@ -496,10 +496,10 @@ A_STATUS dxe_chan_def_config(S_HIFDXE_CONTEXT * pdxectx,WLANDXE_ChannelCBType
/* size mask???? */
- channelEntry->extraConfig.chk_size_mask =
+ channelEntry->extraConfig.chk_size_mask =
mappedChannel->channelConfig->chk_size << 10;
- channelEntry->extraConfig.refWQ_swapped =
+ channelEntry->extraConfig.refWQ_swapped =
WLANDXE_U32_SWAP_ENDIAN(channelEntry->channelConfig.refWQ);
/* Set Channel specific Interrupt mask */
@@ -510,9 +510,8 @@ A_STATUS dxe_chan_def_config(S_HIFDXE_CONTEXT * pdxectx,WLANDXE_ChannelCBType
channelEntry->assignedDMAChannel = mappedChannel->DMAChannel;
adf_os_atomic_set(&channelEntry->numFreeDesc, 0);
adf_os_atomic_set(&channelEntry->numRsvdDesc, 0);
- adf_os_atomic_set(&channelEntry->numFragmentCurrentChain, 0);
+ adf_os_atomic_set(&channelEntry->numFragmentCurrentChain, 0);
channelEntry->numTotalFrame = 0;
channelEntry->hitLowResource = FALSE;
return status;
}
-
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe_hw_pvt.h b/CORE/SERVICES/HIF/DXE/hif_dxe_hw_pvt.h
index 731358a54cba..ef971b80c2e1 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe_hw_pvt.h
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe_hw_pvt.h
@@ -27,7 +27,7 @@
/**
* @file hif_dxe_desc_pvt.h
- * @brief Defines DXE HW Descriptor Structure Format
+ * @brief Defines DXE HW Descriptor Structure Format
* @details
* This file Provides the HIF DXE HW Descriptor Definitions/ DMA Channel Structure / DMA Control And Data Descriptors.
* DXE software module communicates with the RIVA DXE HW block for data path which
@@ -390,7 +390,7 @@ typedef struct
{
WLANDXE_LongDesc dxe_long_desc;
WLANDXE_ShortDesc dxe_short_desc;
- }dxedesc;
+ }dxedesc;
} WLANDXE_DescType;
#endif
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe_os.h b/CORE/SERVICES/HIF/DXE/hif_dxe_os.h
index b8710677dcf7..3d3412681881 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe_os.h
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe_os.h
@@ -35,7 +35,7 @@
* 1. OS Initialization required for DXE Module
* 2. Read/Write DXE registers in OS Specific Manner
* 3. Allocate/Free DMA Memory for DXE Descriptors
- * 4. Communicate with SMSM Driver
+ * 4. Communicate with SMSM Driver
* 5. Other
*/
#ifndef _HIF_DXE_OS_H_
@@ -82,54 +82,54 @@ A_STATUS ol_ath_dxe_initialize(void* Adapter);
/**
* @ HIF OS Init Dxe
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
- * @retval hif_dxe_oshandle Returns OS Specific Allocation Handle
+ * @retval hif_dxe_oshandle Returns OS Specific Allocation Handle
*/
-hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev,
+hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev,
S_HIF_DXE_OS_PARAMS *params);
/**
* @ HIF OS DeInit Dxe
*
- * @param[in]hif_dxe_osdev OS Specific Context
+ * @param[in]hif_dxe_osdev OS Specific Context
*
- * @retval void
+ * @retval void
*/
void hif_dxe_os_deinit(hif_dxe_oshandle hif_dxe_osdev);
/**
* @ HIF OS Enable / Disable TXRX Interrupt
*
- * @param[in]hif_dxe_osdev - OS Specific Context
- * @param[in]eIntType
- * @param[in]bEnable
+ * @param[in]hif_dxe_osdev - OS Specific Context
+ * @param[in]eIntType
+ * @param[in]bEnable
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
-A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
+A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
E_DXE_INTTYPE eIntType , E_DXE_INT_ACTION eAction);
/**
* @ HIF OS Notify SMSM
*
- * @param[in]hif_dxe_osdev - OS Specific Context
- * @param[in]clrSt
- * @param[in]setSt
+ * @param[in]hif_dxe_osdev - OS Specific Context
+ * @param[in]clrSt
+ * @param[in]setSt
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
-A_STATUS hif_dxe_os_notifysmsm(hif_dxe_oshandle hif_dxe_osdev,
+A_STATUS hif_dxe_os_notifysmsm(hif_dxe_oshandle hif_dxe_osdev,
u_int32_t clrSt, u_int32_t setSt);
/**
* @brief HIF Os Read register
- *
+ *
* @param[in] OS Context
* @param[in] Addr
- *
+ *
* @return Read Value
*/
u_int32_t
@@ -138,22 +138,22 @@ hif_dxe_os_readreg(hif_dxe_oshandle hif_dxe_osdev, u_int32_t addr);
/**
* @brief HIF Os Write register
- *
+ *
* @param[in] OS Context
* @param[in] Addr
* @param[in] val
- *
+ *
* @return void
*/
void
-hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev, u_int32_t addr,
+hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev, u_int32_t addr,
u_int32_t val);
/**
* @brief HIF Mem Barrier
- *
+ *
* @param[in] void
- *
+ *
* @return void
*/
void hif_dxe_os_mem_barrier(void);
diff --git a/CORE/SERVICES/HIF/DXE/hif_dxe_pvt.h b/CORE/SERVICES/HIF/DXE/hif_dxe_pvt.h
index cdb18f19024a..ccc484c55632 100644
--- a/CORE/SERVICES/HIF/DXE/hif_dxe_pvt.h
+++ b/CORE/SERVICES/HIF/DXE/hif_dxe_pvt.h
@@ -27,7 +27,7 @@
/**
* @file hif_dxe_pvt.h
- * @brief Defines Software Structures used by DXE
+ * @brief Defines Software Structures used by DXE
* @details
* This file Provides the HIF DXE Software Structures.
* DXE software module communicates with the RIVA DXE HW block for data path which
@@ -67,7 +67,7 @@
#define HIF_DXE_TX_PENDING_DEBUG_THRESHOLD 5
// Number of resources which are allocated from ACPI table for RIVA
#define HIFDXE_NUM_OS_MEM_RES (1) // memory 0x03000000 - 0x04000000
-#define HIFDXE_NUM_INTR_RES (2) // TX complete(235) and RX ready(234)
+#define HIFDXE_NUM_INTR_RES (2) // TX complete(235) and RX ready(234)
#define HIFDXE_RX_INTERRUPT_PRO_MASK 0x20
#define HIFDXE_TX_INTERRUPT_PRO_MASK 0x40
@@ -90,14 +90,14 @@
#define HIFDXE_TX_LO_PRI_RES_NUM (HIFDXE_TX_MAX_FRMS * HIFDXE_TX_AVG_FRAGS_PER_FRAME + HIFDXE_TX_LO_PRI_RES_MARGIN)
-/*The maximum number of packets that can be chained in dxe for the HI
+/*The maximum number of packets that can be chained in dxe for the HI
priority channel */
#define HIFDXE_TX_HI_PRI_RES_NUM 10
#define WLANDXE_TX_LOW_RES_THRESHOLD (5)
#define HIF_DXE_NUM_RX_CHANNEL 2
-#define HIF_DXE_RX_BUFFER_SIZE 2612
+#define HIF_DXE_RX_BUFFER_SIZE 2612
#define HIF_DXE_RX_RING_REFILL_RETRY_TIME_MS 50
/*----------------------------------------------------------------------------
@@ -138,7 +138,7 @@ typedef enum
typedef struct _WLANDXE_DescCtrlBlkType {
struct _WLANDXE_DescCtrlBlkType *nextCtrlBlk;
- adf_nbuf_t xfrFrame;
+ adf_nbuf_t xfrFrame;
volatile WLANDXE_DescType *linkedDesc;
adf_os_dma_addr_t linkedDescPhyAddr;
A_UINT32 ctrlBlkOrder;
@@ -201,7 +201,7 @@ typedef struct
{
u_int32_t refWQ_swapped;
u_int8_t chEnabled;
- u_int8_t chConfigured;
+ u_int8_t chConfigured;
u_int32_t channel;
u_int32_t chk_size_mask;
u_int32_t bmuThdSel_mask;
@@ -241,13 +241,13 @@ typedef struct
E_HIFDXE_CHANNELTYPE channelType;
WLANDXE_DescCtrlBlkType *headCtrlBlk;
WLANDXE_DescCtrlBlkType *tailCtrlBlk;
- struct
+ struct
{
void *vaddr;
adf_os_dma_addr_t paddr;
adf_os_dma_mem_context(memctx);
} descblk_mem_pool;
- void *ctrlblk_mem_pool; //Memory Pool For per Descriptor Control Block
+ void *ctrlblk_mem_pool; //Memory Pool For per Descriptor Control Block
volatile WLANDXE_DescType *DescBottomLoc;
adf_os_dma_addr_t descBottomLocPhyAddr;
u_int32_t numDesc;
@@ -291,20 +291,20 @@ typedef struct _S_HIFDXE_CONTEXT
u_int32_t dxeCookie;
hif_dxe_oshandle hif_os_handle;
WLANDXE_TxCompIntConfigType txCompInt;
- adf_os_atomic_t tx_pkts_pending;
+ adf_os_atomic_t tx_pkts_pending;
S_HIFDXE_CALLBACK hif_client_cb;
volatile E_DXE_HOST_PS_TYPE hostPowerState;
volatile E_DXE_FIRMWARE_PS_TYPE fwPowerState;
adf_os_atomic_t ref_count;
- adf_os_atomic_t tx_pk_count;
+ adf_os_atomic_t tx_pk_count;
//Do Not Need These variables . Check and clean.
#ifdef FIXME_RT
u_int32_t interruptPath;
WLANDXE_SetPowerStateCbType setPowerStateCb;
- u_int8_t ucTxMsgCnt;
- u_int16_t lastKickOffDxe;
+ u_int8_t ucTxMsgCnt;
+ u_int16_t lastKickOffDxe;
u_int32_t dxeFlushTxFrames;
#endif
} S_HIFDXE_CONTEXT;
diff --git a/CORE/SERVICES/HIF/DXE/linux/hif_dxe_os.c b/CORE/SERVICES/HIF/DXE/linux/hif_dxe_os.c
index 996964286496..8deb89ca1fc5 100644
--- a/CORE/SERVICES/HIF/DXE/linux/hif_dxe_os.c
+++ b/CORE/SERVICES/HIF/DXE/linux/hif_dxe_os.c
@@ -29,15 +29,15 @@
\file hif_dxe_os.c
\brief Implementation of WMA
- Provide Linux OS Specific Shim Layer Implementation for
+ Provide Linux OS Specific Shim Layer Implementation for
DXE HIF module.
- This file Provides the Linux OS Specific Layer API for
+ This file Provides the Linux OS Specific Layer API for
HIF DXE Module.
-
- DXE software module communicates with this layer
+
+ DXE software module communicates with this layer
for Linux Specific Functionality
-
+
Implements :
1. Linux OS Initialization required for DXE Module
- Get hold of and Initialize DXE OS Resources(
@@ -73,7 +73,7 @@
#include "hif_dxe_os.h"
#include "hif_dxe_ospvt.h"
#include "hif_dxe.h"
-#include "hif_dxe_hw_pvt.h"
+#include "hif_dxe_hw_pvt.h"
#include "hif_dxe_pvt.h"
#include <mach/msm_smsm.h>
#include "vos_threads.h"
@@ -102,7 +102,7 @@ irqreturn_t hif_dxe_os_rx_isr(int irq,void* pSrvcCtx);
/**
* @ HIF OS Enable Tx Interrupt
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
* @retval TRUE/FALSE [Success/Fail]
*/
@@ -115,7 +115,7 @@ unsigned char hif_dxe_os_enable_tx_intr(void* pctx)
/* Enable Tx IRQ at OS level */
if(!hif_dxeos_ctx->bTxRegistered)
{
- ret = request_irq(hif_dxeos_ctx->tx_irq, hif_dxe_os_tx_isr,
+ ret = request_irq(hif_dxeos_ctx->tx_irq, hif_dxe_os_tx_isr,
IRQF_TRIGGER_HIGH, "wcnss_wlan", hif_dxeos_ctx);
if(ret)
@@ -151,9 +151,9 @@ unsigned char hif_dxe_os_enable_tx_intr(void* pctx)
/**
* @ HIF OS Disable Tx Interrupt
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
- * @retval void
+ * @retval void
*/
unsigned char hif_dxe_os_disable_tx_intr(void* pctx)
{
@@ -161,7 +161,7 @@ unsigned char hif_dxe_os_disable_tx_intr(void* pctx)
u_int32_t val = 0;
/* Disable Tx Channel Interrupt */
- val = ~TX_INT_SELECT(CH_TX_LOW_PRI) & ~TX_INT_SELECT(CH_TX_HIGH_PRI) &
+ val = ~TX_INT_SELECT(CH_TX_LOW_PRI) & ~TX_INT_SELECT(CH_TX_HIGH_PRI) &
DXE_READ_REG(hif_dxeos_ctx,WLANDXE_CCU_DXE_INT_SELECT);
DXE_WRITE_REG(hif_dxeos_ctx,WLANDXE_CCU_DXE_INT_SELECT,val);
@@ -177,7 +177,7 @@ unsigned char hif_dxe_os_disable_tx_intr(void* pctx)
/**
* @ HIF OS Enable Rx Interrupt
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
* @retval TRUE/FALSE [Success/Fail]
*/
@@ -190,7 +190,7 @@ unsigned char hif_dxe_os_enable_rx_intr(void* pctx)
/* Enable Rx IRQ at OS level */
if(!hif_dxeos_ctx->bRxRegistered)
{
- ret = request_irq(hif_dxeos_ctx->rx_irq, hif_dxe_os_rx_isr,
+ ret = request_irq(hif_dxeos_ctx->rx_irq, hif_dxe_os_rx_isr,
IRQF_TRIGGER_HIGH, "wcnss_wlan", hif_dxeos_ctx);
if(ret)
@@ -226,9 +226,9 @@ unsigned char hif_dxe_os_enable_rx_intr(void* pctx)
/**
* @ HIF OS Disable Rx Interrupt
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
- * @retval void
+ * @retval void
*/
unsigned char hif_dxe_os_disable_rx_intr(void* pctx)
{
@@ -236,7 +236,7 @@ unsigned char hif_dxe_os_disable_rx_intr(void* pctx)
u_int32_t val = 0;
/* Disable Rx Channel Interrupt */
- val = ~RX_INT_SELECT(CH_RX_LOW_PRI) & ~RX_INT_SELECT(CH_RX_HIGH_PRI) &
+ val = ~RX_INT_SELECT(CH_RX_LOW_PRI) & ~RX_INT_SELECT(CH_RX_HIGH_PRI) &
DXE_READ_REG(hif_dxeos_ctx,WLANDXE_CCU_DXE_INT_SELECT);
DXE_WRITE_REG(hif_dxeos_ctx,WLANDXE_CCU_DXE_INT_SELECT,val);
@@ -269,8 +269,8 @@ irqreturn_t hif_dxe_os_tx_isr(int irq,void* pSrvcCtx)
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s \n",__FUNCTION__));
- if ((NULL == hif_dxeos_ctx) ||
- (NULL == hif_dxeos_ctx->dxe_hif_params.dxe_tx_cb) ||
+ if ((NULL == hif_dxeos_ctx) ||
+ (NULL == hif_dxeos_ctx->dxe_hif_params.dxe_tx_cb) ||
(FALSE == hif_dxeos_ctx->bTxIntEnabled))
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
@@ -281,9 +281,9 @@ irqreturn_t hif_dxe_os_tx_isr(int irq,void* pSrvcCtx)
return IRQ_HANDLED;
}
- /*
+ /*
Set Interrupt processing bit
- During this bit set, WLAN HW may not power collapse
+ During this bit set, WLAN HW may not power collapse
*/
val = DXE_READ_REG(hif_dxeos_ctx,WLANDXE_INT_MASK_REG_ADDRESS);
val |= HIFDXE_TX_INTERRUPT_PRO_MASK;
@@ -301,7 +301,7 @@ irqreturn_t hif_dxe_os_tx_isr(int irq,void* pSrvcCtx)
/**
- @brief hif_dxe_tx_tasklet_proc
+ @brief hif_dxe_tx_tasklet_proc
Function which actually does the DXE TX Complete Processing.
This tasklet is scheduled from hif_dxe_os_tx_isr.
@@ -319,11 +319,11 @@ void hif_dxe_os_tx_processing(unsigned long DeferredContext)
adf_os_atomic_inc(&hif_dxeos_ctx->ref_count);
/* Call the Dxe Tx Callback */
- if ((NULL != hif_dxeos_ctx) &&
- (NULL != hif_dxeos_ctx->dxe_hif_params.dxe_tx_cb))
+ if ((NULL != hif_dxeos_ctx) &&
+ (NULL != hif_dxeos_ctx->dxe_hif_params.dxe_tx_cb))
{
hif_dxeos_ctx->dxe_hif_params.dxe_tx_cb(
- hif_dxeos_ctx->dxe_hif_params.pvcontext);
+ hif_dxeos_ctx->dxe_hif_params.pvcontext);
}
adf_os_atomic_dec(&hif_dxeos_ctx->ref_count);
@@ -332,7 +332,7 @@ void hif_dxe_os_tx_processing(unsigned long DeferredContext)
}
/**
- @brief hif_dxe_rx_tasklet_proc
+ @brief hif_dxe_rx_tasklet_proc
Function which actually does the DXE Rx Data Avail Processing.
This tasklet is scheduled from hif_dxe_os_rx_isr.
@@ -343,7 +343,7 @@ void hif_dxe_os_tx_processing(unsigned long DeferredContext)
*/
void hif_dxe_os_rx_processing(unsigned long DeferredContext)
{
- S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx =
+ S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx =
(S_HIF_DXE_OSCONTEXT *)DeferredContext;
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s \n",__FUNCTION__));
@@ -352,10 +352,10 @@ void hif_dxe_os_rx_processing(unsigned long DeferredContext)
/* Call the Dxe Rx Callback */
if ((NULL != hif_dxeos_ctx) && (
- NULL != hif_dxeos_ctx->dxe_hif_params.dxe_rx_cb))
+ NULL != hif_dxeos_ctx->dxe_hif_params.dxe_rx_cb))
{
hif_dxeos_ctx->dxe_hif_params.dxe_rx_cb(
- hif_dxeos_ctx->dxe_hif_params.pvcontext);
+ hif_dxeos_ctx->dxe_hif_params.pvcontext);
}
adf_os_atomic_dec(&hif_dxeos_ctx->ref_count);
@@ -381,14 +381,14 @@ void hif_dxe_os_rx_processing(unsigned long DeferredContext)
*/
irqreturn_t hif_dxe_os_rx_isr(int irq, void* pSrvcCtx)
{
- S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx =
+ S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx =
(S_HIF_DXE_OSCONTEXT *)pSrvcCtx;
u_int32_t val = 0;
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s \n",__FUNCTION__));
- if ((NULL == hif_dxeos_ctx) ||
- (NULL == hif_dxeos_ctx->dxe_hif_params.dxe_rx_cb) ||
+ if ((NULL == hif_dxeos_ctx) ||
+ (NULL == hif_dxeos_ctx->dxe_hif_params.dxe_rx_cb) ||
(FALSE == hif_dxeos_ctx->bRxIntEnabled))
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,
@@ -399,9 +399,9 @@ irqreturn_t hif_dxe_os_rx_isr(int irq, void* pSrvcCtx)
return IRQ_HANDLED;
}
- /*
+ /*
Set Interrupt processing bit
- During this bit set, WLAN HW may not power collapse
+ During this bit set, WLAN HW may not power collapse
*/
val = DXE_READ_REG(hif_dxeos_ctx,WLANDXE_INT_MASK_REG_ADDRESS);
val |= HIFDXE_RX_INTERRUPT_PRO_MASK;
@@ -429,9 +429,9 @@ A_STATUS ol_ath_dxe_initialize(void* Adapter)
/**
* @ HIF OS Init Dxe
*
- * @param[in/out] osdev OS Specific Context
+ * @param[in/out] osdev OS Specific Context
*
- * @retval hif_dxe_oshandle Returns OS Specific Allocation Handle
+ * @retval hif_dxe_oshandle Returns OS Specific Allocation Handle
*/
hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
S_HIF_DXE_OS_PARAMS *hif_dxe_os_params)
@@ -443,16 +443,16 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
"hif_dxe_os_init : Invalid Dev - Null\n"));
- return NULL;
+ return NULL;
}
- /* Get the parent dev ????????? Need to check */
+ /* Get the parent dev ????????? Need to check */
wcnss_device = osdev->dev;
hif_dxeos_ctx = (S_HIF_DXE_OSCONTEXT *)
adf_os_mem_alloc(osdev,sizeof(S_HIF_DXE_OSCONTEXT));
- if (NULL == hif_dxeos_ctx)
+ if (NULL == hif_dxeos_ctx)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
"hif_dxe_os_init : Failed To "
@@ -468,10 +468,10 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
do
{
/* Get the WCNSS Memory Map */
- hif_dxeos_ctx->wcnss_memory =
+ hif_dxeos_ctx->wcnss_memory =
wcnss_wlan_get_memory_map(wcnss_device);
- if (NULL == hif_dxeos_ctx->wcnss_memory)
+ if (NULL == hif_dxeos_ctx->wcnss_memory)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
"hif_dxe_os_init : WCNSS memory map "
@@ -480,10 +480,10 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
}
/* Get the wcnss Tx Irq */
- hif_dxeos_ctx->tx_irq =
+ hif_dxeos_ctx->tx_irq =
wcnss_wlan_get_dxe_tx_irq(wcnss_device);
- if (0 > hif_dxeos_ctx->tx_irq)
+ if (0 > hif_dxeos_ctx->tx_irq)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
"hif_dxe_os_init : "
@@ -492,10 +492,10 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
}
/* Get the wcnss Rx Irq */
- hif_dxeos_ctx->rx_irq =
+ hif_dxeos_ctx->rx_irq =
wcnss_wlan_get_dxe_rx_irq(wcnss_device);
- if (0 > hif_dxeos_ctx->tx_irq)
+ if (0 > hif_dxeos_ctx->tx_irq)
{
AR_DEBUG_PRINTF(ATH_DEBUG_ERR,(
"hif_dxe_os_init :"
@@ -503,14 +503,14 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
break;
}
- /*
+ /*
note the we don't invoke request_mem_region().
the memory described by wcnss_memory encompases the entire
register space (including BT and FM) and we do not want
- exclusive access to that memory
+ exclusive access to that memory
*/
hif_dxeos_ctx->mmio = ioremap(
- hif_dxeos_ctx->wcnss_memory->start,
+ hif_dxeos_ctx->wcnss_memory->start,
resource_size(
hif_dxeos_ctx->wcnss_memory));
@@ -523,13 +523,13 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
}
/* Initialize Hif Dxe Tx Tasklet */
- tasklet_init(&hif_dxeos_ctx->hif_dxe_tx_tasklet,
- hif_dxe_os_tx_processing,
+ tasklet_init(&hif_dxeos_ctx->hif_dxe_tx_tasklet,
+ hif_dxe_os_tx_processing,
(unsigned long)hif_dxeos_ctx);
/* Initialize Hif Dxe Rx Tasklet */
- tasklet_init(&hif_dxeos_ctx->hif_dxe_rx_tasklet,
- hif_dxe_os_rx_processing,
+ tasklet_init(&hif_dxeos_ctx->hif_dxe_rx_tasklet,
+ hif_dxe_os_rx_processing,
(unsigned long)hif_dxeos_ctx);
/* successfully allocated environment, memory and IRQs */
@@ -546,9 +546,9 @@ hif_dxe_oshandle hif_dxe_os_init(adf_os_device_t osdev ,
/**
* @ HIF OS DeInit Dxe
*
- * @param[in]hif_dxe_osdev OS Specific Context
+ * @param[in]hif_dxe_osdev OS Specific Context
*
- * @retval void
+ * @retval void
*/
void hif_dxe_os_deinit(hif_dxe_oshandle hif_dxe_osdev)
{
@@ -590,16 +590,16 @@ void hif_dxe_os_deinit(hif_dxe_oshandle hif_dxe_osdev)
/**
* @ HIF Dxe OS Specific Initialization
*
- * @param[in]hif_dxe_osdev - OS Specific Context
- * @param[in]eIntType
- * @param[in]bEnable
+ * @param[in]hif_dxe_osdev - OS Specific Context
+ * @param[in]eIntType
+ * @param[in]bEnable
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
-A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
- E_DXE_INTTYPE eIntType ,
+A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
+ E_DXE_INTTYPE eIntType ,
E_DXE_INT_ACTION eAction)
-{
+{
S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx = hif_dxe_osdev;
switch (eIntType)
@@ -608,7 +608,7 @@ A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
{
if (eAction == E_HIFDXE_INT_ENABLE)
{
- if(FALSE ==
+ if(FALSE ==
hif_dxe_os_enable_tx_intr
(hif_dxeos_ctx))
{
@@ -620,7 +620,7 @@ A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
}
else if (eAction == E_HIFDXE_INT_DISABLE)
{
- if(FALSE ==
+ if(FALSE ==
hif_dxe_os_disable_tx_intr
(hif_dxeos_ctx))
{
@@ -650,7 +650,7 @@ A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
{
if (eAction == E_HIFDXE_INT_ENABLE)
{
- if(FALSE ==
+ if(FALSE ==
hif_dxe_os_enable_rx_intr(
hif_dxeos_ctx))
{
@@ -659,7 +659,7 @@ A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
}
else if (eAction == E_HIFDXE_INT_DISABLE)
{
- if(FALSE ==
+ if(FALSE ==
hif_dxe_os_disable_rx_intr(
hif_dxeos_ctx))
{
@@ -682,22 +682,22 @@ A_STATUS hif_dxe_os_program_int(hif_dxe_oshandle hif_dxe_osdev ,
}
}
break;
- }
+ }
return A_OK;
}
/**
* @ HIF OS Notify SMSM
*
- * @param[in]hif_dxe_osdev - OS Specific Context
- * @param[in]clrSt
- * @param[in]setSt
+ * @param[in]hif_dxe_osdev - OS Specific Context
+ * @param[in]clrSt
+ * @param[in]setSt
*
- * @retval A_STATUS
+ * @retval A_STATUS
*/
-A_STATUS hif_dxe_os_notifysmsm(hif_dxe_oshandle hif_dxe_osdev,
+A_STATUS hif_dxe_os_notifysmsm(hif_dxe_oshandle hif_dxe_osdev,
u_int32_t clrSt, u_int32_t setSt)
-{
+{
int rc;
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, (
@@ -718,10 +718,10 @@ A_STATUS hif_dxe_os_notifysmsm(hif_dxe_oshandle hif_dxe_osdev,
/**
* @brief HIF OS Read register
- *
+ *
* @param[in] OS Context
* @param[in] Addr
- *
+ *
* @return Read Value
*/
u_int32_t hif_dxe_os_readreg(hif_dxe_oshandle hif_dxe_osdev, u_int32_t addr)
@@ -740,19 +740,19 @@ u_int32_t hif_dxe_os_readreg(hif_dxe_oshandle hif_dxe_osdev, u_int32_t addr)
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-%s\n",__FUNCTION__));
- return val;
+ return val;
}
/**
* @brief HIF OS Write register
- *
+ *
* @param[in] OS Context
* @param[in] Addr
* @param[in] val
- *
+ *
* @return Read Value
*/
-void hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev,
+void hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev,
u_int32_t addr, u_int32_t val)
{
S_HIF_DXE_OSCONTEXT * hif_dxeos_ctx = hif_dxe_osdev;
@@ -762,7 +762,7 @@ void hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev,
(unsigned int)hif_dxeos_ctx->mmio,(unsigned int)addr));
wmb();
- writel_relaxed(val, hif_dxeos_ctx->mmio +
+ writel_relaxed(val, hif_dxeos_ctx->mmio +
(addr - WLANDXE_RIVA_BASE_ADDRESS));
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("-%s\n",__FUNCTION__));
@@ -770,9 +770,9 @@ void hif_dxe_os_writereg(hif_dxe_oshandle hif_dxe_osdev,
/**
* @brief HIF Mem Barrier
- *
+ *
* @param[in] void
- *
+ *
* @return void
*/
void hif_dxe_os_mem_barrier(void)
@@ -785,9 +785,9 @@ void hif_dxe_os_mem_barrier(void)
#define DXE_STOP_WAIT_SLEEP_UNIT_MS 100
/**
* @brief Notify HIF DXE OS Layer Of Stop
- *
+ *
* @param[in] OS Context
- *
+ *
* @return void
*/
void hif_dxe_os_stop(hif_dxe_oshandle hif_dxe_osdev)
@@ -805,9 +805,9 @@ void hif_dxe_os_stop(hif_dxe_oshandle hif_dxe_osdev)
/**
* @brief HIF DXE OS Layer Dump for Debug
- *
+ *
* @param[in] OS Context
- *
+ *
* @return void
*/
void hif_dxe_os_dbgdump(hif_dxe_oshandle hif_dxe_osdev)
@@ -820,7 +820,3 @@ void hif_dxe_os_dbgdump(hif_dxe_oshandle hif_dxe_osdev)
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("hif_dxeos_ctx->mem_phy_end : %x \n",(
unsigned int)hif_dxeos_ctx->wcnss_memory->end));
}
-
-
-
-
diff --git a/CORE/SERVICES/HIF/DXE/linux/hif_dxe_ospvt.h b/CORE/SERVICES/HIF/DXE/linux/hif_dxe_ospvt.h
index bf12317e9a32..2f6fa1d0f94c 100644
--- a/CORE/SERVICES/HIF/DXE/linux/hif_dxe_ospvt.h
+++ b/CORE/SERVICES/HIF/DXE/linux/hif_dxe_ospvt.h
@@ -77,7 +77,7 @@ typedef struct _S_HIF_DXE_OSCONTEXT
unsigned char bTxRegistered;
/* Tasklet to do the Tx Processing */
- struct tasklet_struct hif_dxe_tx_tasklet;
+ struct tasklet_struct hif_dxe_tx_tasklet;
/***************************************/
@@ -92,7 +92,7 @@ typedef struct _S_HIF_DXE_OSCONTEXT
/* Tasklet to do the Rx Processing */
struct tasklet_struct hif_dxe_rx_tasklet;
- unsigned char bTxIntEnabled , bRxIntEnabled;
+ unsigned char bTxIntEnabled , bRxIntEnabled;
S_HIF_DXE_OS_PARAMS dxe_hif_params;
adf_os_atomic_t ref_count;
@@ -100,4 +100,3 @@ typedef struct _S_HIF_DXE_OSCONTEXT
unsigned long dxe_unloaded;
}S_HIF_DXE_OSCONTEXT;
#endif
-
diff --git a/CORE/SERVICES/HIF/PCIe/cepci.h b/CORE/SERVICES/HIF/PCIe/cepci.h
index bc4857bd1cad..f5ba19bde895 100644
--- a/CORE/SERVICES/HIF/PCIe/cepci.h
+++ b/CORE/SERVICES/HIF/PCIe/cepci.h
@@ -53,7 +53,7 @@
*/
#define MSI_ASSIGN_FW 0 /* 1 MSI for firmware (errors, etc.) */
#define MSI_ASSIGN_CE_INITIAL 1 /* 7 MSIs for Copy Engines */
-#define MSI_ASSIGN_CE_MAX 7
+#define MSI_ASSIGN_CE_MAX 7
@@ -81,7 +81,7 @@ struct pcie_state_s {
in various SoC registers */
A_UINT32 power_mgmt_method; /* PCIE_PWR_METHOD_* */
- A_UINT32 config_flags; /* PCIE_CONFIG_FLAG_* */
+ A_UINT32 config_flags; /* PCIE_CONFIG_FLAG_* */
};
/*
@@ -104,6 +104,6 @@ struct CE_pipe_config {
A_UINT32 nbytes_max;
A_UINT32 flags;
A_UINT32 reserved;
-};
+};
#endif /* __CEPCI_H__ */
diff --git a/CORE/SERVICES/HIF/PCIe/copy_engine.c b/CORE/SERVICES/HIF/PCIe/copy_engine.c
index 0cad06ed597b..c997646fcc78 100644
--- a/CORE/SERVICES/HIF/PCIe/copy_engine.c
+++ b/CORE/SERVICES/HIF/PCIe/copy_engine.c
@@ -147,13 +147,13 @@ CE_send_nolock(struct CE_handle *copyeng,
unsigned int nentries_mask = src_ring->nentries_mask;
unsigned int sw_index = src_ring->sw_index;
unsigned int write_index = src_ring->write_index;
-
+
A_TARGET_ACCESS_BEGIN(targid);
if (unlikely(CE_RING_DELTA(nentries_mask, write_index, sw_index-1) <= 0)) {
OL_ATH_CE_PKT_ERROR_COUNT_INCR(sc,CE_RING_DELTA_FAIL);
status = A_ERROR;
- A_TARGET_ACCESS_END(targid);
- return status;
+ A_TARGET_ACCESS_END(targid);
+ return status;
}
{
struct CE_src_desc *src_ring_base = (struct CE_src_desc *)src_ring->base_addr_owner_space;
@@ -280,7 +280,7 @@ CE_sendlist_send(struct CE_handle *copyeng,
item = &sl->item[i];
/* TBDXXX: Support extensible sendlist_types? */
A_ASSERT(item->send_type == CE_SIMPLE_BUFFER_TYPE);
- status = CE_send_nolock(copyeng, CE_SENDLIST_ITEM_CTXT,
+ status = CE_send_nolock(copyeng, CE_SENDLIST_ITEM_CTXT,
(CE_addr_t)item->data, item->u.nbytes,
transfer_id,
item->flags | CE_SEND_FLAG_GATHER);
@@ -290,7 +290,7 @@ CE_sendlist_send(struct CE_handle *copyeng,
item = &sl->item[i];
/* TBDXXX: Support extensible sendlist_types? */
A_ASSERT(item->send_type == CE_SIMPLE_BUFFER_TYPE);
- status = CE_send_nolock(copyeng, per_transfer_context,
+ status = CE_send_nolock(copyeng, per_transfer_context,
(CE_addr_t)item->data, item->u.nbytes,
transfer_id, item->flags);
A_ASSERT(status == A_OK);
@@ -336,7 +336,7 @@ CE_recv_buf_enqueue(struct CE_handle *copyeng,
dest_desc->info.nbytes = 0; /* NB: Enable CE_completed_recv_next_nolock to
protect against race between DRRI update and
desc update */
-
+
dest_ring->per_transfer_context[write_index] = per_recv_context;
/* Update Destination Ring Write Index */
@@ -519,9 +519,9 @@ CE_completed_recv_next_nolock(struct CE_state *CE_state,
int nbytes;
struct dest_desc_info dest_desc_info;
- /*
+ /*
* By copying the dest_desc_info element to local memory, we could
- * avoid extra memory read from non-cachable memory.
+ * avoid extra memory read from non-cachable memory.
*/
dest_desc_info = dest_desc->info;
nbytes = dest_desc_info.nbytes;
@@ -537,7 +537,7 @@ CE_completed_recv_next_nolock(struct CE_state *CE_state,
}
dest_desc->info.nbytes = 0;
-
+
/* Return data from completed destination descriptor */
*bufferp = (CE_addr_t)(dest_desc->dest_ptr);
*nbytesp = nbytes;
@@ -692,7 +692,7 @@ CE_completed_send_next_nolock(struct CE_state *CE_state,
*bufferp = (CE_addr_t)(shadow_src_desc->src_ptr);
*nbytesp = shadow_src_desc->nbytes;
*transfer_idp = shadow_src_desc->meta_data;
-
+
if (per_CE_contextp) {
*per_CE_contextp = CE_state->send_context;
}
@@ -807,7 +807,7 @@ CE_completed_send_next(struct CE_handle *copyeng,
does recieve and reaping of completed descriptor ,
This function only handles reaping of Tx complete descriptor.
The Function is called from threshold reap poll routine HIFSendCompleteCheck
- So should not countain recieve functionality within it .
+ So should not countain recieve functionality within it .
*/
void
@@ -897,7 +897,7 @@ CE_per_engine_service(struct hif_pci_softc *sc, unsigned int CE_id)
sc->force_break = 0;
more_completions:
if (CE_state->recv_cb) {
-
+
/* Pop completed recv buffers and call the registered recv callback for each */
while (CE_completed_recv_next_nolock(CE_state, &CE_context, &transfer_context,
&buf, &nbytes, &id, &flags) == A_OK)
@@ -905,9 +905,9 @@ more_completions:
adf_os_spin_unlock(&sc->target_lock);
CE_state->recv_cb((struct CE_handle *)CE_state, CE_context, transfer_context,
buf, nbytes, id, flags);
-
+
/*
- * EV #112693 - [Peregrine][ES1][WB342][Win8x86][Performance] BSoD_0x133 occurred in VHT80 UDP_DL
+ * EV #112693 - [Peregrine][ES1][WB342][Win8x86][Performance] BSoD_0x133 occurred in VHT80 UDP_DL
* Break out DPC by force if number of loops in HIF_PCI_CE_recv_data reaches MAX_NUM_OF_RECEIVES to avoid spending too long time in DPC for each interrupt handling.
* Schedule another DPC to avoid data loss if we had taken force-break action before
* Apply to Windows OS only currently, Linux/MAC os can expand to their platform if necessary
@@ -929,7 +929,7 @@ more_completions:
* Attention: We may experience potential infinite loop for below While Loop during Sending Stress test
* Resolve the same way as Receive Case (Refer to EV #112693)
*/
-
+
if (CE_state->send_cb) {
/* Pop completed send buffers and call the registered send callback for each */
@@ -950,7 +950,7 @@ more_completions:
adf_os_spin_unlock(&pipe_info->completion_freeq_lock);
}
}
-#else /*ATH_11AC_TXCOMPACT*/
+#else /*ATH_11AC_TXCOMPACT*/
while (CE_completed_send_next_nolock(CE_state, &CE_context, &transfer_context,
&buf, &nbytes, &id, &sw_idx, &hw_idx) == A_OK){
adf_os_spin_unlock(&sc->target_lock);
@@ -1045,7 +1045,7 @@ CE_per_engine_service_any(int irq, void *arg)
A_target_id_t targid = TARGID(sc);
int CE_id;
A_UINT32 intr_summary;
-
+
A_TARGET_ACCESS_BEGIN(targid);
if (!adf_os_atomic_read(&sc->tasklet_from_intr)) {
for (CE_id=0; CE_id < sc->ce_count; CE_id++) {
@@ -1061,14 +1061,14 @@ CE_per_engine_service_any(int irq, void *arg)
}
intr_summary = CE_INTERRUPT_SUMMARY(targid);
-
+
for (CE_id=0; intr_summary && (CE_id < sc->ce_count); CE_id++) {
if (intr_summary & (1<<CE_id)) {
intr_summary &= ~(1<<CE_id);
} else {
continue; /* no intr pending on this CE */
}
-
+
CE_per_engine_service(sc, CE_id);
}
@@ -1114,12 +1114,12 @@ void CE_disable_any_copy_compl_intr_nolock(struct hif_pci_softc *sc)
{
A_target_id_t targid = TARGID(sc);
int CE_id;
-
+
A_TARGET_ACCESS_BEGIN(targid);
for (CE_id=0; CE_id < sc->ce_count; CE_id++) {
struct CE_state *CE_state = sc->CE_id_to_state[CE_id];
u_int32_t ctrl_addr = CE_state->ctrl_addr;
-
+
/* if the interrupt is currently enabled, disable it */
if (!CE_state->disable_copy_compl_intr && (CE_state->send_cb || CE_state->recv_cb)) {
CE_COPY_COMPLETE_INTR_DISABLE(targid, ctrl_addr);
@@ -1284,7 +1284,7 @@ CE_init(struct hif_pci_softc *sc,
ctrl_addr = CE_BASE_ADDRESS(CE_id);
adf_os_spin_lock(&sc->target_lock);
CE_state = sc->CE_id_to_state[CE_id];
-
+
if (!CE_state) {
adf_os_spin_unlock(&sc->target_lock);
@@ -1384,7 +1384,7 @@ CE_init(struct hif_pci_softc *sc,
(nentries * sizeof(struct CE_src_desc) + CE_DESC_RING_ALIGN),
&base_addr);
src_ring->base_addr_CE_space_unaligned = base_addr;
-
+
if (src_ring->base_addr_CE_space_unaligned & (CE_DESC_RING_ALIGN-1)) {
diff --git a/CORE/SERVICES/HIF/PCIe/copy_engine_api.h b/CORE/SERVICES/HIF/PCIe/copy_engine_api.h
index c027f32f0465..4fcbcc030595 100644
--- a/CORE/SERVICES/HIF/PCIe/copy_engine_api.h
+++ b/CORE/SERVICES/HIF/PCIe/copy_engine_api.h
@@ -233,14 +233,14 @@ void CE_watermark_cb_register(struct CE_handle *copyeng,
/*
* Set low/high watermarks for the send/source side of a copy engine.
*
- * Typically, the destination side CPU manages watermarks for
+ * Typically, the destination side CPU manages watermarks for
* the receive side and the source side CPU manages watermarks
* for the send side.
*
* A low watermark of 0 is never hit (so the watermark function
* will never be called for a Low Watermark condition).
*
- * A high watermark equal to nentries is never hit (so the
+ * A high watermark equal to nentries is never hit (so the
* watermark function will never be called for a High Watermark
* condition).
*/
diff --git a/CORE/SERVICES/HIF/PCIe/copy_engine_internal.h b/CORE/SERVICES/HIF/PCIe/copy_engine_internal.h
index 5e7b55557892..4060aa5ab159 100644
--- a/CORE/SERVICES/HIF/PCIe/copy_engine_internal.h
+++ b/CORE/SERVICES/HIF/PCIe/copy_engine_internal.h
@@ -71,11 +71,11 @@ struct CE_ring_state {
* For dest ring, this is currently unused.
*/
unsigned int hw_index; /* cached copy */
-
+
/* Start of DMA-coherent area reserved for descriptors */
void *base_addr_owner_space_unaligned; /* Host address space */
CE_addr_t base_addr_CE_space_unaligned; /* CE address space */
-
+
/*
* Actual start of descriptors.
* Aligned to descriptor-size boundary.
@@ -118,7 +118,7 @@ struct CE_state {
/*Record the state of the copy compl interrupt*/
int disable_copy_compl_intr;
-
+
unsigned int src_sz_max;
struct CE_ring_state *src_ring;
struct CE_ring_state *dest_ring;
@@ -130,13 +130,13 @@ struct CE_state {
struct CE_src_desc {
CE_addr_t src_ptr;
-#if _BYTE_ORDER == _BIG_ENDIAN
+#if _BYTE_ORDER == _BIG_ENDIAN
u_int32_t meta_data:14,
byte_swap:1,
gather:1,
nbytes:16;
#else
-
+
u_int32_t nbytes:16,
gather:1,
byte_swap:1,
@@ -145,7 +145,7 @@ struct CE_src_desc {
};
struct dest_desc_info {
-#if _BYTE_ORDER == _BIG_ENDIAN
+#if _BYTE_ORDER == _BIG_ENDIAN
u_int32_t meta_data:14,
byte_swap:1,
gather:1,
@@ -311,7 +311,7 @@ struct CE_sendlist_s {
MISC_IS_DST_MAX_LEN_VIO_MASK | \
MISC_IS_DST_RING_OVERFLOW_MASK | \
MISC_IS_SRC_RING_OVERFLOW_MASK)
-
+
#define CE_SRC_RING_TO_DESC(baddr, idx) &(((struct CE_src_desc *)baddr)[idx])
#define CE_DEST_RING_TO_DESC(baddr, idx) &(((struct CE_dest_desc *)baddr)[idx])
diff --git a/CORE/SERVICES/HIF/PCIe/hif_pci.c b/CORE/SERVICES/HIF/PCIe/hif_pci.c
index dffbf87f11bf..6bb804040ce5 100644
--- a/CORE/SERVICES/HIF/PCIe/hif_pci.c
+++ b/CORE/SERVICES/HIF/PCIe/hif_pci.c
@@ -208,7 +208,7 @@ HIFDetachHTC(HIF_DEVICE *hif_device)
/* Send the first nbytes bytes of the buffer */
A_STATUS
-HIFSend_head(HIF_DEVICE *hif_device,
+HIFSend_head(HIF_DEVICE *hif_device,
a_uint8_t pipe, unsigned int transfer_id, unsigned int nbytes, adf_nbuf_t nbuf)
{
struct HIF_CE_state *hif_state = (struct HIF_CE_state *)hif_device;
@@ -217,7 +217,7 @@ HIFSend_head(HIF_DEVICE *hif_device,
int bytes = nbytes, nfrags = 0;
struct CE_sendlist sendlist;
int status;
-
+
AR_DEBUG_PRINTF(ATH_DEBUG_TRC, ("+%s\n",__FUNCTION__));
A_ASSERT(nbytes <= adf_nbuf_len(nbuf));
@@ -238,7 +238,7 @@ HIFSend_head(HIF_DEVICE *hif_device,
frag_paddr = adf_nbuf_get_frag_paddr_lo(nbuf, nfrags);
frag_bytes = adf_nbuf_get_frag_len(nbuf, nfrags);
CE_sendlist_buf_add(
- &sendlist, frag_paddr,
+ &sendlist, frag_paddr,
frag_bytes > bytes ? bytes : frag_bytes,
adf_nbuf_get_frag_is_wordstream(nbuf, nfrags) ?
0 : CE_SEND_FLAG_SWAP_DISABLE);
@@ -293,11 +293,11 @@ HIFSendCompleteCheck(HIF_DEVICE *hif_device, a_uint8_t pipe, int force)
return;
}
}
-#ifdef ATH_11AC_TXCOMPACT
+#ifdef ATH_11AC_TXCOMPACT
CE_per_engine_servicereap(hif_state->sc, pipe);
#else
- CE_per_engine_service(hif_state->sc, pipe);
-#endif
+ CE_per_engine_service(hif_state->sc, pipe);
+#endif
}
a_uint16_t
@@ -330,7 +330,7 @@ HIF_PCI_CE_send_done(struct CE_handle *copyeng, void *ce_context, void *transfer
compl_queue_head = compl_queue_tail = NULL;
do {
/*
- * For the send completion of an item in sendlist, just increment
+ * For the send completion of an item in sendlist, just increment
* num_sends_allowed. The upper layer callback will be triggered
* when last fragment is done with send.
*/
@@ -383,7 +383,7 @@ HIF_PCI_CE_send_done(struct CE_handle *copyeng, void *ce_context, void *transfer
* don't invoke completion processing until the entire sendlist
* has been sent.
*/
- return;
+ return;
}
adf_os_spin_lock(&hif_state->completion_pendingq_lock);
@@ -443,14 +443,14 @@ HIF_PCI_CE_recv_data(struct CE_handle *copyeng, void *ce_context, void *transfer
compl_queue_tail = compl_state;
adf_nbuf_unmap_single(scn->adf_dev, (adf_nbuf_t)transfer_context, ADF_OS_DMA_FROM_DEVICE);
-
+
/*
- * EV #112693 - [Peregrine][ES1][WB342][Win8x86][Performance] BSoD_0x133 occurred in VHT80 UDP_DL
+ * EV #112693 - [Peregrine][ES1][WB342][Win8x86][Performance] BSoD_0x133 occurred in VHT80 UDP_DL
* Break out DPC by force if number of loops in HIF_PCI_CE_recv_data reaches MAX_NUM_OF_RECEIVES to avoid spending too long time in DPC for each interrupt handling.
* Schedule another DPC to avoid data loss if we had taken force-break action before
* Apply to Windows OS only currently, Linux/MAC os can expand to their platform if necessary
*/
-
+
/* Set up force_break flag if num of receices reaches MAX_NUM_OF_RECEIVES */
sc->receive_count++;
if (adf_os_unlikely(hif_max_num_receives_reached(sc->receive_count)))
@@ -679,7 +679,7 @@ hif_completion_thread(struct HIF_CE_state *hif_state)
netbuf = (adf_nbuf_t)compl_state->transfer_context;
nbytes = compl_state->nbytes;
/*
- To see the following debug output, enable the HIF_PCI_DEBUG flag in
+ To see the following debug output, enable the HIF_PCI_DEBUG flag in
the debug module declaration in this source file
*/
AR_DEBUG_PRINTF(HIF_PCI_DEBUG,("HIF_PCI_CE_recv_data netbuf=%p nbytes=%d\n", netbuf, nbytes));
@@ -704,7 +704,7 @@ hif_completion_thread(struct HIF_CE_state *hif_state)
pipe_info->completion_freeq_head = compl_state;
}
pipe_info->completion_freeq_tail = compl_state;
- pipe_info->num_sends_allowed += send_done;
+ pipe_info->num_sends_allowed += send_done;
adf_os_spin_unlock(&pipe_info->completion_freeq_lock);
}
@@ -910,14 +910,14 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
/* This code cannot handle reads to non-memory space. Redirect to the
* register read fn but preserve the multi word read capability of this fn
- */
+ */
if (address < DRAM_BASE_ADDRESS) {
if ((address & 0x3) || ((uintptr_t)data & 0x3)) {
return (-EIO);
}
- while ((nbytes >= 4) &&
+ while ((nbytes >= 4) &&
(A_OK == (status = HIFDiagReadAccess(hif_device, address,
(A_UINT32*)data)))) {
@@ -926,7 +926,7 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
data += sizeof(A_UINT32);
}
-
+
return status;
}
@@ -964,7 +964,7 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
goto done;
}
}
-
+
{ /* Request CE to send from Target(!) address to Host buffer */
/*
* The address supplied by the caller is in the
@@ -979,13 +979,13 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
A_TARGET_ACCESS_BEGIN(targid);
address = TARG_CPU_SPACE_TO_CE_SPACE(sc->mem, address);
A_TARGET_ACCESS_END(targid);
-
+
status = CE_send(ce_diag, NULL, (CE_addr_t)address, nbytes, 0, 0);
if (status != EOK) {
goto done;
}
}
-
+
i=0;
while (CE_completed_send_next(ce_diag, NULL, NULL, &buf,
&completed_nbytes, &id,
@@ -1004,7 +1004,7 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
status = A_ERROR;
goto done;
}
-
+
i=0;
while (CE_completed_recv_next(ce_diag, NULL, NULL, &buf, &completed_nbytes, &id, &flags) != A_OK) {
A_MDELAY(1);
@@ -1021,7 +1021,7 @@ HIFDiagReadMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nbyt
status = A_ERROR;
goto done;
}
-
+
remaining_bytes -= nbytes;
address += nbytes;
CE_data += nbytes;
@@ -1144,7 +1144,7 @@ HIFDiagWriteMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nby
goto done;
}
}
-
+
{
/*
* Request CE to send caller-supplied data that
@@ -1155,7 +1155,7 @@ HIFDiagWriteMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nby
goto done;
}
}
-
+
i=0;
while (CE_completed_send_next(ce_diag, NULL, NULL, &buf,
&completed_nbytes, &id,
@@ -1166,17 +1166,17 @@ HIFDiagWriteMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nby
goto done;
}
}
-
+
if (nbytes != completed_nbytes) {
status = A_ERROR;
goto done;
}
-
+
if (buf != CE_data) {
status = A_ERROR;
goto done;
}
-
+
i=0;
while (CE_completed_recv_next(ce_diag, NULL, NULL, &buf, &completed_nbytes, &id, &flags) != A_OK) {
A_MDELAY(1);
@@ -1185,17 +1185,17 @@ HIFDiagWriteMem(HIF_DEVICE *hif_device, A_UINT32 address, A_UINT8 *data, int nby
goto done;
}
}
-
+
if (nbytes != completed_nbytes) {
status = A_ERROR;
goto done;
}
-
+
if (buf != address) {
status = A_ERROR;
goto done;
}
-
+
remaining_bytes -= nbytes;
address += nbytes;
CE_data += nbytes;
@@ -1394,7 +1394,7 @@ HIFGrowBuffers(hif_handle_t hif_hdl)
struct HIF_CE_pipe_info *pipe_info;
struct CE_attr *attr;
int pipe_num;
-
+
for (pipe_num = 0; pipe_num < sc->ce_count; pipe_num++) {
pipe_info = &hif_state->pipe_info[pipe_num];
attr = &host_CE_config[pipe_num];
@@ -1473,7 +1473,7 @@ hif_send_buffer_cleanup_on_pipe(struct HIF_CE_pipe_info *pipe_info)
{
if (netbuf != CE_SENDLIST_ITEM_CTXT)
{
- /* Indicate the completion to higer layer to free the buffer */
+ /* Indicate the completion to higer layer to free the buffer */
hif_state->msg_callbacks_current.txCompletionHandler(
hif_state->msg_callbacks_current.Context, netbuf, id);
}
@@ -1583,7 +1583,7 @@ HIFShutDownDevice(HIF_DEVICE *hif_device)
HIFStop(hif_device);
A_FREE(hif_state);
- }
+ }
AR_DEBUG_PRINTF(ATH_DEBUG_TRC,("-%s\n",__FUNCTION__));
}
@@ -1624,8 +1624,8 @@ HIF_BMI_send_done(struct CE_handle *copyeng, void *ce_context, void *transfer_co
struct hif_pci_softc *sc = transaction->hif_state->sc;
#ifdef BMI_RSP_POLLING
- /*
- * Fix EV118783, Release a semaphore after sending
+ /*
+ * Fix EV118783, Release a semaphore after sending
* no matter whether a response is been expecting now.
*/
adf_os_mutex_release(sc->ol_sc->adf_dev, &transaction->bmi_transaction_sem);
@@ -1683,7 +1683,7 @@ HIFExchangeBMIMsg(HIF_DEVICE *hif_device,
int status = EOK;
struct HIF_CE_pipe_info *recv_pipe_info = &(hif_state->pipe_info[BMI_CE_NUM_TO_HOST]);
struct CE_handle *ce_recv = recv_pipe_info->ce_hdl;
-
+
#ifdef BMI_RSP_POLLING
CE_addr_t buf;
unsigned int completed_nbytes, id, flags;
@@ -1750,7 +1750,7 @@ HIFExchangeBMIMsg(HIF_DEVICE *hif_device,
if (bmi_response) {
#ifdef BMI_RSP_POLLING
- /* Fix EV118783, do not wait a semaphore for the BMI response
+ /* Fix EV118783, do not wait a semaphore for the BMI response
* since the relative interruption may be lost.
* poll the BMI response instead.
*/
@@ -2320,7 +2320,7 @@ extern void HIFdebug(void);
* (or perhaps spin/delay for a short while, then convert to sleep/interrupt)
* Careful, though, these functions may be used by interrupt handlers ("atomic")
* -Don't use host_reg_table for this code; instead use values directly
- * -Use a separate timer to track activity and allow Target to sleep only
+ * -Use a separate timer to track activity and allow Target to sleep only
* if it hasn't done anything for a while; may even want to delay some
* processing for a short while in order to "batch" (e.g.) transmit
* requests with completion processing into "windows of up time". Costs
diff --git a/CORE/SERVICES/HIF/PCIe/if_pci.c b/CORE/SERVICES/HIF/PCIe/if_pci.c
index 95a7782c1964..2e88f21dfab9 100644
--- a/CORE/SERVICES/HIF/PCIe/if_pci.c
+++ b/CORE/SERVICES/HIF/PCIe/if_pci.c
@@ -90,7 +90,7 @@ struct ol_pl_os_dep_funcs *g_ol_pl_os_dep_funcs = NULL;
#endif
/* Setting SOC_GLOBAL_RESET during driver unload causes intermittent PCIe data bus error
- * As workaround for this issue - changing the reset sequence to use TargetCPU warm reset
+ * As workaround for this issue - changing the reset sequence to use TargetCPU warm reset
* instead of SOC_GLOBAL_RESET
*/
#define CPU_WARM_RESET_WAR
@@ -243,10 +243,10 @@ hif_pci_device_reset(struct hif_pci_softc *sc)
}
-/* CPU warm reset function
+/* CPU warm reset function
* Steps:
- * 1. Disable all pending interrupts - so no pending interrupts on WARM reset
- * 2. Clear the FW_INDICATOR_ADDRESS -so Traget CPU intializes FW correctly on WARM reset
+ * 1. Disable all pending interrupts - so no pending interrupts on WARM reset
+ * 2. Clear the FW_INDICATOR_ADDRESS -so Traget CPU intializes FW correctly on WARM reset
* 3. Clear TARGET CPU LF timer interrupt
* 4. Reset all CEs to clear any pending CE tarnsactions
* 5. Warm reset CPU
@@ -543,8 +543,8 @@ irq_handled:
A_TARGET_ACCESS_BEGIN(hif_state->targid);
/* Enable Legacy PCI line interrupts */
- A_PCI_WRITE32(sc->mem+(SOC_CORE_BASE_ADDRESS | PCIE_INTR_ENABLE_ADDRESS),
- PCIE_INTR_FIRMWARE_MASK | PCIE_INTR_CE_MASK_ALL);
+ A_PCI_WRITE32(sc->mem+(SOC_CORE_BASE_ADDRESS | PCIE_INTR_ENABLE_ADDRESS),
+ PCIE_INTR_FIRMWARE_MASK | PCIE_INTR_CE_MASK_ALL);
/* IMPORTANT: this extra read transaction is required to flush the posted write buffer */
tmp = A_PCI_READ32(sc->mem+(SOC_CORE_BASE_ADDRESS | PCIE_INTR_ENABLE_ADDRESS));
@@ -591,9 +591,9 @@ again:
return -EIO;
}
- /* FIXME: temp. commenting out assign_resource
+ /* FIXME: temp. commenting out assign_resource
* call for dev_attach to work on 2.6.38 kernel
- */
+ */
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) && !defined(__LINUX_ARM_ARCH__)
if (pci_assign_resource(pdev, BAR_NUM)) {
printk(KERN_ERR "ath: cannot assign PCI space\n");
@@ -1214,12 +1214,12 @@ hif_pci_configure(struct hif_pci_softc *sc, hif_handle_t *hif_hdl)
/*
* Interrupt Management is divided into these scenarios :
- * A) We wish to use MSI and Multiple MSI is supported and we
+ * A) We wish to use MSI and Multiple MSI is supported and we
* are able to obtain the number of MSI interrupts desired
* (best performance)
* B) We wish to use MSI and Single MSI is supported and we are
* able to obtain a single MSI interrupt
- * C) We don't want to use MSI or MSI is not supported and we
+ * C) We don't want to use MSI or MSI is not supported and we
* are able to obtain a legacy interrupt
* D) Failure
*/
@@ -1272,7 +1272,7 @@ hif_pci_configure(struct hif_pci_softc *sc, hif_handle_t *hif_hdl)
}
}
}
-
+
if (num_msi_desired == 1) {
/*
* We are here because either the platform only supports
@@ -1290,7 +1290,7 @@ hif_pci_configure(struct hif_pci_softc *sc, hif_handle_t *hif_hdl)
}
if ( num_msi_desired <= 1) {
- /* We are here because we want to multiplex a single host interrupt among all
+ /* We are here because we want to multiplex a single host interrupt among all
* Target interrupt sources
*/
ret = request_irq(sc->pdev->irq, hif_pci_interrupt_handler, IRQF_SHARED,
@@ -1368,7 +1368,7 @@ hif_pci_configure(struct hif_pci_softc *sc, hif_handle_t *hif_hdl)
if (num_msi_desired == 0) {
/* Fix potential race by repeating CORE_BASE writes */
A_PCI_WRITE32(sc->mem + (SOC_CORE_BASE_ADDRESS | PCIE_INTR_ENABLE_ADDRESS),
- PCIE_INTR_FIRMWARE_MASK | PCIE_INTR_CE_MASK_ALL);
+ PCIE_INTR_FIRMWARE_MASK | PCIE_INTR_CE_MASK_ALL);
}
A_MDELAY(10);
}
@@ -1440,7 +1440,7 @@ hif_pci_remove(struct pci_dev *pdev)
#if defined(CPU_WARM_RESET_WAR)
/* Currently CPU warm reset sequence is tested only for AR9888_REV2
- * Need to enable for AR9888_REV1 once CPU warm reset sequence is
+ * Need to enable for AR9888_REV1 once CPU warm reset sequence is
* verified for AR9888_REV1
*/
if (scn->target_version == AR9888_REV2_VERSION) {
diff --git a/CORE/SERVICES/HIF/PCIe/if_pci.h b/CORE/SERVICES/HIF/PCIe/if_pci.h
index f4d34f4c14f1..f66142a35f66 100644
--- a/CORE/SERVICES/HIF/PCIe/if_pci.h
+++ b/CORE/SERVICES/HIF/PCIe/if_pci.h
@@ -133,7 +133,7 @@ void dump_CE_debug_register(struct hif_pci_softc *sc);
/*
* Typically, MSI Interrupts are used with PCIe. To force use of legacy
* "ABCD" PCI line interrupts rather than MSI, define FORCE_LEGACY_PCI_INTERRUPTS.
- * Even when NOT forced, the driver may attempt to use legacy PCI interrupts
+ * Even when NOT forced, the driver may attempt to use legacy PCI interrupts
* MSI allocation fails
*/
#define LEGACY_INTERRUPTS(sc) ((sc)->num_msi_intrs == 0)
diff --git a/CORE/SERVICES/HTC/htc_send.c b/CORE/SERVICES/HTC/htc_send.c
index 8627f25cddbf..a26137f05eec 100644
--- a/CORE/SERVICES/HTC/htc_send.c
+++ b/CORE/SERVICES/HTC/htc_send.c
@@ -78,7 +78,9 @@ void HTCGetHostCredits(HTC_HANDLE HTCHandle,int *credits)
*credits = 0;
}
+ LOCK_HTC_TX(target);
*credits = target->TotalHostCredits;
+ UNLOCK_HTC_TX(target);
}
static INLINE void RestoreTxPacket(HTC_TARGET *target, HTC_PACKET *pPacket)
diff --git a/CORE/SERVICES/WMA/wma.c b/CORE/SERVICES/WMA/wma.c
index 00283c44b648..7538173b7141 100644
--- a/CORE/SERVICES/WMA/wma.c
+++ b/CORE/SERVICES/WMA/wma.c
@@ -2569,10 +2569,6 @@ VOS_STATUS WDA_open(v_VOID_t *vos_context, v_VOID_t *os_ctx,
#endif
/*TODO: Recheck below parameters */
- /*
- * Increase maxStation by 1 here so that correct hashtable and
- * gpLimPeerIdxpool memory is allocated in peCreateSession
- */
scn = vos_get_context(VOS_MODULE_ID_HIF, vos_context);
if (NULL == scn) {
@@ -2581,7 +2577,7 @@ VOS_STATUS WDA_open(v_VOID_t *vos_context, v_VOID_t *os_ctx,
goto err_wmi_attach;
}
- mac_params->maxStation = ol_get_number_of_peers_supported(scn) + 1;
+ mac_params->maxStation = ol_get_number_of_peers_supported(scn);
mac_params->maxBssId = WMA_MAX_SUPPORTED_BSS;
mac_params->frameTransRequired = 0;
@@ -11919,6 +11915,8 @@ int wma_enable_wow_in_fw(WMA_HANDLE handle)
int32_t len;
int ret;
struct ol_softc *scn;
+ int host_credits;
+ int wmi_pending_cmds;
len = sizeof(wmi_wow_enable_cmd_fixed_param);
@@ -11938,10 +11936,12 @@ int wma_enable_wow_in_fw(WMA_HANDLE handle)
vos_event_reset(&wma->target_suspend);
wma->wow_nack = 0;
- if (wmi_get_host_credits(wma->wmi_handle) < WMI_WOW_REQUIRED_CREDITS) {
- WMA_LOGE("Cannot Post WMI_WOW_ENABLE_CMDID !.Credits:%d"
- "pending_cmds:%d\n", wmi_get_host_credits(wma->wmi_handle),
- wmi_get_pending_cmds(wma->wmi_handle));
+ host_credits = wmi_get_host_credits(wma->wmi_handle);
+ wmi_pending_cmds = wmi_get_pending_cmds(wma->wmi_handle);
+
+ 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;
}
@@ -11964,14 +11964,14 @@ int wma_enable_wow_in_fw(WMA_HANDLE handle)
return VOS_STATUS_E_AGAIN;
}
- if ((wmi_get_host_credits(wma->wmi_handle) != WMI_MAX_HOST_CREDITS) ||
- wmi_get_pending_cmds(wma->wmi_handle))
- {
- WMA_LOGE("Host Doesn't have enough credits after HTC ACK:%d !"
- "pending_cmds:%d\n", wmi_get_host_credits(wma->wmi_handle),
- wmi_get_pending_cmds(wma->wmi_handle));
- VOS_ASSERT(0);
- return VOS_STATUS_E_FAILURE;
+ host_credits = wmi_get_host_credits(wma->wmi_handle);
+ wmi_pending_cmds = wmi_get_pending_cmds(wma->wmi_handle);
+
+ if (host_credits < WMI_WOW_REQUIRED_CREDITS) {
+ WMA_LOGE("%s: No Credits after HTC ACK:%d, pending_cmds:%d, "
+ "cannot resume back", __func__, host_credits, wmi_pending_cmds);
+ HTC_dump_counter_info(wma->htc_handle);
+ VOS_BUG(0);
}
@@ -17519,9 +17519,9 @@ VOS_STATUS WDA_TxPacket(void *wma_context, void *tx_frame, u_int16_t frmLen,
tANI_U8 *pFrame = NULL;
void *pPacket = NULL;
u_int16_t newFrmLen = 0;
+#endif /* WLAN_FEATURE_11W */
struct wma_txrx_node *iface;
tpAniSirGlobal pMac;
-#endif /* WLAN_FEATURE_11W */
if (NULL == wma_handle)
{
diff --git a/CORE/SERVICES/WMI/wmi_unified.c b/CORE/SERVICES/WMI/wmi_unified.c
index 0e533674a9a3..cca5faea7a10 100644
--- a/CORE/SERVICES/WMI/wmi_unified.c
+++ b/CORE/SERVICES/WMI/wmi_unified.c
@@ -892,6 +892,6 @@ int wmi_is_suspend_ready(wmi_unified_t wmi_handle)
i=i+1;
}
- pr_info(" Pending wmi_pending_cmds:%d \n", wmi_pending_cmds);
+ pr_info("%s:Pending wmi_pending_cmds:%d \n", __func__, wmi_pending_cmds);
return 0;
}
diff --git a/CORE/SME/inc/csrLinkList.h b/CORE/SME/inc/csrLinkList.h
index d7848a555ee1..ed647bbc39d4 100644
--- a/CORE/SME/inc/csrLinkList.h
+++ b/CORE/SME/inc/csrLinkList.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2012 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2012, 2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -72,7 +72,7 @@ typedef struct tagDblLinkList
(tANI_U8 *)(&((type *)0)->field)))
//To get the offset of (field) inside structure (type)
-#define GET_FIELD_OFFSET(type, field) ((tANI_U32_OR_PTR)(&(((type *)0)->field)))
+#define GET_FIELD_OFFSET(type, field) ((uintptr_t)(&(((type *)0)->field)))
#define GET_ROUND_UP( _Field, _Boundary ) (((_Field) + ((_Boundary) - 1)) & ~((_Boundary) - 1))
#define BITS_ON( _Field, _Bitmask ) ( (_Field) |= (_Bitmask) )
diff --git a/CORE/SME/src/csr/csrApiRoam.c b/CORE/SME/src/csr/csrApiRoam.c
index 3c11fc7da6cc..ecf1968b3644 100644
--- a/CORE/SME/src/csr/csrApiRoam.c
+++ b/CORE/SME/src/csr/csrApiRoam.c
@@ -10337,7 +10337,7 @@ void csrRoamWaitForKeyTimeOutHandler(void *pv)
tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, pInfo->sessionId );
eHalStatus status = eHAL_STATUS_FAILURE;
- smsLog(pMac, LOGW, "WaitForKey timer expired in state=%d sub-state=%d",
+ smsLog(pMac, LOGE, "WaitForKey timer expired in state=%d sub-state=%d",
pMac->roam.neighborRoamInfo.neighborRoamState,
pMac->roam.curSubState[pInfo->sessionId]);
@@ -10358,7 +10358,7 @@ void csrRoamWaitForKeyTimeOutHandler(void *pv)
NULL, eANI_BOOLEAN_FALSE);
}
#endif
- smsLog(pMac, LOGW, " SME pre-auth state timeout. ");
+ smsLog(pMac, LOGE, " SME pre-auth state timeout. ");
//Change the substate so command queue is unblocked.
if (CSR_ROAM_SESSION_MAX > pInfo->sessionId)
@@ -10373,31 +10373,23 @@ void csrRoamWaitForKeyTimeOutHandler(void *pv)
{
csrRoamLinkUp(pMac, pSession->connectedProfile.bssid);
smeProcessPendingQueue(pMac);
- if ((pSession->connectedProfile.AuthType ==
- eCSR_AUTH_TYPE_SHARED_KEY) &&
- ((pSession->connectedProfile.EncryptionType ==
- eCSR_ENCRYPT_TYPE_WEP40) ||
- (pSession->connectedProfile.EncryptionType ==
- eCSR_ENCRYPT_TYPE_WEP104)))
+ status = sme_AcquireGlobalLock(&pMac->sme);
+ if (HAL_STATUS_SUCCESS(status ))
{
- status = sme_AcquireGlobalLock(&pMac->sme);
- if (HAL_STATUS_SUCCESS(status ))
- {
- csrRoamDisconnect(pMac, pInfo->sessionId,
- eCSR_DISCONNECT_REASON_UNSPECIFIED);
- sme_ReleaseGlobalLock(&pMac->sme);
- }
+ csrRoamDisconnect(pMac, pInfo->sessionId,
+ eCSR_DISCONNECT_REASON_UNSPECIFIED);
+ sme_ReleaseGlobalLock(&pMac->sme);
}
}
else
{
- smsLog(pMac, LOGW, "%s: could not post link up",
- __func__);
+ smsLog(pMac, LOGE, "%s: Session id %d is disconnected",
+ __func__, pInfo->sessionId);
}
}
else
{
- smsLog(pMac, LOGW, "%s: session not found", __func__);
+ smsLog(pMac, LOGE, "%s: session not found", __func__);
}
}
@@ -13259,17 +13251,14 @@ csrSendMBGetAssociatedStasReqMsg( tpAniSirGlobal pMac, tANI_U32 sessionId,
vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U16));
pBuf += sizeof(tANI_U16);
// pUsrContext
- dwTmp = pal_cpu_to_be32((tANI_U32)pUsrContext);
- vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U32));
- pBuf += sizeof(tANI_U32);
+ vos_mem_copy(pBuf, (tANI_U8 *)pUsrContext, sizeof(void *));
+ pBuf += sizeof(void*);
// pfnSapEventCallback
- dwTmp = pal_cpu_to_be32((tANI_U32)pfnSapEventCallback);
- vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U32));
- pBuf += sizeof(tANI_U32);
+ vos_mem_copy(pBuf, (tANI_U8 *)pfnSapEventCallback, sizeof(void*));
+ pBuf += sizeof(void*);
// pAssocStasBuf
- dwTmp = pal_cpu_to_be32((tANI_U32)pAssocStasBuf);
- vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U32));
- pBuf += sizeof(tANI_U32);
+ vos_mem_copy(pBuf, pAssocStasBuf, sizeof(void*));
+ pBuf += sizeof(void*);
pMsg->length = pal_cpu_to_be16((tANI_U16)(sizeof(tANI_U32 ) + (pBuf - wTmpBuf)));//msg_header + msg
status = palSendMBMessage( pMac->hHdd, pMsg );
} while( 0 );
@@ -13282,7 +13271,7 @@ csrSendMBGetWPSPBCSessions( tpAniSirGlobal pMac, tANI_U32 sessionId,
eHalStatus status = eHAL_STATUS_SUCCESS;
tSirSmeGetWPSPBCSessionsReq *pMsg;
tANI_U8 *pBuf = NULL, *wTmpBuf = NULL;
- tANI_U32 dwTmp;
+
do
{
pMsg = vos_mem_malloc(sizeof(tSirSmeGetWPSPBCSessionsReq));
@@ -13302,13 +13291,11 @@ csrSendMBGetWPSPBCSessions( tpAniSirGlobal pMac, tANI_U32 sessionId,
}
wTmpBuf = pBuf;
// pUsrContext
- dwTmp = pal_cpu_to_be32((tANI_U32)pUsrContext);
- vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U32));
- pBuf += sizeof(tANI_U32);
+ vos_mem_copy(pBuf, (tANI_U8 *)pUsrContext, sizeof(void*));
+ pBuf += sizeof(void *);
// pSapEventCallback
- dwTmp = pal_cpu_to_be32((tANI_U32)pfnSapEventCallback);
- vos_mem_copy(pBuf, (tANI_U8 *)&dwTmp, sizeof(tANI_U32));
- pBuf += sizeof(tANI_U32);
+ vos_mem_copy(pBuf, (tANI_U8 *)pfnSapEventCallback, sizeof(void *));
+ pBuf += sizeof(void *);
// bssId
vos_mem_copy((tSirMacAddr *)pBuf, bssId, sizeof(tSirMacAddr));
pBuf += sizeof(tSirMacAddr);
diff --git a/CORE/SME/src/csr/csrApiScan.c b/CORE/SME/src/csr/csrApiScan.c
index 1fe12364d7fd..37035634c92d 100644
--- a/CORE/SME/src/csr/csrApiScan.c
+++ b/CORE/SME/src/csr/csrApiScan.c
@@ -50,16 +50,10 @@
#include "vos_nvitem.h"
#include "wlan_qct_wda.h"
-#define CSR_VALIDATE_LIST //This portion of code need to be removed once the issue is resolved.
#define MIN_CHN_TIME_TO_FIND_GO 100
#define MAX_CHN_TIME_TO_FIND_GO 100
#define DIRECT_SSID_LEN 7
-#ifdef CSR_VALIDATE_LIST
-tDblLinkList *g_pchannelPowerInfoList24 = NULL, * g_pchannelPowerInfoList5 = NULL;
-tpAniSirGlobal g_pMac;
-#endif
-
/* Purpose of HIDDEN_TIMER
** When we remove hidden ssid from the profile i.e., forget the SSID via GUI that SSID shouldn't see in the profile
** For above requirement we used timer limit, logic is explained below
@@ -210,74 +204,6 @@ static eHalStatus csrLLScanPurgeResult(tpAniSirGlobal pMac, tDblLinkList *pList)
return (status);
}
-#ifdef CSR_VALIDATE_LIST
-static int validateList(tDblLinkList *pChannelPwrList, int idx)
-{
- tListElem *pElem, *pHead;
- int count;
-
- if(!pChannelPwrList)
- {
- return 1;
- }
-
- count = (int)(pChannelPwrList->Count);
- pHead = &pChannelPwrList->ListHead;
- pElem = pHead->next;
- if((tANI_U32)(pHead->next) > 0x00010000) //Assuming kernel address is not that low.
- {
- //this loop crashes if the pointer is not right
- while(pElem->next != pHead)
- {
- if((tANI_U32)(pElem->next) > 0x00010000)
- {
- pElem = pElem->next;
- if (count <=0)
- {
- VOS_BUG(count > 0);
- return 0;
- }
- count--;
- }
- else
- {
- VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_FATAL, "%d Detect list(0x%X) error Head(0x%X) next(0x%X) Count %d",
- idx, (unsigned int)pChannelPwrList, (unsigned int)pHead,
- (unsigned int)(pHead->next), (int)pChannelPwrList->Count);
- VOS_BUG(0);
- return 0;
- }
- }
- }
- else
- {
- //Bad list
- VOS_TRACE(VOS_MODULE_ID_SME, VOS_TRACE_LEVEL_FATAL, "%d Detect list(0x%X) error Head(0x%X) next(0x%X) Count %d",
- idx, (unsigned int)pChannelPwrList, (unsigned int)pHead,
- (unsigned int)(pHead->next), (int)pChannelPwrList->Count);
- VOS_BUG(0);
- return 0;
- }
- return 1;
-}
-#endif
-
-int csrCheckValidateLists(void * dest, const void *src, v_SIZE_t num, int idx)
-{
-#ifdef CSR_VALIDATE_LIST
- if( (NULL == g_pMac) || (!g_pMac->scan.fValidateList ) )
- {
- return 1;
- }
-
- return (validateList(g_pchannelPowerInfoList24, idx) &&
- validateList(g_pchannelPowerInfoList5, idx)) ? 1 : 0;
-#else
- return 1;
-#endif //#ifdef CSR_VALIDATE_LIST
-}
-
-
eHalStatus csrScanOpen( tpAniSirGlobal pMac )
{
eHalStatus status;
@@ -291,11 +217,6 @@ eHalStatus csrScanOpen( tpAniSirGlobal pMac )
#ifdef WLAN_AP_STA_CONCURRENCY
csrLLOpen(pMac->hHdd, &pMac->scan.scanCmdPendingList);
#endif
-#ifdef CSR_VALIDATE_LIST
- g_pchannelPowerInfoList5 = &pMac->scan.channelPowerInfoList5G;
- g_pMac = pMac;
- g_pchannelPowerInfoList24 = &pMac->scan.channelPowerInfoList24;
-#endif
pMac->scan.fFullScanIssued = eANI_BOOLEAN_FALSE;
pMac->scan.nBssLimit = CSR_MAX_BSS_SUPPORT;
status = vos_timer_init(&pMac->scan.hTimerGetResult, VOS_TIMER_TYPE_SW, csrScanGetResultTimerHandler, pMac);
@@ -339,11 +260,6 @@ eHalStatus csrScanOpen( tpAniSirGlobal pMac )
eHalStatus csrScanClose( tpAniSirGlobal pMac )
{
-#ifdef CSR_VALIDATE_LIST
- g_pchannelPowerInfoList24 = NULL;
- g_pchannelPowerInfoList5 = NULL;
- g_pMac = NULL;
-#endif
csrLLScanPurgeResult(pMac, &pMac->scan.tempScanResults);
csrLLScanPurgeResult(pMac, &pMac->scan.scanResultList);
#ifdef WLAN_AP_STA_CONCURRENCY
diff --git a/CORE/SME/src/sme_common/sme_Api.c b/CORE/SME/src/sme_common/sme_Api.c
index fbb9ade935e0..74d2416a8037 100644
--- a/CORE/SME/src/sme_common/sme_Api.c
+++ b/CORE/SME/src/sme_common/sme_Api.c
@@ -103,7 +103,7 @@ eHalStatus sme_HandleChangeCountryCode(tpAniSirGlobal pMac, void *pMsgBuf);
eHalStatus sme_HandleGenericChangeCountryCode(tpAniSirGlobal pMac, void *pMsgBuf);
-eHalStatus sme_HandlePreChannelSwitchInd(tHalHandle hHal);
+eHalStatus sme_HandlePreChannelSwitchInd(tHalHandle hHal, void *pMsgBuf);
eHalStatus sme_HandlePostChannelSwitchInd(tHalHandle hHal);
@@ -2430,11 +2430,17 @@ eHalStatus sme_ProcessMsg(tHalHandle hHal, vos_msg_t* pMsg)
break;
#endif // WLAN_FEATURE_PACKET_FILTERING
case eWNI_SME_PRE_SWITCH_CHL_IND:
- {
- status = sme_HandlePreChannelSwitchInd(pMac);
+ if(pMsg->bodyptr)
+ {
+ status = sme_HandlePreChannelSwitchInd(pMac,pMsg->bodyptr);
+ vos_mem_free(pMsg->bodyptr);
+ }
+ else
+ {
+ smsLog(pMac, LOGE, "Empty rsp message for meas "
+ "(eWNI_SME_PRE_SWITCH_CHL_IND), nothing to process");
+ }
break;
- }
-
case eWNI_SME_POST_SWITCH_CHL_IND:
{
status = sme_HandlePostChannelSwitchInd(pMac);
@@ -8160,20 +8166,70 @@ void sme_PreChannelSwitchIndFullPowerCB(void *callbackContext,
}
/* ---------------------------------------------------------------------------
+ \fn sme_PreChannelSwitchIndOffloadFullPowerCB
+ \brief call back function for the PMC full power request because of pre
+ channel switch for offload case.
+ \param callbackContext
+ \param sessionId
+ \param status
+ ---------------------------------------------------------------------------*/
+void sme_PreChannelSwitchIndOffloadFullPowerCB(void *callbackContext,tANI_U32 sessionId,
+ eHalStatus status)
+{
+ tpAniSirGlobal pMac = (tpAniSirGlobal)callbackContext;
+ tSirMbMsg *pMsg;
+ tANI_U16 msgLen;
+
+ msgLen = (tANI_U16)(sizeof( tSirMbMsg ));
+ pMsg = vos_mem_malloc(msgLen);
+ if ( NULL != pMsg )
+ {
+ vos_mem_set(pMsg, msgLen, 0);
+ pMsg->type = pal_cpu_to_be16((tANI_U16)eWNI_SME_PRE_CHANNEL_SWITCH_FULL_POWER);
+ pMsg->msgLen = pal_cpu_to_be16(msgLen);
+ status = palSendMBMessage(pMac->hHdd, pMsg);
+ }
+
+ return;
+}
+
+/* ---------------------------------------------------------------------------
\fn sme_HandlePreChannelSwitchInd
\brief Processes the indcation from PE for pre-channel switch.
\param hHal
+ \param void *pMsgBuf to carry session id
\- The handle returned by macOpen. return eHalStatus
---------------------------------------------------------------------------*/
-eHalStatus sme_HandlePreChannelSwitchInd(tHalHandle hHal)
+eHalStatus sme_HandlePreChannelSwitchInd(tHalHandle hHal, void *pMsgBuf)
{
eHalStatus status = eHAL_STATUS_FAILURE;
tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
+ tpSirSmePreSwitchChannelInd pPreSwitchChInd = (tpSirSmePreSwitchChannelInd)pMsgBuf;
+
status = sme_AcquireGlobalLock( &pMac->sme );
if ( HAL_STATUS_SUCCESS( status ) )
{
- status = pmcRequestFullPower(hHal, sme_PreChannelSwitchIndFullPowerCB,
+
+ if(!pMac->psOffloadEnabled)
+ {
+ status = pmcRequestFullPower(hHal, sme_PreChannelSwitchIndFullPowerCB,
pMac, eSME_FULL_PWR_NEEDED_BY_CHANNEL_SWITCH);
+ }
+ else
+ {
+ if (NULL != pPreSwitchChInd)
+ {
+ status = pmcOffloadRequestFullPower(hHal, pPreSwitchChInd->sessionId,
+ sme_PreChannelSwitchIndOffloadFullPowerCB,
+ pMac, eSME_FULL_PWR_NEEDED_BY_CHANNEL_SWITCH);
+ }
+ else
+ {
+ smsLog(pMac, LOGE, "Empty pMsgBuf message for channel switch "
+ "(eWNI_SME_PRE_SWITCH_CHL_IND), nothing to process");
+ }
+ }
+
sme_ReleaseGlobalLock( &pMac->sme );
}
diff --git a/CORE/UTILS/FWLOG/dbglog_host.c b/CORE/UTILS/FWLOG/dbglog_host.c
index d2acf40d58e6..cd06208c7631 100644
--- a/CORE/UTILS/FWLOG/dbglog_host.c
+++ b/CORE/UTILS/FWLOG/dbglog_host.c
@@ -790,6 +790,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"WAL_DBGID_BRSSI_CONFIG",
"WAL_DBGID_CURRENT_BRSSI_AVE",
"WAL_DBGID_BCN_TX_COMP",
+ "WAL_DBGID_SET_HW_CHAINMASK",
+ "WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL",
+ "WAL_DBGID_GET_HW_CHAINMASK",
+ "WAL_DBGID_SMPS_DISABLE",
+ "WAL_DBGID_SMPS_ENABLE_HW_CNTRL",
+ "WAL_DBGID_SMPS_SWSEL_CHAINMASK",
"WAL_DBGID_DEFINITION_END",
},
{
@@ -971,6 +977,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"STA_SMPS_DBGID_FW_FORCED_MODE",
"STA_SMPS_DBGID_RSSI_THRESHOLD_CROSSED",
"STA_SMPS_DBGID_SMPS_ACTION_FRAME_COMPLETION",
+ "STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE",
"SMPS_DBGID_DEFINITION_END",
},
{ /* SWBMISS */
@@ -2305,6 +2317,31 @@ dbglog_wal_print_handler(
case WAL_DBGID_TX_DISCARD:
dbglog_printf(timestamp, vap_id, "WAL Tx enqueue discard msdu_id=0x%x", args[0]);
break;
+ case WAL_DBGID_SET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL set hw chainmask "
+ "pdev=%d, txchain=0x%x, rxchain=0x%x",
+ args[0], args[1], args[2]);
+ break;
+ case WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL:
+ dbglog_printf(timestamp, vap_id, "WAL hw chainmask tx stop fail rxstop=%d, txstop=%d",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_GET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL get hw chainmask "
+ "txchain=0x%x, rxchain=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_DISABLE:
+ dbglog_printf(timestamp, vap_id, "WAL smps disable");
+ break;
+ case WAL_DBGID_SMPS_ENABLE_HW_CNTRL:
+ dbglog_printf(timestamp, vap_id, "WAL enable hw ctrl low_pwr_mask=0x%x, high_pwr_mask=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_SWSEL_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL smps swsel chainmask low_pwr=0x%x, chain_mask=0x%x",
+ args[0], args[1]);
+ break;
default:
return FALSE;
}
@@ -2884,6 +2921,36 @@ A_BOOL dbglog_smps_print_handler(A_UINT32 mod_id,
(args[1] == 0x3 ? "DYNAMIC" : "UNKNOWN"))),
args[2]);
break;
+ case STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS ebt event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS dtim chmask update "
+ "tx_mask %#x rx_mask %#x arb_dtim_mask %#x",
+ args[0], args[1], args[2]);
+ break;
+ case STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS beacon event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS cur_pwr_state %s new_pwr_state %d",
+ (args[0] == 0x1 ? "SLEEP":
+ (args[0] == 0x2 ? "AWAKE":
+ (args[0] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))),
+ (args[1] == 0x1 ? "SLEEP":
+ (args[1] == 0x2 ? "AWAKE":
+ (args[1] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))));
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update sleep "
+ "tx_mask %#x rx_mask %#x orig_rx %#x dtim_rx %#x",
+ args[0], args[1], args[2], args[3]);
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update awake "
+ "tx_mask %#x rx_mask %#x orig_rx %#x",
+ args[0], args[1], args[2]);
+ break;
default:
dbglog_printf(
timestamp,
diff --git a/CORE/VOSS/inc/wlan_hdd_misc.h b/CORE/VOSS/inc/wlan_hdd_misc.h
index 056cfa1af834..e140a693c797 100644
--- a/CORE/VOSS/inc/wlan_hdd_misc.h
+++ b/CORE/VOSS/inc/wlan_hdd_misc.h
@@ -65,6 +65,7 @@
#define WLAN_DICT_FILE ""
#define WLAN_COUNTRY_INFO_FILE "wlan/wlan_country_info.dat"
#define WLAN_HO_CFG_FILE "wlan/wlan_ho_config"
+#define WLAN_MAC_FILE "wlan/wlan_mac.bin"
#endif // MSM_PLATFORM
diff --git a/CORE/VOSS/src/vos_api.c b/CORE/VOSS/src/vos_api.c
index 694d451587d3..9e8e5e138aa4 100644
--- a/CORE/VOSS/src/vos_api.c
+++ b/CORE/VOSS/src/vos_api.c
@@ -445,11 +445,12 @@ VOS_STATUS vos_open( v_CONTEXT_t *pVosContext, v_SIZE_t hddContextSize )
#if defined (QCA_WIFI_2_0) && \
!defined (QCA_WIFI_ISOC)
- /* This macOpenParams.maxStation has value incremented by 1 for PeerIdx logic.
- * So here we are decrementing by 1 to assign in the ini.With this change
- * there is no ned to define gSoftApMaxPeers ini for Rome >= 1.3
- */
- pHddCtx->cfg_ini->maxNumberOfPeers = macOpenParms.maxStation - 1;
+ /* Number of peers limit differs in each chip version. If peer max
+ * limit configured in ini exceeds more than supported, WMA adjusts
+ * and keeps correct limit in macOpenParms.maxStation. So, make sure
+ * ini entry pHddCtx->cfg_ini->maxNumberOfPeers has adjusted value
+ */
+ pHddCtx->cfg_ini->maxNumberOfPeers = macOpenParms.maxStation;
HTCHandle = vos_get_context(VOS_MODULE_ID_HTC, gpVosContext);
if (!HTCHandle) {
VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_FATAL,
diff --git a/CORE/VOSS/src/vos_memory.c b/CORE/VOSS/src/vos_memory.c
index edc4817a3c9f..56be95be94e0 100644
--- a/CORE/VOSS/src/vos_memory.c
+++ b/CORE/VOSS/src/vos_memory.c
@@ -337,11 +337,6 @@ v_VOID_t vos_mem_zero( v_VOID_t *ptr, v_SIZE_t numBytes )
}
-
-//This function is to validate one list in SME. We suspect someone corrupt te list. This code need to be removed
-//once the issue is fixed.
-extern int csrCheckValidateLists(void * dest, const void *src, v_SIZE_t num, int idx);
-
v_VOID_t vos_mem_copy( v_VOID_t *pDst, const v_VOID_t *pSrc, v_SIZE_t numBytes )
{
if (0 == numBytes)
@@ -358,10 +353,7 @@ v_VOID_t vos_mem_copy( v_VOID_t *pDst, const v_VOID_t *pSrc, v_SIZE_t numBytes )
VOS_ASSERT(0);
return;
}
- //These two check function calls are to see if someone corrupt the list while doing mem copy.
- csrCheckValidateLists(pDst, pSrc, numBytes, 1);
memcpy(pDst, pSrc, numBytes);
- csrCheckValidateLists(pDst, pSrc, numBytes, 2);
}
v_VOID_t vos_mem_move( v_VOID_t *pDst, const v_VOID_t *pSrc, v_SIZE_t numBytes )
diff --git a/CORE/VOSS/src/vos_sched.c b/CORE/VOSS/src/vos_sched.c
index ef0eebcfe5a7..7a4f72100998 100644
--- a/CORE/VOSS/src/vos_sched.c
+++ b/CORE/VOSS/src/vos_sched.c
@@ -1444,6 +1444,7 @@ void vos_drop_rxpkt_by_staid(pVosSchedContext pSchedContext, u_int16_t staId)
{
struct list_head local_list;
struct VosTlshimPkt *pkt, *tmp;
+ adf_nbuf_t buf, next_buf;
INIT_LIST_HEAD(&local_list);
spin_lock_bh(&pSchedContext->TlshimRxQLock);
@@ -1459,7 +1460,12 @@ void vos_drop_rxpkt_by_staid(pVosSchedContext pSchedContext, u_int16_t staId)
list_for_each_entry_safe(pkt, tmp, &local_list, list) {
list_del(&pkt->list);
- kfree_skb(pkt->Rxpkt);
+ buf = pkt->Rxpkt;
+ while (buf) {
+ next_buf = adf_nbuf_queue_next(buf);
+ adf_nbuf_free(buf);
+ buf = next_buf;
+ }
vos_free_tlshim_pkt(pSchedContext, pkt);
}
}
@@ -1485,11 +1491,7 @@ static void vos_rx_from_queue(pVosSchedContext pSchedContext)
list_del(&pkt->list);
spin_unlock_bh(&pSchedContext->TlshimRxQLock);
sta_id = pkt->staId;
- if (pkt->callback)
- pkt->callback(pkt->context, pkt->Rxpkt, sta_id);
- else
- kfree_skb(pkt->Rxpkt);
-
+ pkt->callback(pkt->context, pkt->Rxpkt, sta_id);
vos_free_tlshim_pkt(pSchedContext, pkt);
spin_lock_bh(&pSchedContext->TlshimRxQLock);
}
diff --git a/CORE/WDA/src/wlan_qct_wda.c b/CORE/WDA/src/wlan_qct_wda.c
index 1b0bcdd0a0f5..62e39df36504 100644
--- a/CORE/WDA/src/wlan_qct_wda.c
+++ b/CORE/WDA/src/wlan_qct_wda.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -87,7 +87,6 @@ static const tANI_U8 aUnsortedChannelList[]= {52,56,60,64,100,104,108,112,116,
/* Get WDA context from vOSS module */
#define VOS_GET_WDA_CTXT(a) vos_get_context(VOS_MODULE_ID_WDA, a)
#define VOS_GET_MAC_CTXT(a) vos_get_context(VOS_MODULE_ID_PE, a)
-#define OFFSET_OF(structType,fldName) (&((structType*)0)->fldName)
#define WDA_BA_TX_FRM_THRESHOLD (5)
#define CONVERT_WDI2SIR_STATUS(x) \
((WDI_STATUS_SUCCESS != (x)) ? eSIR_FAILURE : eSIR_SUCCESS)
diff --git a/CORE/WDI/CP/src/wlan_qct_wdi.c b/CORE/WDI/CP/src/wlan_qct_wdi.c
index 165699a8164b..9bbc41ba525a 100644
--- a/CORE/WDI/CP/src/wlan_qct_wdi.c
+++ b/CORE/WDI/CP/src/wlan_qct_wdi.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2012-2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -17257,7 +17257,6 @@ WDI_ProcessDelSTASelfRsp
@see
@return Result of the function call
*/
-#define OFFSET_OF(structType,fldName) (&((structType*)0)->fldName)
WDI_Status
WDI_ProcessStartOemDataRsp
diff --git a/CORE/WDI/TRP/CTS/inc/wlan_qct_wdi_cts.h b/CORE/WDI/TRP/CTS/inc/wlan_qct_wdi_cts.h
index f8882ac66d44..bc58ccf5fafc 100644
--- a/CORE/WDI/TRP/CTS/inc/wlan_qct_wdi_cts.h
+++ b/CORE/WDI/TRP/CTS/inc/wlan_qct_wdi_cts.h
@@ -30,10 +30,10 @@
/*===========================================================================
- W L A N C O N T R O L T R A N S P O R T S E R V I C E
+ W L A N C O N T R O L T R A N S P O R T S E R V I C E
E X T E R N A L A P I
-
-
+
+
DESCRIPTION
This file contains the external API exposed by the wlan control transport
service module.
@@ -69,14 +69,14 @@ when who what, where, why
/*----------------------------------------------------------------------------
* Include Files
* -------------------------------------------------------------------------*/
-#include "wlan_qct_pal_type.h"
+#include "wlan_qct_pal_type.h"
/*----------------------------------------------------------------------------
* Preprocessor Definitions and Constants
* -------------------------------------------------------------------------*/
#ifdef __cplusplus
extern "C" {
- #endif
+ #endif
/*----------------------------------------------------------------------------
* Type Declarations
@@ -85,7 +85,7 @@ when who what, where, why
/* Control Transport Service Handle Type*/
typedef void* WCTS_HandleType;
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
WCTS_NotifyEventType
---------------------------------------------------------------------------*/
typedef enum
@@ -101,56 +101,56 @@ typedef enum
/*---------------------------------------------------------------------------
WCTS_NotifyCBType
-
- DESCRIPTION
-
+
+ DESCRIPTION
+
This callback is invoked by the control transport when it wishes to send
up a notification like the ones mentioned above.
-
- PARAMETERS
+
+ PARAMETERS
IN
- wctsHandle: handle to the control transport service
+ wctsHandle: handle to the control transport service
wctsEvent: the event being notified
- wctsNotifyCBData: the callback data of the user
-
-
- RETURN VALUE
+ wctsNotifyCBData: the callback data of the user
+
+
+ RETURN VALUE
None
---------------------------------------------------------------------------*/
-typedef void (*WCTS_NotifyCBType) (WCTS_HandleType wctsHandle,
+typedef void (*WCTS_NotifyCBType) (WCTS_HandleType wctsHandle,
WCTS_NotifyEventType wctsEvent,
void* wctsNotifyCBData);
/*---------------------------------------------------------------------------
WCTS_RxMsgCBType
-
- DESCRIPTION
-
+
+ DESCRIPTION
+
This callback is invoked by the control transport when it wishes to send
up a packet received over the bus. Upon return of Rx callback, the ownership
of the message belongs to the CT and this one is free to deallocate any
buffer that was used to get this message. If WDI wishes to maintain the
information beyond the lifetime of the call, it must make a copy of it.
-
- PARAMETERS
+
+ PARAMETERS
IN
- wctsHandle: handle to the control transport service
+ wctsHandle: handle to the control transport service
pMsg: the packet
uLen: the packet length
- wctsRxMsgCBData: the callback data of the user
-
-
- RETURN VALUE
+ wctsRxMsgCBData: the callback data of the user
+
+
+ RETURN VALUE
None
---------------------------------------------------------------------------*/
-typedef void (*WCTS_RxMsgCBType) (WCTS_HandleType wctsHandle,
+typedef void (*WCTS_RxMsgCBType) (WCTS_HandleType wctsHandle,
void* pMsg,
wpt_uint32 uLen,
void* wctsRxMsgCBData);
-/*---------------------------------------------------------------------------
+/*---------------------------------------------------------------------------
WCTS Transport Callbacks holder type
---------------------------------------------------------------------------*/
typedef struct
@@ -167,26 +167,26 @@ typedef struct
/**
@brief This function is used by the DAL Core to initialize the Control
Transport for processing. It must be called prior to calling any
- other APIs of the Control Transport.
+ other APIs of the Control Transport.
- @param szName: unique name for the channel that is to be opened
+ @param szName: unique name for the channel that is to be opened
uSize: size of the channel that must be opened (should fit the
largest size of packet that the Dal Core wishes to send)
wctsCBs: a list of callbacks that the CT needs to use to send
- notification and messages back to DAL
-
- @see
- @return A handle that must be used for further communication with the CTS.
+ notification and messages back to DAL
+
+ @see
+ @return A handle that must be used for further communication with the CTS.
This is an opaque structure for the caller and it will be used in
- all communications to and from the CTS.
+ all communications to and from the CTS.
*/
-WCTS_HandleType
-WCTS_OpenTransport
-(
+WCTS_HandleType
+WCTS_OpenTransport
+(
const wpt_uint8* szName,
- wpt_uint32 uSize,
+ wpt_uint32 uSize,
WCTS_TransportCBsType* wctsCBs
);
@@ -199,38 +199,38 @@ WCTS_OpenTransport
@param wctsHandlehandle: received upon open
-
- @see
+
+ @see
@return 0 for success
*/
wpt_uint32
-WCTS_CloseTransport
+WCTS_CloseTransport
(
WCTS_HandleType wctsHandle
);
/**
- @brief This function is used by the DAL Core to to send a
+ @brief This function is used by the DAL Core to to send a
message over to the WLAN sub-system.
-
+
Once a buffer has been passed into the Send Message
- API, CT takes full ownership of it and it is responsible for
- freeing the associated resources. (This prevents a memcpy in
- case of a deffered write)
+ API, CT takes full ownership of it and it is responsible for
+ freeing the associated resources. (This prevents a memcpy in
+ case of a deffered write)
- The messages transported through the CT on both RX and TX are
- flat memory buffers that can be accessed and manipulated
- through standard memory functions.
+ The messages transported through the CT on both RX and TX are
+ flat memory buffers that can be accessed and manipulated
+ through standard memory functions.
@param wctsHandlehandle: received upon open
pMsg: the message to be sent
uLen: the length of the message
- @see
+ @see
@return 0 for success
*/
wpt_uint32
-WCTS_SendMessage
+WCTS_SendMessage
(
WCTS_HandleType wctsHandle,
void* pMsg,
diff --git a/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c b/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
index aa9454fc1e59..c72e6e1c0d0e 100644
--- a/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
+++ b/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
@@ -86,7 +86,7 @@
#include "msm_smd.h"
#endif
-/* Global context for CTS handle, it is required to keep this
+/* Global context for CTS handle, it is required to keep this
* transport open during SSR shutdown */
static WCTS_HandleType gwctsHandle;
/*----------------------------------------------------------------------------
@@ -433,7 +433,7 @@ WCTS_PALDataCallback
} /*WCTS_PALDataCallback*/
/**
- @brief This helper function is used to clean up the pending
+ @brief This helper function is used to clean up the pending
messages in the transport queue
@param wctsHandlehandle: transport handle
@@ -647,7 +647,7 @@ WCTS_OpenTransport
WPAL_TRACE(eWLAN_MODULE_DAL_CTRL, eWLAN_PAL_TRACE_LEVEL_FATAL,
"WCTS_OpenTransport: Invalid magic.");
return NULL;
- }
+ }
pWCTSCb->wctsState = WCTS_STATE_OPEN;
pWCTSCb->wctsNotifyCB((WCTS_HandleType)pWCTSCb,
diff --git a/tools/fwdebuglog/cld-fwlog-parser.c b/tools/fwdebuglog/cld-fwlog-parser.c
index 6da618eb8df6..050e8727c23d 100644
--- a/tools/fwdebuglog/cld-fwlog-parser.c
+++ b/tools/fwdebuglog/cld-fwlog-parser.c
@@ -770,6 +770,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"WAL_DBGID_BRSSI_CONFIG",
"WAL_DBGID_CURRENT_BRSSI_AVE",
"WAL_DBGID_BCN_TX_COMP",
+ "WAL_DBGID_SET_HW_CHAINMASK",
+ "WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL",
+ "WAL_DBGID_GET_HW_CHAINMASK",
+ "WAL_DBGID_SMPS_DISABLE",
+ "WAL_DBGID_SMPS_ENABLE_HW_CNTRL",
+ "WAL_DBGID_SMPS_SWSEL_CHAINMASK",
"WAL_DBGID_DEFINITION_END",
},
{
@@ -947,6 +953,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"STA_SMPS_DBGID_VIRTUAL_CHAN_SMPS_START",
"STA_SMPS_DBGID_VIRTUAL_CHAN_SMPS_STOP",
"STA_SMPS_DBGID_SEND_SMPS_ACTION_FRAME",
+ "STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE",
"SMPS_DBGID_DEFINITION_END",
},
{ /* SWBMISS */
@@ -1852,6 +1864,31 @@ dbglog_wal_print_handler(
case WAL_DBGID_TX_DISCARD:
dbglog_printf(timestamp, vap_id, "WAL Tx enqueue discard msdu_id=0x%x", args[0]);
break;
+ case WAL_DBGID_SET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL set hw chainmask "
+ "pdev=%d, txchain=0x%x, rxchain=0x%x",
+ args[0], args[1], args[2]);
+ break;
+ case WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL:
+ dbglog_printf(timestamp, vap_id, "WAL hw chainmask tx stop fail rxstop=%d, txstop=%d",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_GET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL get hw chainmask "
+ "txchain=0x%x, rxchain=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_DISABLE:
+ dbglog_printf(timestamp, vap_id, "WAL smps disable");
+ break;
+ case WAL_DBGID_SMPS_ENABLE_HW_CNTRL:
+ dbglog_printf(timestamp, vap_id, "WAL enable hw ctrl low_pwr_mask=0x%x, high_pwr_mask=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_SWSEL_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL smps swsel chainmask low_pwr=0x%x, chain_mask=0x%x",
+ args[0], args[1]);
+ break;
default:
return FALSE;
}
@@ -2432,8 +2469,36 @@ A_BOOL dbglog_smps_print_handler(A_UINT32 mod_id,
(args[1] == 0x3 ? "DYNAMIC" : "UNKNOWN"))),
args[2]);
break;
-
-
+ case STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS ebt event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update "
+ "tx_mask %#x rx_mask %#x arb_dtim_mask %#x",
+ args[0], args[1], args[2]);
+ break;
+ case STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS beacon event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS cur_pwr_state %s new_pwr_state %d",
+ (args[0] == 0x1 ? "SLEEP":
+ (args[0] == 0x2 ? "AWAKE":
+ (args[0] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))),
+ (args[1] == 0x1 ? "SLEEP":
+ (args[1] == 0x2 ? "AWAKE":
+ (args[1] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))));
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update sleep "
+ "tx_mask %#x rx_mask %#x orig_rx %#x dtim_rx %#x",
+ args[0], args[1], args[2], args[3]);
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update awake "
+ "tx_mask %#x rx_mask %#x orig_rx %#x",
+ args[0], args[1], args[2]);
+ break;
default:
dbglog_printf(
timestamp,
diff --git a/tools/fwdebuglog/parser.c b/tools/fwdebuglog/parser.c
index 3b555aa6613c..0a3a540c849b 100644
--- a/tools/fwdebuglog/parser.c
+++ b/tools/fwdebuglog/parser.c
@@ -779,6 +779,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"WAL_DBGID_BRSSI_CONFIG",
"WAL_DBGID_CURRENT_BRSSI_AVE",
"WAL_DBGID_BCN_TX_COMP",
+ "WAL_DBGID_SET_HW_CHAINMASK",
+ "WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL",
+ "WAL_DBGID_GET_HW_CHAINMASK",
+ "WAL_DBGID_SMPS_DISABLE",
+ "WAL_DBGID_SMPS_ENABLE_HW_CNTRL",
+ "WAL_DBGID_SMPS_SWSEL_CHAINMASK",
"WAL_DBGID_DEFINITION_END",
},
{
@@ -956,6 +962,12 @@ char * DBG_MSG_ARR[WLAN_MODULE_ID_MAX][MAX_DBG_MSGS] =
"STA_SMPS_DBGID_VIRTUAL_CHAN_SMPS_START",
"STA_SMPS_DBGID_VIRTUAL_CHAN_SMPS_STOP",
"STA_SMPS_DBGID_SEND_SMPS_ACTION_FRAME",
+ "STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE",
+ "STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP",
+ "STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE",
"SMPS_DBGID_DEFINITION_END",
},
{ /* SWBMISS */
@@ -1057,18 +1069,25 @@ dbglog_printf(
{
char buf[128];
va_list ap;
+ int j;
if (vap_id < DBGLOG_MAX_VDEVID) {
- printf(DBGLOG_PRINT_PREFIX "[%u] vap-%u ", timestamp, vap_id);
+ j = snprintf(buf, sizeof(buf), DBGLOG_PRINT_PREFIX
+ "[%u] vap-%u ", timestamp, vap_id);
} else {
- printf(DBGLOG_PRINT_PREFIX "[%u] ", timestamp);
+ j = snprintf(buf, sizeof(buf), DBGLOG_PRINT_PREFIX
+ "[%u] ", timestamp);
}
va_start(ap, fmt);
- vsnprintf(buf, sizeof(buf), fmt, ap);
+ vsnprintf(buf+j, sizeof(buf)-j, fmt, ap);
va_end(ap);
- printf("%s\n", buf);
+ if (optionflag & QXDM_FLAG) {
+ qxdm_log(buf);
+ } else {
+ printf("%s\n", buf);
+ }
}
void
@@ -1079,18 +1098,25 @@ dbglog_printf_no_line_break(
{
char buf[128];
va_list ap;
+ int j;
if (vap_id < DBGLOG_MAX_VDEVID) {
- printf(DBGLOG_PRINT_PREFIX "[%u] vap-%u ", timestamp, vap_id);
+ j = snprintf(buf, sizeof(buf), DBGLOG_PRINT_PREFIX
+ "[%u] vap-%u ", timestamp, vap_id);
} else {
- printf(DBGLOG_PRINT_PREFIX "[%u] ", timestamp);
+ j = snprintf(buf, sizeof(buf), DBGLOG_PRINT_PREFIX
+ "[%u] ", timestamp);
}
va_start(ap, fmt);
- vsnprintf(buf, sizeof(buf), fmt, ap);
+ vsnprintf(buf+j, sizeof(buf)-j, fmt, ap);
va_end(ap);
- printf("%s", buf);
+ if (optionflag & QXDM_FLAG) {
+ qxdm_log(buf);
+ } else {
+ printf("%s", buf);
+ }
}
#define USE_NUMERIC 0
@@ -1859,6 +1885,31 @@ dbglog_wal_print_handler(
case WAL_DBGID_TX_DISCARD:
dbglog_printf(timestamp, vap_id, "WAL Tx enqueue discard msdu_id=0x%x", args[0]);
break;
+ case WAL_DBGID_SET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL set hw chainmask "
+ "pdev=%d, txchain=0x%x, rxchain=0x%x",
+ args[0], args[1], args[2]);
+ break;
+ case WAL_DBGID_SET_HW_CHAINMASK_TXRX_STOP_FAIL:
+ dbglog_printf(timestamp, vap_id, "WAL hw chainmask tx stop fail: rxstop=%d, txstop=%d",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_GET_HW_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL get hw chainmask "
+ "txchain=0x%x, rxchain=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_DISABLE:
+ dbglog_printf(timestamp, vap_id, "WAL smps disable");
+ break;
+ case WAL_DBGID_SMPS_ENABLE_HW_CNTRL:
+ dbglog_printf(timestamp, vap_id, "WAL enable hw ctrl low_pwr_mask=0x%x, high_pwr_mask=0x%x",
+ args[0], args[1]);
+ break;
+ case WAL_DBGID_SMPS_SWSEL_CHAINMASK:
+ dbglog_printf(timestamp, vap_id, "WAL smps swsel chainmask low_pwr=0x%x, chain_mask=0x%x",
+ args[0], args[1]);
+ break;
default:
return FALSE;
}
@@ -2439,8 +2490,36 @@ A_BOOL dbglog_smps_print_handler(A_UINT32 mod_id,
(args[1] == 0x3 ? "DYNAMIC" : "UNKNOWN"))),
args[2]);
break;
-
-
+ case STA_SMPS_DBGID_DTIM_EBT_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS ebt event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update "
+ "tx_mask %#x rx_mask %#x arb_dtim_mask %#x",
+ args[0], args[1], args[2]);
+ break;
+ case STA_SMPS_DBGID_DTIM_BEACON_EVENT_CHMASK_UPDATE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS beacon event chmask update");
+ break;
+ case STA_SMPS_DBGID_DTIM_POWER_STATE_CHANGE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS cur_pwr_state %s new_pwr_state %d",
+ (args[0] == 0x1 ? "SLEEP":
+ (args[0] == 0x2 ? "AWAKE":
+ (args[0] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))),
+ (args[1] == 0x1 ? "SLEEP":
+ (args[1] == 0x2 ? "AWAKE":
+ (args[1] == 0x3 ? "FULL_SLEEP" : "UNKNOWN"))));
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_SLEEP:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update sleep "
+ "tx_mask %#x rx_mask %#x orig_rx %#x dtim_rx %#x",
+ args[0], args[1], args[2], args[3]);
+ break;
+ case STA_SMPS_DBGID_DTIM_CHMASK_UPDATE_AWAKE:
+ dbglog_printf(timestamp, vap_id, "STA_SMPS chmask update awake "
+ "tx_mask %#x rx_mask %#x orig_rx %#x",
+ args[0], args[1], args[2]);
+ break;
default:
dbglog_printf(
timestamp,