summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Green <andy.green@linaro.org>2015-01-01 11:39:39 +0800
committerAndy Green <andy.green@linaro.org>2015-01-01 12:13:18 +0800
commita9705a3ece7d8c4ba0852e6649892bf6c024fc63 (patch)
tree537e7dc2bd0090fb1c2deb13282582edc553fb94
parenta4ef95efcd5de095f0600c614439ff69314207a0 (diff)
Signed-off-by: Andy Green <andy.green@linaro.org>
-rw-r--r--arch/arm/configs/msm8916-qrd_defconfig2
-rw-r--r--drivers/clk/qcom/clock-gcc-8916.c2
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_cfg.h2
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_hostapd.h4
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_main.h13
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_p2p.h34
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_wmm.h4
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_assoc.c12
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg.c7
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg80211.c90
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_dev_pwr.c6
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_early_suspend.c11
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_hostapd.c9
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_main.c130
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_p2p.c131
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_softap_tx_rx.c5
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_tx_rx.c7
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wext.c12
-rw-r--r--drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wmm.c6
-rw-r--r--drivers/net/wireless/prima/CORE/MAC/src/include/dot11f.h4
-rw-r--r--drivers/net/wireless/prima/CORE/SAP/inc/sapApi.h4
-rw-r--r--drivers/net/wireless/prima/CORE/SAP/src/sapModule.c4
-rw-r--r--drivers/net/wireless/prima/CORE/SME/inc/sme_Api.h8
-rw-r--r--drivers/net/wireless/prima/CORE/SME/src/csr/csrApiRoam.c1
-rw-r--r--drivers/net/wireless/prima/CORE/SME/src/sme_common/sme_Api.c6
-rw-r--r--drivers/net/wireless/prima/CORE/SVC/src/logging/wlan_logging_sock_svc.c2
-rw-r--r--drivers/net/wireless/prima/CORE/SYS/legacy/src/utils/src/dot11f.c2
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/inc/vos_memory.h4
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_event.c2
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_memory.c4
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_nvitem.c32
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_power.c4
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.c6
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.h1
-rw-r--r--drivers/net/wireless/prima/CORE/VOSS/src/vos_utils.c4
-rw-r--r--drivers/net/wireless/prima/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c10
-rw-r--r--drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_api.c2
-rw-r--r--drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_device.c2
-rw-r--r--drivers/net/wireless/prima/Kconfig2
39 files changed, 221 insertions, 370 deletions
diff --git a/arch/arm/configs/msm8916-qrd_defconfig b/arch/arm/configs/msm8916-qrd_defconfig
index 9c8279736e93..ba834ef36735 100644
--- a/arch/arm/configs/msm8916-qrd_defconfig
+++ b/arch/arm/configs/msm8916-qrd_defconfig
@@ -99,6 +99,8 @@ CONFIG_ATH_CARDS=y
CONFIG_ATH_DEBUG=y
# CONFIG_RTL_CARDS is not set
CONFIG_PRONTO_WLAN=m
+CONFIG_PRIMA_WLAN_LFR=y
+CONFIG_ENABLE_LINUX_REG=y
CONFIG_SERIAL_MSM=y
CONFIG_SERIAL_MSM_CONSOLE=y
CONFIG_HW_RANDOM=y
diff --git a/drivers/clk/qcom/clock-gcc-8916.c b/drivers/clk/qcom/clock-gcc-8916.c
index ed6c0e8fbc74..e1a680df4c9e 100644
--- a/drivers/clk/qcom/clock-gcc-8916.c
+++ b/drivers/clk/qcom/clock-gcc-8916.c
@@ -2921,7 +2921,7 @@ static struct clk_lookup msm_clocks_gcc_mdss[] = {
CLK_LIST(gcc_mdss_byte0_clk),
};
-static int __init msm_gcc_mdss_probe(struct platform_device *pdev)
+static int msm_gcc_mdss_probe(struct platform_device *pdev)
{
int counter = 0, ret = 0;
diff --git a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_cfg.h b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_cfg.h
index ea5e05d1f614..88c5faa24d3b 100644
--- a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_cfg.h
+++ b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_cfg.h
@@ -61,7 +61,7 @@
#include <csrApi.h>
//Number of items that can be configured
-#define MAX_CFG_INI_ITEMS 320
+#define MAX_CFG_INI_ITEMS 380
// Defines for all of the things we read from the configuration (registry).
diff --git a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_hostapd.h b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_hostapd.h
index 2c2fdc9f983d..bdf84ad3fdfd 100644
--- a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_hostapd.h
+++ b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_hostapd.h
@@ -95,8 +95,8 @@ hdd_TranslateWPAToCsrAuthType(u_int8_t auth_suite[4]);
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*);
+VOS_STATUS hdd_softap_sta_deauth(hdd_adapter_t*, const v_U8_t*);
+void hdd_softap_sta_disassoc(hdd_adapter_t*, const 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,
diff --git a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_main.h b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_main.h
index 6516ce70eb80..5ae6c0d214b9 100644
--- a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_main.h
+++ b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_main.h
@@ -68,9 +68,6 @@
#include <wlan_hdd_wmm.h>
#include <wlan_hdd_cfg.h>
#include <linux/spinlock.h>
-#ifdef WLAN_OPEN_SOURCE
-#include <linux/wakelock.h>
-#endif
#include <wlan_hdd_ftm.h>
#ifdef FEATURE_WLAN_TDLS
#include "wlan_hdd_tdls.h"
@@ -1204,12 +1201,6 @@ struct hdd_context_s
/* Thermal mitigation information */
hdd_thermal_mitigation_info_t tmInfo;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- struct wake_lock rx_wake_lock;
-#endif
-#endif
-
/*
* Framework initiated driver restarting
* hdd_reload_timer : Restart retry timer
@@ -1227,10 +1218,6 @@ struct hdd_context_s
is invoked*/
v_BOOL_t is_dynamic_channel_range_set;
-#ifdef WLAN_OPEN_SOURCE
- struct wake_lock sap_wake_lock;
-#endif
-
#ifdef FEATURE_WLAN_TDLS
eTDLSSupportMode tdls_mode;
eTDLSSupportMode tdls_mode_last;
diff --git a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_p2p.h b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_p2p.h
index bdec463f27d6..2d2f60a6873e 100644
--- a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_p2p.h
+++ b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_p2p.h
@@ -151,37 +151,9 @@ void hdd_sendActionCnf( hdd_adapter_t *pAdapter, tANI_BOOLEAN actionSendSuccess
int wlan_hdd_check_remain_on_channel(hdd_adapter_t *pAdapter);
void wlan_hdd_cancel_existing_remain_on_channel(hdd_adapter_t *pAdapter);
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct wireless_dev *wdev,
- struct ieee80211_channel *chan, bool offchan,
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0))
- enum nl80211_channel_type channel_type,
- bool channel_type_valid,
-#endif
- unsigned int wait,
- const u8 *buf, size_t len, bool no_cck,
- bool dont_wait_for_ack, u64 *cookie );
-#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan, bool offchan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid, unsigned int wait,
- const u8 *buf, size_t len, bool no_cck,
- bool dont_wait_for_ack, u64 *cookie );
-#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan, bool offchan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid, unsigned int wait,
- const u8 *buf, size_t len, u64 *cookie );
-#else
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid,
- const u8 *buf, size_t len, u64 *cookie );
-#endif
-
+int wlan_hdd_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
+ struct cfg80211_mgmt_tx_params *params,
+ u64 *cookie);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,7,0))
struct wireless_dev* wlan_hdd_add_virtual_intf(
diff --git a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_wmm.h b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_wmm.h
index 807c2ee8afa0..05d1dbe7b5be 100644
--- a/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_wmm.h
+++ b/drivers/net/wireless/prima/CORE/HDD/inc/wlan_hdd_wmm.h
@@ -248,7 +248,7 @@ VOS_STATUS hdd_wmm_adapter_close ( hdd_adapter_t* pAdapter );
@return : queue_index/linux AC value.
===========================================================================*/
-v_U16_t hdd_wmm_select_queue(struct net_device * dev, struct sk_buff *skb);
+v_U16_t hdd_wmm_select_queue(struct net_device * dev, struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback);
/**============================================================================
@brief hdd_hostapd_select_queue() - Function which will classify the packet
@@ -261,7 +261,7 @@ v_U16_t hdd_wmm_select_queue(struct net_device * dev, struct sk_buff *skb);
@return : Qdisc queue index
===========================================================================*/
-v_U16_t hdd_hostapd_select_queue(struct net_device * dev, struct sk_buff *skb);
+v_U16_t hdd_hostapd_select_queue(struct net_device * dev, struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback);
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_assoc.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_assoc.c
index c6398fa0eed4..196df57441cc 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_assoc.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_assoc.c
@@ -762,7 +762,7 @@ static eHalStatus hdd_DisConnectHandler( hdd_adapter_t *pAdapter, tCsrRoamInfo *
netif_tx_disable(dev);
netif_carrier_off(dev);
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
hdd_connSetConnectionState( pHddStaCtx, eConnectionState_Disconnecting );
/* If only STA mode is on */
if((pHddCtx->concurrency_mode <= 1) && (pHddCtx->no_of_sessions[WLAN_HDD_INFRA_STATION] <=1))
@@ -1167,7 +1167,7 @@ static eHalStatus hdd_AssociationCompletionHandler( hdd_adapter_t *pAdapter, tCs
// Initialize the Linkup event completion variable
- INIT_COMPLETION(pAdapter->linkup_event_var);
+ reinit_completion(&pAdapter->linkup_event_var);
/*
Sometimes Switching ON the Carrier is taking time to activate the device properly. Before allowing any
@@ -1595,7 +1595,7 @@ static void hdd_RoamIbssIndicationHandler( hdd_adapter_t *pAdapter,
return;
}
- cfg80211_ibss_joined(pAdapter->dev, bss->bssid, GFP_KERNEL);
+ cfg80211_ibss_joined(pAdapter->dev, bss->bssid, /* struct ieee80211_channel *channel*/ NULL, GFP_KERNEL);
cfg80211_put_bss(
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
pHddCtx->wiphy,
@@ -1735,7 +1735,7 @@ static eHalStatus roamIbssConnectHandler( hdd_adapter_t *pAdapter, tCsrRoamInfo
return eHAL_STATUS_FAILURE;
}
/* send ibss join indication to nl80211 */
- cfg80211_ibss_joined(pAdapter->dev, &pRoamInfo->bssid[0], GFP_KERNEL);
+ cfg80211_ibss_joined(pAdapter->dev, &pRoamInfo->bssid[0], /* channel*/ NULL, GFP_KERNEL);
cfg80211_put_bss(
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
WLAN_HDD_GET_CTX(pAdapter)->wiphy,
@@ -3225,7 +3225,7 @@ int iw_set_essid(struct net_device *dev,
{
VOS_STATUS vosStatus;
// need to issue a disconnect to CSR.
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
vosStatus = sme_RoamDisconnect( hHal, pAdapter->sessionId, eCSR_DISCONNECT_REASON_UNSPECIFIED );
if(VOS_STATUS_SUCCESS == vosStatus)
@@ -3868,7 +3868,7 @@ void hdd_indicateUnprotMgmtFrame( hdd_adapter_t *pAdapter,
}
else if (type == SIR_MAC_MGMT_FRAME && subType == SIR_MAC_MGMT_DEAUTH)
{
- cfg80211_send_unprot_deauth(pAdapter->dev, pbFrames, nFrameLength);
+ cfg80211_rx_unprot_mlme_mgmt(pAdapter->dev, pbFrames, nFrameLength);
pAdapter->hdd_stats.hddPmfStats.numUnprotDeauthRx++;
}
else
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg.c
index 00f434a3f06f..e4429d464cf2 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg.c
@@ -196,6 +196,7 @@ static void cbNotifySetEnableSSR(hdd_context_t *pHddCtx, unsigned long NotifyId)
sme_UpdateEnableSSR((tHalHandle)(pHddCtx->hHal), pHddCtx->cfg_ini->enableSSR);
}
+#ifdef FEATURE_WLAN_LFR
#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
static void cbNotifyUpdateRoamScanOffloadEnabled(hdd_context_t *pHddCtx, unsigned long NotifyId)
{
@@ -213,6 +214,7 @@ static void cbNotifySetEnableFastRoamInConcurrency(hdd_context_t *pHddCtx, unsig
}
#endif
+#endif
REG_TABLE_ENTRY g_registry_table[] =
{
@@ -1127,6 +1129,7 @@ REG_TABLE_ENTRY g_registry_table[] =
CFG_OKC_FEATURE_ENABLED_MAX,
cbNotifySetOkcFeatureEnabled, 0 ),
#endif
+#ifdef FEATURE_WLAN_LFR
#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
REG_DYNAMIC_VARIABLE( CFG_ROAM_SCAN_OFFLOAD_ENABLED, WLAN_PARAM_Integer,
hdd_config_t, isRoamOffloadScanEnabled,
@@ -1136,6 +1139,7 @@ REG_TABLE_ENTRY g_registry_table[] =
CFG_ROAM_SCAN_OFFLOAD_ENABLED_MAX,
cbNotifyUpdateRoamScanOffloadEnabled, 0),
#endif
+#endif
REG_VARIABLE( CFG_QOS_WMM_PKT_CLASSIFY_BASIS_NAME , WLAN_PARAM_Integer,
hdd_config_t, PktClassificationBasis,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK_ASSUME_DEFAULT,
@@ -2694,6 +2698,7 @@ REG_VARIABLE( CFG_TDLS_EXTERNAL_CONTROL, WLAN_PARAM_Integer,
CFG_SCAN_OFFLOAD_DEFAULT,
CFG_SCAN_OFFLOAD_DISABLE,
CFG_SCAN_OFFLOAD_ENABLE ),
+#ifdef FEATURE_WLAN_LFR
#ifdef WLAN_FEATURE_ROAM_SCAN_OFFLOAD
REG_DYNAMIC_VARIABLE( CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY, WLAN_PARAM_Integer,
@@ -2704,7 +2709,7 @@ REG_VARIABLE( CFG_TDLS_EXTERNAL_CONTROL, WLAN_PARAM_Integer,
CFG_ENABLE_FAST_ROAM_IN_CONCURRENCY_MAX,
cbNotifySetEnableFastRoamInConcurrency, 0 ),
#endif
-
+#endif
REG_VARIABLE( CFG_ENABLE_ADAPT_RX_DRAIN_NAME, WLAN_PARAM_Integer,
hdd_config_t, fEnableAdaptRxDrain,
VAR_FLAGS_OPTIONAL | VAR_FLAGS_RANGE_CHECK ,
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg80211.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg80211.c
index c3afe106ea91..92137122e1da 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -710,12 +710,12 @@ int wlan_hdd_cfg80211_init(struct device *dev,
#ifndef CONFIG_ENABLE_LINUX_REG
/* the flag for the other case would be initialzed in
vos_init_wiphy_from_nv_bin */
- wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY;
+ wiphy->regulatory_flags |= REGULATORY_STRICT_REG;
#endif
/* This will disable updating of NL channels from passive to
* active if a beacon is received on passive channel. */
- wiphy->flags |= WIPHY_FLAG_DISABLE_BEACON_HINTS;
+ wiphy->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS;
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0))
@@ -723,7 +723,7 @@ int wlan_hdd_cfg80211_init(struct device *dev,
| WIPHY_FLAG_AP_PROBE_RESP_OFFLOAD
| WIPHY_FLAG_HAS_REMAIN_ON_CHANNEL
| WIPHY_FLAG_OFFCHAN_TX;
- wiphy->country_ie_pref = NL80211_COUNTRY_IE_IGNORE_CORE;
+ wiphy->regulatory_flags |= REGULATORY_COUNTRY_IE_IGNORE;
#endif
#if defined (WLAN_FEATURE_VOWIFI_11R) || defined (FEATURE_WLAN_CCX) || defined(FEATURE_WLAN_LFR)
@@ -913,7 +913,7 @@ void wlan_hdd_cfg80211_update_reg_info(struct wiphy *wiphy)
struct ieee80211_supported_band *band = wiphy->bands[IEEE80211_BAND_5GHZ];
// Mark UNII -1 band channel as passive
if (WLAN_HDD_CHANNEL_IN_UNII_1_BAND(band->channels[j].center_freq))
- band->channels[j].flags |= IEEE80211_CHAN_PASSIVE_SCAN;
+ band->channels[j].flags |= IEEE80211_CHAN_NO_IR;
}
}
}
@@ -1186,10 +1186,10 @@ int wlan_hdd_cfg80211_alloc_new_beacon(hdd_adapter_t *pAdapter,
}
-v_U8_t* wlan_hdd_cfg80211_get_ie_ptr(v_U8_t *pIes, int length, v_U8_t eid)
+const v_U8_t* wlan_hdd_cfg80211_get_ie_ptr(const v_U8_t *pIes, int length, v_U8_t eid)
{
int left = length;
- v_U8_t *ptr = pIes;
+ const v_U8_t *ptr = pIes;
v_U8_t elem_id,elem_len;
while(left >= 2)
@@ -1229,7 +1229,7 @@ static int wlan_hdd_rate_is_11g(u8 rate)
}
/* Check for 11g rate and set proper 11g only mode */
-static void wlan_hdd_check_11gmode(u8 *pIe, u8* require_ht,
+static void wlan_hdd_check_11gmode(const u8 *pIe, u8* require_ht,
u8* pCheckRatesfor11g, eSapPhyMode* pSapHw_mode)
{
u8 i, num_rates = pIe[0];
@@ -1265,7 +1265,7 @@ static void wlan_hdd_set_sapHwmode(hdd_adapter_t *pHostapdAdapter)
struct ieee80211_mgmt *pMgmt_frame = (struct ieee80211_mgmt*)pBeacon->head;
u8 checkRatesfor11g = TRUE;
u8 require_ht = FALSE;
- u8 *pIe=NULL;
+ const u8 *pIe=NULL;
pConfig->SapHw_mode= eSAP_DOT11_MODE_11b;
@@ -1862,7 +1862,7 @@ static int wlan_hdd_cfg80211_start_bss(hdd_adapter_t *pHostapdAdapter,
tsap_Config_t *pConfig;
beacon_data_t *pBeacon = NULL;
struct ieee80211_mgmt *pMgmt_frame;
- v_U8_t *pIe=NULL;
+ const v_U8_t *pIe=NULL;
v_U16_t capab_info;
eCsrAuthType RSNAuthType;
eCsrEncryptionType RSNEncryptType;
@@ -2458,7 +2458,7 @@ static int wlan_hdd_cfg80211_stop_ap (struct wiphy *wiphy,
{
long ret;
- INIT_COMPLETION(pScanInfo->abortscan_event_var);
+ reinit_completion(&pScanInfo->abortscan_event_var);
hdd_abort_mac_scan(staAdapter->pHddCtx, eCSR_SCAN_ABORT_DEFAULT);
@@ -3128,7 +3128,7 @@ static int __wlan_hdd_cfg80211_change_iface( struct wiphy *wiphy,
( eCSR_BSS_TYPE_START_IBSS == LastBSSType ) )
{
/*need to issue a disconnect to CSR.*/
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
if( eHAL_STATUS_SUCCESS ==
sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
@@ -3340,7 +3340,7 @@ static int wlan_hdd_tdls_add_station(struct wiphy *wiphy,
return -EPERM;
}
- INIT_COMPLETION(pAdapter->tdls_add_station_comp);
+ reinit_completion(&pAdapter->tdls_add_station_comp);
if (!update)
{
@@ -3382,7 +3382,7 @@ error:
static int wlan_hdd_change_station(struct wiphy *wiphy,
struct net_device *dev,
- u8 *mac,
+ const u8 *mac,
struct station_parameters *params)
{
VOS_STATUS status = VOS_STATUS_SUCCESS;
@@ -3644,7 +3644,7 @@ static int wlan_hdd_cfg80211_add_key( struct wiphy *wiphy,
{
vos_mem_zero(&setKey,sizeof(tCsrRoamSetKey));
wlan_hdd_cfg80211_set_key_wapi(pAdapter, key_index, mac_addr,
- params->key, params->key_len);
+ (u8 *)params->key, params->key_len);
return 0;
}
#endif
@@ -4281,7 +4281,10 @@ static struct cfg80211_bss* wlan_hdd_cfg80211_inform_bss(
{
rssi = (VOS_MIN ((pBssDesc->rssi + pBssDesc->sinr), 0))*100;
- return (cfg80211_inform_bss(wiphy, chan, pBssDesc->bssId,
+ return (cfg80211_inform_bss(wiphy, chan,
+/* enum cfg80211_bss_frame_type ftype, */
+ CFG80211_BSS_FTYPE_UNKNOWN,
+ pBssDesc->bssId,
le64_to_cpu(*(__le64 *)pBssDesc->timeStamp),
pBssDesc->capabilityInfo,
pBssDesc->beaconInterval, ie, ie_length,
@@ -4618,14 +4621,14 @@ static int wlan_hdd_cfg80211_update_bss( struct wiphy *wiphy,
}
void
-hddPrintMacAddr(tCsrBssid macAddr, tANI_U8 logLevel)
+hddPrintMacAddr(const tCsrBssid macAddr, tANI_U8 logLevel)
{
VOS_TRACE(VOS_MODULE_ID_HDD, logLevel,
MAC_ADDRESS_STR, MAC_ADDR_ARRAY(macAddr));
} /****** end hddPrintMacAddr() ******/
void
-hddPrintPmkId(tANI_U8 *pmkId, tANI_U8 logLevel)
+hddPrintPmkId(const tANI_U8 *pmkId, tANI_U8 logLevel)
{
VOS_TRACE(VOS_MODULE_ID_HDD, logLevel,
"%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X",
@@ -5248,7 +5251,7 @@ int wlan_hdd_cfg80211_scan( struct wiphy *wiphy,
}
}
- INIT_COMPLETION(pScanInfo->scan_req_completion_event);
+ reinit_completion(&pScanInfo->scan_req_completion_event);
/* acquire the wakelock to avoid the apps suspend during the scan. To
* address the following issues.
@@ -5729,12 +5732,12 @@ static int wlan_hdd_cfg80211_set_cipher( hdd_adapter_t *pAdapter,
* This function is used to parse WPA/RSN IE's.
*/
int wlan_hdd_cfg80211_set_ie( hdd_adapter_t *pAdapter,
- u8 *ie,
+ const u8 *ie,
size_t ie_len
)
{
hdd_wext_state_t *pWextState = WLAN_HDD_GET_WEXT_STATE_PTR(pAdapter);
- u8 *genie = ie;
+ const u8 *genie = ie;
v_U16_t remLen = ie_len;
#ifdef FEATURE_WLAN_WAPI
v_U32_t akmsuite[MAX_NUM_AKM_SUITES];
@@ -5950,7 +5953,7 @@ int wlan_hdd_cfg80211_set_ie( hdd_adapter_t *pAdapter,
* Parse the received IE to find the WPA IE
*
*/
-static bool hdd_isWPAIEPresent(u8 *ie, u8 ie_len)
+static bool hdd_isWPAIEPresent(const u8 *ie, u8 ie_len)
{
v_U8_t eLen = 0;
v_U16_t remLen = ie_len;
@@ -6076,7 +6079,7 @@ int wlan_hdd_cfg80211_set_privacy( hdd_adapter_t *pAdapter,
/*parse WPA/RSN IE, and set the correspoing fileds in Roam profile*/
if (req->ie_len)
{
- status = wlan_hdd_cfg80211_set_ie(pAdapter, req->ie, req->ie_len);
+ status = wlan_hdd_cfg80211_set_ie(pAdapter, (u8 *)req->ie, req->ie_len);
if ( 0 > status)
{
hddLog(VOS_TRACE_LEVEL_ERROR, "%s: failed to parse the WPA/RSN IE",
@@ -6145,7 +6148,7 @@ static int wlan_hdd_try_disconnect( hdd_adapter_t *pAdapter )
(eConnectionState_IbssConnected == pHddStaCtx->conn_info.connState))
{
/* Issue disconnect to CSR */
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
if( eHAL_STATUS_SUCCESS ==
sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
@@ -6303,7 +6306,7 @@ int wlan_hdd_disconnect( hdd_adapter_t *pAdapter, u16 reason )
pHddCtx->isAmpAllowed = VOS_TRUE;
pHddStaCtx->conn_info.connState = eConnectionState_Disconnecting;
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
/*issue disconnect*/
@@ -6493,7 +6496,7 @@ static int wlan_hdd_cfg80211_set_privacy_ibss(
{
tDot11fIEWPA dot11WPAIE;
tHalHandle halHandle = WLAN_HDD_GET_HAL_CTX(pAdapter);
- u8 *ie;
+ const u8 *ie;
memset(&dot11WPAIE, 0, sizeof(dot11WPAIE));
ie = wlan_hdd_cfg80211_get_ie_ptr (params->ie,
@@ -6729,7 +6732,7 @@ static int wlan_hdd_cfg80211_leave_ibss( struct wiphy *wiphy,
}
/* Issue Disconnect request */
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter), pAdapter->sessionId,
eCSR_DISCONNECT_REASON_IBSS_LEAVE);
@@ -6983,7 +6986,7 @@ static int wlan_hdd_cfg80211_get_txpower(struct wiphy *wiphy,
}
static int wlan_hdd_cfg80211_get_station(struct wiphy *wiphy, struct net_device *dev,
- u8* mac, struct station_info *sinfo)
+ const u8* mac, struct station_info *sinfo)
{
hdd_adapter_t *pAdapter = WLAN_HDD_GET_PRIV_PTR( dev );
hdd_station_ctx_t *pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
@@ -7484,7 +7487,7 @@ static int wlan_hdd_set_txq_params(struct wiphy *wiphy,
#endif //LINUX_VERSION_CODE
static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
- struct net_device *dev, u8 *mac)
+ struct net_device *dev, struct station_del_parameters *params)
{
hdd_adapter_t *pAdapter = WLAN_HDD_GET_PRIV_PTR(dev);
hdd_context_t *pHddCtx;
@@ -7518,7 +7521,7 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
|| (WLAN_HDD_P2P_GO == pAdapter->device_mode)
)
{
- if( NULL == mac )
+ if( NULL == params->mac )
{
v_U16_t i;
for(i = 0; i < WLAN_MAX_STA_COUNT; i++)
@@ -7540,13 +7543,13 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
else
{
- vos_status = hdd_softap_GetStaId(pAdapter,(v_MACADDR_t *)mac, &staId);
+ vos_status = hdd_softap_GetStaId(pAdapter,(v_MACADDR_t *)params->mac, &staId);
if (!VOS_IS_STATUS_SUCCESS(vos_status))
{
hddLog(VOS_TRACE_LEVEL_INFO,
"%s: Skip this DEL STA as this is not used::"
MAC_ADDRESS_STR,
- __func__, MAC_ADDR_ARRAY(mac));
+ __func__, MAC_ADDR_ARRAY(params->mac));
return -ENOENT;
}
@@ -7555,7 +7558,7 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
hddLog(VOS_TRACE_LEVEL_INFO,
"%s: Skip this DEL STA as deauth is in progress::"
MAC_ADDRESS_STR,
- __func__, MAC_ADDR_ARRAY(mac));
+ __func__, MAC_ADDR_ARRAY(params->mac));
return -ENOENT;
}
@@ -7565,9 +7568,9 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
"%s: Delete STA with MAC::"
MAC_ADDRESS_STR,
__func__,
- MAC_ADDR_ARRAY(mac));
+ MAC_ADDR_ARRAY(params->mac));
- vos_status = hdd_softap_sta_deauth(pAdapter, mac);
+ vos_status = hdd_softap_sta_deauth(pAdapter, params->mac);
if (!VOS_IS_STATUS_SUCCESS(vos_status))
{
pAdapter->aStaInfo[staId].isDeauthInProgress = FALSE;
@@ -7575,7 +7578,7 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
"%s: STA removal failed for ::"
MAC_ADDRESS_STR,
__func__,
- MAC_ADDR_ARRAY(mac));
+ MAC_ADDR_ARRAY(params->mac));
return -ENOENT;
}
@@ -7588,9 +7591,11 @@ static int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy,
}
static int wlan_hdd_cfg80211_add_station(struct wiphy *wiphy,
- struct net_device *dev, u8 *mac, struct station_parameters *params)
+ struct net_device *dev, const u8 *mac, struct station_parameters *params)
{
+#ifdef FEATURE_WLAN_TDLS
hdd_adapter_t *pAdapter = WLAN_HDD_GET_PRIV_PTR(dev);
+#endif
int status = -EPERM;
#ifdef FEATURE_WLAN_TDLS
u32 mask, set;
@@ -8224,7 +8229,7 @@ static int wlan_hdd_cfg80211_sched_scan_start(struct wiphy *wiphy,
pPnoRequest->modePNO = SIR_PNO_MODE_IMMEDIATE;
- INIT_COMPLETION(pAdapter->pno_comp_var);
+ reinit_completion(&pAdapter->pno_comp_var);
pPnoRequest->statusCallback = hdd_cfg80211_sched_scan_start_status_cb;
pPnoRequest->callbackContext = pAdapter;
pAdapter->pno_req_status = 0;
@@ -8547,7 +8552,7 @@ static int wlan_hdd_cfg80211_tdls_mgmt(struct wiphy *wiphy, struct net_device *d
}
pAdapter->mgmtTxCompletionStatus = TDLS_CTX_MAGIC;
- INIT_COMPLETION(pAdapter->tdls_mgmt_comp);
+ reinit_completion(&pAdapter->tdls_mgmt_comp);
status = sme_SendTdlsMgmtFrame(WLAN_HDD_GET_HAL_CTX(pAdapter), pAdapter->sessionId,
peerMac, action_code, dialog_token, status_code, peer_capability, (tANI_U8 *)buf, len, responder);
@@ -8674,7 +8679,7 @@ static int wlan_hdd_cfg80211_tdls_oper(struct wiphy *wiphy, struct net_device *d
pAdapter, peer,&tdlsLinkEstablishParams)) {
return -EINVAL;
}
- INIT_COMPLETION(pAdapter->tdls_link_establish_req_comp);
+ reinit_completion(&pAdapter->tdls_link_establish_req_comp);
sme_SendTdlsLinkEstablishParams(WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId, peer, &tdlsLinkEstablishParams);
@@ -8758,7 +8763,7 @@ static int wlan_hdd_cfg80211_tdls_oper(struct wiphy *wiphy, struct net_device *d
{
long status;
- INIT_COMPLETION(pAdapter->tdls_del_station_comp);
+ reinit_completion(&pAdapter->tdls_del_station_comp);
sme_DeleteTdlsPeerSta( WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId, peer );
@@ -9170,6 +9175,7 @@ static int wlan_hdd_cfg80211_set_mac_acl(struct wiphy *wiphy,
return 0;
}
+#ifdef CONFIG_NL80211_TESTMODE
#ifdef WLAN_NL80211_TESTMODE
#ifdef FEATURE_WLAN_LPHB
void wlan_hdd_cfg80211_lphb_ind_handler
@@ -9314,7 +9320,7 @@ static int wlan_hdd_cfg80211_testmode(struct wiphy *wiphy, void *data, int len)
return err;
}
#endif /* CONFIG_NL80211_TESTMODE */
-
+#endif
static int wlan_hdd_cfg80211_dump_survey(struct wiphy *wiphy,
struct net_device *dev,
int idx, struct survey_info *survey)
@@ -9597,9 +9603,11 @@ static struct cfg80211_ops wlan_hdd_cfg80211_ops =
.resume = wlan_hdd_cfg80211_resume_wlan,
.suspend = wlan_hdd_cfg80211_suspend_wlan,
.set_mac_acl = wlan_hdd_cfg80211_set_mac_acl,
+#ifdef CONFIG_NL80211_TESTMODE
#ifdef WLAN_NL80211_TESTMODE
.testmode_cmd = wlan_hdd_cfg80211_testmode,
#endif
+#endif
.dump_survey = wlan_hdd_cfg80211_dump_survey,
};
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_dev_pwr.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_dev_pwr.c
index f8854487f660..8f68624716fd 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_dev_pwr.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_dev_pwr.c
@@ -143,7 +143,7 @@ static int wlan_suspend(hdd_context_t* pHddCtx)
*/
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO, "%s: Suspending Mc, Rx and Tx Threads",__func__);
- INIT_COMPLETION(pHddCtx->tx_sus_event_var);
+ reinit_completion(&pHddCtx->tx_sus_event_var);
/* Indicate Tx Thread to Suspend */
set_bit(TX_SUSPEND_EVENT_MASK, &vosSchedContext->txEventFlag);
@@ -165,7 +165,7 @@ static int wlan_suspend(hdd_context_t* pHddCtx)
/* Set the Tx Thread as Suspended */
pHddCtx->isTxThreadSuspended = TRUE;
- INIT_COMPLETION(pHddCtx->rx_sus_event_var);
+ reinit_completion(&pHddCtx->rx_sus_event_var);
/* Indicate Rx Thread to Suspend */
set_bit(RX_SUSPEND_EVENT_MASK, &vosSchedContext->rxEventFlag);
@@ -194,7 +194,7 @@ static int wlan_suspend(hdd_context_t* pHddCtx)
/* Set the Rx Thread as Suspended */
pHddCtx->isRxThreadSuspended = TRUE;
- INIT_COMPLETION(pHddCtx->mc_sus_event_var);
+ reinit_completion(&pHddCtx->mc_sus_event_var);
/* Indicate MC Thread to Suspend */
set_bit(MC_SUSPEND_EVENT_MASK, &vosSchedContext->mcEventFlag);
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_early_suspend.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_early_suspend.c
index 350eba01aa4a..ed83178ab671 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_early_suspend.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_early_suspend.c
@@ -60,7 +60,6 @@
#include <linux/wait.h>
#include <wlan_hdd_includes.h>
#include <wlan_qct_driver.h>
-#include <linux/wakelock.h>
#include "halTypes.h"
#include "sme_Api.h"
@@ -171,7 +170,7 @@ eHalStatus hdd_exit_standby(hdd_context_t *pHddCtx)
long ret;
hddLog(VOS_TRACE_LEVEL_INFO, "%s: WLAN being resumed from standby",__func__);
- INIT_COMPLETION(pHddCtx->full_pwr_comp_var);
+ reinit_completion(&pHddCtx->full_pwr_comp_var);
g_full_pwr_status = eHAL_STATUS_FAILURE;
status = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback, pHddCtx,
@@ -233,7 +232,7 @@ VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx)
//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);
+ reinit_completion(&pHddCtx->full_pwr_comp_var);
g_full_pwr_status = eHAL_STATUS_FAILURE;
halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
pHddCtx, eSME_FULL_PWR_NEEDED_BY_HDD);
@@ -277,7 +276,7 @@ VOS_STATUS hdd_enter_standby(hdd_context_t *pHddCtx)
//queues here. Also do not assert if the failure code is eHAL_STATUS_PMC_NOT_NOW as PMC
//will send this failure code in case of concurrent sessions. Power Save cannot be supported
//when there are concurrent sessions.
- INIT_COMPLETION(pHddCtx->standby_comp_var);
+ reinit_completion(&pHddCtx->standby_comp_var);
g_standby_status = eHAL_STATUS_FAILURE;
halStatus = sme_RequestStandby(pHddCtx->hHal, hdd_suspend_standby_cbk, pHddCtx);
@@ -340,7 +339,7 @@ VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
sme_DisablePowerSave(pHddCtx->hHal, ePMC_BEACON_MODE_POWER_SAVE);
//Ensure that device is in full power as we will touch H/W during vos_Stop
- INIT_COMPLETION(pHddCtx->full_pwr_comp_var);
+ reinit_completion(&pHddCtx->full_pwr_comp_var);
g_full_pwr_status = eHAL_STATUS_FAILURE;
halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_suspend_full_pwr_callback,
pHddCtx, eSME_FULL_PWR_NEEDED_BY_HDD);
@@ -369,7 +368,7 @@ VOS_STATUS hdd_enter_deep_sleep(hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter)
//Issue a disconnect. This is required to inform the supplicant that
//STA is getting disassociated and for GUI to be updated properly
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
halStatus = sme_RoamDisconnect(pHddCtx->hHal, pAdapter->sessionId, eCSR_DISCONNECT_REASON_UNSPECIFIED);
//Success implies disconnect command got queued up successfully
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_hostapd.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_hostapd.c
index 58786c154822..16659846e218 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_hostapd.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_hostapd.c
@@ -742,13 +742,6 @@ VOS_STATUS hdd_hostapd_SAPEventCB( tpSap_Event pSapEvent, v_PVOID_t usrDataForCa
if (!VOS_IS_STATUS_SUCCESS(vos_status))
hddLog(LOGE, FL("Failed to start AP inactivity timer"));
}
-#ifdef WLAN_OPEN_SOURCE
- if (wake_lock_active(&pHddCtx->sap_wake_lock))
- {
- wake_unlock(&pHddCtx->sap_wake_lock);
- }
- wake_lock_timeout(&pHddCtx->sap_wake_lock, msecs_to_jiffies(HDD_SAP_WAKE_LOCK_DURATION));
-#endif
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
{
struct station_info staInfo;
@@ -3676,7 +3669,7 @@ hdd_adapter_t* hdd_wlan_create_ap_dev( hdd_context_t *pHddCtx, tSirMacAddr macAd
hdd_adapter_t *pHostapdAdapter = NULL;
v_CONTEXT_t pVosContext= NULL;
- pWlanHostapdDev = alloc_netdev_mq(sizeof(hdd_adapter_t), iface_name, ether_setup, NUM_TX_QUEUES);
+ pWlanHostapdDev = alloc_netdev_mq(sizeof(hdd_adapter_t), iface_name, NET_NAME_UNKNOWN, ether_setup, NUM_TX_QUEUES);
if (pWlanHostapdDev != NULL)
{
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_main.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_main.c
index f163a19ecf03..ff940d97a517 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_main.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_main.c
@@ -115,7 +115,7 @@ int wlan_hdd_ftm_start(hdd_context_t *pAdapter);
#include "sapApi.h"
#include <linux/semaphore.h>
#include <linux/ctype.h>
-#include <mach/subsystem_restart.h>
+#include <soc/qcom/subsystem_restart.h>
#include <wlan_hdd_hostapd.h>
#include <wlan_hdd_softap_tx_rx.h>
#include "cfgApi.h"
@@ -203,9 +203,6 @@ static VOS_STATUS hdd_parse_ccx_beacon_req(tANI_U8 *pValue,
#define WLAN_HDD_DRIVER_MIRACAST_CFG_MIN_VAL 0
#define WLAN_HDD_DRIVER_MIRACAST_CFG_MAX_VAL 2
-#ifdef WLAN_OPEN_SOURCE
-static struct wake_lock wlan_wake_lock;
-#endif
/* set when SSR is needed after unload */
static e_hdd_ssr_required isSsrRequired = HDD_SSR_NOT_REQUIRED;
@@ -217,7 +214,7 @@ void wlan_hdd_restart_timer_cb(v_PVOID_t usrDataForCallback);
void hdd_set_wlan_suspend_mode(bool suspend);
v_U16_t hdd_select_queue(struct net_device *dev,
- struct sk_buff *skb);
+ struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback);
#ifdef WLAN_FEATURE_PACKET_FILTERING
static void hdd_set_multicast_list(struct net_device *dev);
@@ -304,7 +301,7 @@ static int hdd_netdev_notifier_call(struct notifier_block * nb,
if( pHddCtx->scan_info.mScanPending != FALSE )
{
long result;
- INIT_COMPLETION(pHddCtx->scan_info.abortscan_event_var);
+ reinit_completion(&pHddCtx->scan_info.abortscan_event_var);
hdd_abort_mac_scan(pAdapter->pHddCtx, eCSR_SCAN_ABORT_DEFAULT);
result = wait_for_completion_interruptible_timeout(
&pHddCtx->scan_info.abortscan_event_var,
@@ -552,7 +549,7 @@ void hdd_checkandupdate_phymode( hdd_context_t *pHddCtx)
VOS_STATUS vosStatus;
// need to issue a disconnect to CSR.
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
vosStatus = sme_RoamDisconnect(WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
eCSR_DISCONNECT_REASON_UNSPECIFIED );
@@ -623,7 +620,7 @@ void hdd_checkandupdate_phymode( hdd_adapter_t *pAdapter, char *country_code)
VOS_STATUS vosStatus;
// need to issue a disconnect to CSR.
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
vosStatus = sme_RoamDisconnect(WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
eCSR_DISCONNECT_REASON_UNSPECIFIED );
@@ -1575,7 +1572,7 @@ int hdd_return_batch_scan_rsp_to_user
{
if (TRUE == pAdapter->hdd_wait_for_get_batch_scan_rsp)
{
- INIT_COMPLETION(pAdapter->hdd_get_batch_scan_req_var);
+ reinit_completion(&pAdapter->hdd_get_batch_scan_req_var);
rc = wait_for_completion_timeout(
&pAdapter->hdd_get_batch_scan_req_var,
msecs_to_jiffies(HDD_GET_BATCH_SCAN_RSP_TIME_OUT));
@@ -1764,7 +1761,7 @@ int hdd_handle_batch_scan_ioctl
halStatus);
if (TRUE == pAdapter->hdd_wait_for_set_batch_scan_rsp)
{
- INIT_COMPLETION(pAdapter->hdd_set_batch_scan_req_var);
+ reinit_completion(&pAdapter->hdd_set_batch_scan_req_var);
rc = wait_for_completion_timeout(
&pAdapter->hdd_set_batch_scan_req_var,
msecs_to_jiffies(HDD_SET_BATCH_SCAN_REQ_TIME_OUT));
@@ -2021,7 +2018,7 @@ int hdd_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
country_code = command + 8;
- INIT_COMPLETION(pAdapter->change_country_code);
+ reinit_completion(&pAdapter->change_country_code);
hdd_checkandupdate_dfssetting(pAdapter, country_code);
#ifndef CONFIG_ENABLE_LINUX_REG
hdd_checkandupdate_phymode(pAdapter, country_code);
@@ -2657,6 +2654,9 @@ int hdd_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
tANI_U8 temp = 0;
u64 cookie;
hdd_station_ctx_t *pHddStaCtx = NULL;
+ struct cfg80211_mgmt_tx_params sp;
+
+
pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
/* if not associated, no need to send action frame */
@@ -2739,18 +2739,19 @@ int hdd_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
vos_mem_free(buf);
buf = NULL;
- wlan_hdd_mgmt_tx( NULL,
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
- &(pAdapter->wdev),
-#else
- dev,
-#endif
- &chan, 0,
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0))
- NL80211_CHAN_HT20, 1,
-#endif
- dwellTime, finalBuf, finalLen, 1,
- 1, &cookie );
+
+ memset(&sp, 0 , sizeof(sp));
+
+ sp.chan = &chan;
+ sp.offchan = 0;
+ sp.wait = dwellTime;
+ sp.buf = finalBuf;
+ sp.len = finalLen;
+ sp.no_cck = true;
+ sp.dont_wait_for_ack = true;
+
+ wlan_hdd_mgmt_tx(NULL, &(pAdapter->wdev),
+ &sp, &cookie );
vos_mem_free(finalBuf);
}
else if (strncmp(command, "GETROAMSCANCHANNELMINTIME", 25) == 0)
@@ -5266,8 +5267,10 @@ 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);
+ */
+
+ pWlanDev = alloc_netdev_mq(sizeof( hdd_adapter_t ), name, NET_NAME_UNKNOWN,
+ ether_setup, NUM_TX_QUEUES);
if(pWlanDev != NULL)
{
@@ -5427,7 +5430,7 @@ VOS_STATUS hdd_init_station_mode( hdd_adapter_t *pAdapter )
VOS_STATUS status = VOS_STATUS_E_FAILURE;
long rc = 0;
- INIT_COMPLETION(pAdapter->session_open_comp_var);
+ reinit_completion(&pAdapter->session_open_comp_var);
sme_SetCurrDeviceMode(pHddCtx->hHal, pAdapter->device_mode);
//Open a SME session for future operation
halStatus = sme_OpenSession( pHddCtx->hHal, hdd_smeRoamCallback, pAdapter,
@@ -5523,7 +5526,7 @@ error_init_txrx:
error_register_wext:
if (test_bit(SME_SESSION_OPENED, &pAdapter->event_flags))
{
- INIT_COMPLETION(pAdapter->session_close_comp_var);
+ reinit_completion(&pAdapter->session_close_comp_var);
if (eHAL_STATUS_SUCCESS == sme_CloseSession(pHddCtx->hHal,
pAdapter->sessionId,
hdd_smeCloseSessionCallback, pAdapter))
@@ -5552,7 +5555,7 @@ void hdd_cleanup_actionframe( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
if( NULL != cfgState->buf )
{
long rc;
- INIT_COMPLETION(pAdapter->tx_action_cnf_event);
+ reinit_completion(&pAdapter->tx_action_cnf_event);
rc = wait_for_completion_interruptible_timeout(
&pAdapter->tx_action_cnf_event,
msecs_to_jiffies(ACTION_FRAME_TX_TIMEOUT));
@@ -5876,7 +5879,7 @@ VOS_STATUS hdd_disable_bmps_imps(hdd_context_t *pHddCtx, tANI_U8 session_type)
(TRUE == disableImps))
{
/* Now, get the chip into Full Power now */
- INIT_COMPLETION(pHddCtx->full_pwr_comp_var);
+ reinit_completion(&pHddCtx->full_pwr_comp_var);
halStatus = sme_RequestFullPower(pHddCtx->hHal, hdd_full_pwr_cbk,
pHddCtx, eSME_FULL_PWR_NEEDED_BY_HDD);
@@ -6387,7 +6390,7 @@ VOS_STATUS hdd_stop_adapter( hdd_context_t *pHddCtx, hdd_adapter_t *pAdapter )
#endif
if (test_bit(SME_SESSION_OPENED, &pAdapter->event_flags))
{
- INIT_COMPLETION(pAdapter->session_close_comp_var);
+ reinit_completion(&pAdapter->session_close_comp_var);
if (eHAL_STATUS_SUCCESS ==
sme_CloseSession(pHddCtx->hHal, pAdapter->sessionId,
hdd_smeCloseSessionCallback, pAdapter))
@@ -6669,7 +6672,7 @@ VOS_STATUS hdd_start_all_adapters( hdd_context_t *pHddCtx )
case WLAN_HDD_P2P_GO:
hddLog(VOS_TRACE_LEVEL_ERROR, "%s [SSR] send stop ap to supplicant",
__func__);
- cfg80211_ap_stopped(pAdapter->dev, GFP_KERNEL);
+// cfg80211_ap_stopped(pAdapter->dev, GFP_KERNEL);
break;
case WLAN_HDD_MONITOR:
@@ -7148,9 +7151,9 @@ static void hdd_set_multicast_list(struct net_device *dev)
--------------------------------------------------------------------------*/
v_U16_t hdd_select_queue(struct net_device *dev,
- struct sk_buff *skb)
+ struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback)
{
- return hdd_wmm_select_queue(dev, skb);
+ return hdd_wmm_select_queue(dev, skb, NULL, NULL);
}
@@ -7504,14 +7507,6 @@ void hdd_wlan_exit(hdd_context_t *pHddCtx)
"%s: Failed to close VOSS Scheduler",__func__);
VOS_ASSERT( VOS_IS_STATUS_SUCCESS( vosStatus ) );
}
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- /* Destroy the wake lock */
- wake_lock_destroy(&pHddCtx->rx_wake_lock);
-#endif
- /* Destroy the wake lock */
- wake_lock_destroy(&pHddCtx->sap_wake_lock);
-#endif
#ifdef CONFIG_ENABLE_LINUX_REG
vosStatus = vos_nv_close();
@@ -7706,29 +7701,16 @@ VOS_STATUS hdd_post_voss_start_config(hdd_context_t* pHddCtx)
/* wake lock APIs for HDD */
void hdd_prevent_suspend(void)
{
-#ifdef WLAN_OPEN_SOURCE
- wake_lock(&wlan_wake_lock);
-#else
wcnss_prevent_suspend();
-#endif
}
void hdd_allow_suspend(void)
{
-#ifdef WLAN_OPEN_SOURCE
- wake_unlock(&wlan_wake_lock);
-#else
wcnss_allow_suspend();
-#endif
}
void hdd_prevent_suspend_timeout(v_U32_t timeout)
{
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_timeout(&wlan_wake_lock, msecs_to_jiffies(timeout));
-#else
- /* Do nothing as there is no API in wcnss for timeout*/
-#endif
}
/**---------------------------------------------------------------------------
@@ -8510,7 +8492,7 @@ int hdd_wlan_startup(struct device *dev )
if (country_code)
{
eHalStatus ret;
- INIT_COMPLETION(pAdapter->change_country_code);
+ reinit_completion(&pAdapter->change_country_code);
hdd_checkandupdate_dfssetting(pAdapter, country_code);
#ifndef CONFIG_ENABLE_LINUX_REG
hdd_checkandupdate_phymode(pAdapter, country_code);
@@ -8681,19 +8663,6 @@ int hdd_wlan_startup(struct device *dev )
pHddCtx->isLoadUnloadInProgress = WLAN_HDD_NO_LOAD_UNLOAD_IN_PROGRESS;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- /* Initialize the wake lcok */
- wake_lock_init(&pHddCtx->rx_wake_lock,
- WAKE_LOCK_SUSPEND,
- "qcom_rx_wakelock");
-#endif
- /* Initialize the wake lcok */
- wake_lock_init(&pHddCtx->sap_wake_lock,
- WAKE_LOCK_SUSPEND,
- "qcom_sap_wakelock");
-#endif
-
vos_event_init(&pHddCtx->scan_info.scan_finished_event);
pHddCtx->scan_info.scan_pending_option = WEXT_SCAN_PENDING_GIVEUP;
@@ -8838,10 +8807,6 @@ static int hdd_driver_init( void)
ENTER();
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_init(&wlan_wake_lock, WAKE_LOCK_SUSPEND, "wlan");
-#endif
-
hddTraceInit();
pr_info("%s: loading driver v%s\n", WLAN_MODULE_NAME,
QWLAN_VERSIONSTR TIMER_MANAGER_STR MEMORY_DEBUG_STR);
@@ -8852,9 +8817,6 @@ static int hdd_driver_init( void)
{
hddLog(VOS_TRACE_LEVEL_FATAL, "%s: Libra WLAN not Powered Up. "
"exiting", __func__);
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_destroy(&wlan_wake_lock);
-#endif
return -EIO;
}
@@ -8873,9 +8835,6 @@ static int hdd_driver_init( void)
}
if (max_retries >= 5) {
hddLog(VOS_TRACE_LEVEL_FATAL,"%s: WCNSS driver not ready", __func__);
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_destroy(&wlan_wake_lock);
-#endif
return -ENODEV;
}
#endif
@@ -8950,9 +8909,6 @@ static int hdd_driver_init( void)
vos_mem_exit();
#endif
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_destroy(&wlan_wake_lock);
-#endif
pr_err("%s: driver load failure\n", WLAN_MODULE_NAME);
}
else
@@ -9031,7 +8987,7 @@ static void hdd_driver_exit(void)
}
else
{
- INIT_COMPLETION(pHddCtx->ssr_comp_var);
+ reinit_completion(&pHddCtx->ssr_comp_var);
if (pHddCtx->isLogpInProgress)
{
@@ -9068,9 +9024,6 @@ static void hdd_driver_exit(void)
#endif
done:
-#ifdef WLAN_OPEN_SOURCE
- wake_lock_destroy(&wlan_wake_lock);
-#endif
pr_info("%s: driver unloaded\n", WLAN_MODULE_NAME);
}
@@ -9219,7 +9172,7 @@ void hdd_set_conparam ( v_UINT_t newParam )
--------------------------------------------------------------------------*/
-VOS_STATUS hdd_softap_sta_deauth(hdd_adapter_t *pAdapter, v_U8_t *pDestMacAddress)
+VOS_STATUS hdd_softap_sta_deauth(hdd_adapter_t *pAdapter, const v_U8_t *pDestMacAddress)
{
v_CONTEXT_t pVosContext = (WLAN_HDD_GET_CTX(pAdapter))->pvosContext;
VOS_STATUS vosStatus = VOS_STATUS_E_FAULT;
@@ -9253,7 +9206,7 @@ VOS_STATUS hdd_softap_sta_deauth(hdd_adapter_t *pAdapter, v_U8_t *pDestMacAddres
--------------------------------------------------------------------------*/
-void hdd_softap_sta_disassoc(hdd_adapter_t *pAdapter,v_U8_t *pDestMacAddress)
+void hdd_softap_sta_disassoc(hdd_adapter_t *pAdapter, const v_U8_t *pDestMacAddress)
{
v_CONTEXT_t pVosContext = (WLAN_HDD_GET_CTX(pAdapter))->pvosContext;
@@ -9522,8 +9475,7 @@ static VOS_STATUS wlan_hdd_framework_restart(hdd_context_t *pHddCtx)
* the driver.
*
*/
-
- cfg80211_send_unprot_deauth(pAdapterNode->pAdapter->dev, (u_int8_t*)mgmt, len );
+ cfg80211_rx_unprot_mlme_mgmt(pAdapterNode->pAdapter->dev, (u_int8_t*)mgmt, len );
}
status = hdd_get_next_adapter ( pHddCtx, pAdapterNode, &pNext );
pAdapterNode = pNext;
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_p2p.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_p2p.c
index c9a77d2bc58e..3a2c1a851a1d 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_p2p.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_p2p.c
@@ -309,7 +309,7 @@ void wlan_hdd_cancel_existing_remain_on_channel(hdd_adapter_t *pAdapter)
__func__, status);
}
- INIT_COMPLETION(pAdapter->cancel_rem_on_chan_var);
+ reinit_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
@@ -394,7 +394,7 @@ void wlan_hdd_remain_on_chan_timeout(void *data)
}
pRemainChanCtx->hdd_remain_on_chan_cancel_in_progress = TRUE;
- INIT_COMPLETION(pAdapter->cancel_rem_on_chan_var);
+ reinit_completion(&pAdapter->cancel_rem_on_chan_var);
hddLog( LOG1,"%s: Cancel Remain on Channel on timeout", __func__);
if ( ( WLAN_HDD_INFRA_STATION == pAdapter->device_mode ) ||
( WLAN_HDD_P2P_CLIENT == pAdapter->device_mode ) ||
@@ -521,7 +521,7 @@ static int wlan_hdd_request_remain_on_channel( struct wiphy *wiphy,
duration = 3 * duration;
hdd_prevent_suspend();
- INIT_COMPLETION(pAdapter->rem_on_chan_ready_event);
+ reinit_completion(&pAdapter->rem_on_chan_ready_event);
//call sme API to start remain on channel.
if ( ( WLAN_HDD_INFRA_STATION == pAdapter->device_mode ) ||
@@ -781,7 +781,7 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
return -EAGAIN;
}
}
- INIT_COMPLETION(pAdapter->cancel_rem_on_chan_var);
+ reinit_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.
@@ -819,56 +819,25 @@ int wlan_hdd_cfg80211_cancel_remain_on_channel( struct wiphy *wiphy,
return 0;
}
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct wireless_dev *wdev,
- struct ieee80211_channel *chan, bool offchan,
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0))
- enum nl80211_channel_type channel_type,
- bool channel_type_valid,
-#endif
- unsigned int wait,
- const u8 *buf, size_t len, bool no_cck,
- bool dont_wait_for_ack, u64 *cookie )
-#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan, bool offchan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid, unsigned int wait,
- const u8 *buf, size_t len, bool no_cck,
- bool dont_wait_for_ack, u64 *cookie )
-#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan, bool offchan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid, unsigned int wait,
- const u8 *buf, size_t len, u64 *cookie )
-#else
-int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
- struct ieee80211_channel *chan,
- enum nl80211_channel_type channel_type,
- bool channel_type_valid,
- const u8 *buf, size_t len, u64 *cookie )
-#endif //LINUX_VERSION_CODE
+int wlan_hdd_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
+ struct cfg80211_mgmt_tx_params *params,
+ u64 *cookie)
{
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
struct net_device *dev = wdev->netdev;
-#endif
hdd_adapter_t *pAdapter = WLAN_HDD_GET_PRIV_PTR( dev );
hdd_cfg80211_state_t *cfgState = WLAN_HDD_GET_CFG_STATE_PTR( pAdapter );
hdd_remain_on_chan_ctx_t *pRemainChanCtx = cfgState->remain_on_chan_ctx;
hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX( pAdapter );
- tANI_U8 type = WLAN_HDD_GET_TYPE_FRM_FC(buf[0]);
- tANI_U8 subType = WLAN_HDD_GET_SUBTYPE_FRM_FC(buf[0]);
+ tANI_U8 type = WLAN_HDD_GET_TYPE_FRM_FC(params->buf[0]);
+ tANI_U8 subType = WLAN_HDD_GET_SUBTYPE_FRM_FC(params->buf[0]);
tActionFrmType actionFrmType;
bool noack = 0;
int status;
#ifdef WLAN_FEATURE_11W
- tANI_U8 *pTxFrmBuf = (tANI_U8 *) buf; // For SA Query, we have to set protect bit
+ tANI_U8 *pTxFrmBuf = (tANI_U8 *) params->buf; // For SA Query, we have to set protect bit
#endif
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
hdd_adapter_t *goAdapter;
-#endif
MTRACE(vos_trace(VOS_MODULE_ID_HDD,
TRACE_CODE_HDD_ACTION, pAdapter->sessionId,
@@ -889,9 +858,9 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
#ifdef WLAN_FEATURE_P2P_DEBUG
if ((type == SIR_MAC_MGMT_FRAME) &&
(subType == SIR_MAC_MGMT_ACTION) &&
- (buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_PUBLIC_ACTION_FRAME))
+ (params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_PUBLIC_ACTION_FRAME))
{
- actionFrmType = buf[WLAN_HDD_PUBLIC_ACTION_FRAME_TYPE_OFFSET];
+ actionFrmType = params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_TYPE_OFFSET];
if(actionFrmType >= MAX_P2P_ACTION_FRAME_TYPE)
{
hddLog(VOS_TRACE_LEVEL_ERROR,"[P2P] unknown[%d] ---> OTA",
@@ -919,14 +888,11 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
}
#endif
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0))
- noack = dont_wait_for_ack;
-#endif
-
+ noack = params->dont_wait_for_ack;
//If the wait is coming as 0 with off channel set
//then set the wait to 200 ms
- if (offchan && !wait)
- wait = ACTION_FRAME_DEFAULT_WAIT;
+ if (params->offchan && !params->wait)
+ params->wait = ACTION_FRAME_DEFAULT_WAIT;
//Call sme API to send out a action frame.
// OR can we send it directly through data path??
@@ -955,7 +921,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
* supplicant.
*/
tANI_U8 dstMac[ETH_ALEN] = {0};
- memcpy(&dstMac, &buf[WLAN_HDD_80211_FRM_DA_OFFSET], ETH_ALEN);
+ memcpy(&dstMac, &params->buf[WLAN_HDD_80211_FRM_DA_OFFSET], ETH_ALEN);
hddLog(VOS_TRACE_LEVEL_INFO,
"%s: Deauth/Disassoc received for STA:"
MAC_ADDRESS_STR,
@@ -985,7 +951,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
if( subType == SIR_MAC_MGMT_ACTION)
{
hddLog( LOG1, "Action frame tx request : %s",
- hdd_getActionString(buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET]));
+ hdd_getActionString(params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET]));
}
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
@@ -993,7 +959,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
//If GO adapter exists and operating on same frequency
//then we will not request remain on channel
- if( goAdapter && ( ieee80211_frequency_to_channel(chan->center_freq)
+ if( goAdapter && ( ieee80211_frequency_to_channel(params->chan->center_freq)
== goAdapter->sessionCtx.ap.operatingChannel ) )
{
goto send_frame;
@@ -1001,7 +967,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
#endif
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
- if( offchan && wait)
+ if(params->offchan && params->wait)
{
int status;
rem_on_channel_request_type_t req_type = OFF_CHANNEL_ACTION_TX;
@@ -1009,7 +975,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
// on the same channel then send the frame directly
if( (cfgState->remain_on_chan_ctx != NULL) &&
- (cfgState->current_freq == chan->center_freq)
+ (cfgState->current_freq == params->chan->center_freq)
)
{
if ( VOS_TIMER_STATE_RUNNING == vos_timer_getCurrentState(
@@ -1019,7 +985,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
&cfgState->remain_on_chan_ctx->hdd_remain_on_chan_timer);
status = vos_timer_start(
&cfgState->remain_on_chan_ctx->hdd_remain_on_chan_timer,
- wait);
+ params->wait);
if ( status != VOS_STATUS_SUCCESS )
{
hddLog( LOGE, "Remain on Channel timer start failed");
@@ -1027,7 +993,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
hddLog(VOS_TRACE_LEVEL_INFO,
"action frame: extending the wait time %u",
- wait);
+ params->wait);
goto send_frame;
}
else
@@ -1051,21 +1017,18 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
}
}
hddLog(VOS_TRACE_LEVEL_INFO,
- "action frame: Request ROC for wait time %u", wait);
+ "action frame: Request ROC for wait time %u", params->wait);
- INIT_COMPLETION(pAdapter->offchannel_tx_event);
+ reinit_completion(&pAdapter->offchannel_tx_event);
status = wlan_hdd_request_remain_on_channel(wiphy, dev,
- chan,
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,8,0))
- channel_type,
-#endif
- wait, cookie,
+ params->chan,
+ params->wait, cookie,
req_type);
if(0 != status)
{
if( (-EBUSY == status) &&
- (cfgState->current_freq == chan->center_freq) )
+ (cfgState->current_freq == params->chan->center_freq) )
{
goto send_frame;
}
@@ -1081,7 +1044,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
goto err_rem_channel;
}
}
- else if ( offchan )
+ else if (params->offchan )
{
/* Check before sending action frame
whether we already remain on channel */
@@ -1095,13 +1058,13 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
if(!noack)
{
- cfgState->buf = vos_mem_malloc( len ); //buf;
+ cfgState->buf = vos_mem_malloc( params->len ); //buf;
if( cfgState->buf == NULL )
return -ENOMEM;
- cfgState->len = len;
+ cfgState->len = params->len;
- vos_mem_copy( cfgState->buf, buf, len);
+ vos_mem_copy( cfgState->buf, params->buf, params->len);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,38))
if( cfgState->remain_on_chan_ctx )
@@ -1128,9 +1091,9 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
if ((type == SIR_MAC_MGMT_FRAME) &&
(subType == SIR_MAC_MGMT_ACTION) &&
- (buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_PUBLIC_ACTION_FRAME))
+ (params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_PUBLIC_ACTION_FRAME))
{
- actionFrmType = buf[WLAN_HDD_PUBLIC_ACTION_FRAME_TYPE_OFFSET];
+ actionFrmType = params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_TYPE_OFFSET];
hddLog(LOG1, "Tx Action Frame %u.", actionFrmType);
if (actionFrmType == WLAN_HDD_PROV_DIS_REQ)
{
@@ -1146,7 +1109,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
#ifdef WLAN_FEATURE_11W
if ((type == SIR_MAC_MGMT_FRAME) &&
(subType == SIR_MAC_MGMT_ACTION) &&
- (buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_SA_QUERY_ACTION_FRAME))
+ (params->buf[WLAN_HDD_PUBLIC_ACTION_FRAME_OFFSET] == WLAN_HDD_SA_QUERY_ACTION_FRAME))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: Calling sme_sendAction. For Category %s", __func__, "SA Query");
@@ -1156,7 +1119,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
#endif
if (eHAL_STATUS_SUCCESS !=
sme_sendAction( WLAN_HDD_GET_HAL_CTX(pAdapter),
- sessionId, buf, len, wait, noack))
+ sessionId, params->buf, params->len, params->wait, noack))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: sme_sendAction returned fail", __func__);
@@ -1169,7 +1132,7 @@ int wlan_hdd_mgmt_tx( struct wiphy *wiphy, struct net_device *dev,
{
if( VOS_STATUS_SUCCESS !=
WLANSAP_SendAction( (WLAN_HDD_GET_CTX(pAdapter))->pvosContext,
- buf, len, 0 ) )
+ params->buf, params->len, 0 ) )
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: WLANSAP_SendAction returned fail", __func__);
@@ -1192,7 +1155,7 @@ err_rem_channel:
#else
pAdapter->dev,
#endif
- *cookie, buf, len, FALSE, GFP_KERNEL );
+ *cookie, params->buf, params->len, FALSE, GFP_KERNEL );
return 0;
}
@@ -1679,11 +1642,6 @@ void hdd_sendMgmtFrameOverMonitorIface( hdd_adapter_t *pMonAdapter,
int needed_headroom = 0;
int flag = HDD_RX_FLAG_IV_STRIPPED | HDD_RX_FLAG_DECRYPTED |
HDD_RX_FLAG_MMIC_STRIPPED;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- hdd_context_t* pHddCtx = (hdd_context_t*)(pMonAdapter->pHddCtx);
-#endif
-#endif
hddLog( LOG1, FL("Indicate Frame over Monitor Intf"));
if (NULL == pbFrames)
@@ -1730,11 +1688,6 @@ void hdd_sendMgmtFrameOverMonitorIface( hdd_adapter_t *pMonAdapter,
skb->dev = pMonAdapter->dev;
skb->protocol = eth_type_trans( skb, skb->dev );
skb->ip_summed = CHECKSUM_NONE;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- wake_lock_timeout(&pHddCtx->rx_wake_lock, msecs_to_jiffies(HDD_WAKE_LOCK_DURATION));
-#endif
-#endif
rxstat = netif_rx_ni(skb);
if( NET_RX_SUCCESS == rxstat )
{
@@ -2082,11 +2035,6 @@ static void hdd_wlan_tx_complete( hdd_adapter_t* pAdapter,
struct ieee80211_radiotap_header *rthdr;
unsigned char *pos;
struct sk_buff *skb = cfgState->skb;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- hdd_context_t *pHddCtx = (hdd_context_t*)(pAdapter->pHddCtx);
-#endif
-#endif
/* 2 Byte for TX flags and 1 Byte for Retry count */
u32 rtHdrLen = sizeof(*rthdr) + 3;
@@ -2146,11 +2094,6 @@ static void hdd_wlan_tx_complete( hdd_adapter_t* pAdapter,
skb->pkt_type = PACKET_OTHERHOST;
skb->protocol = htons(ETH_P_802_2);
memset( skb->cb, 0, sizeof( skb->cb ) );
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- wake_lock_timeout(&pHddCtx->rx_wake_lock, msecs_to_jiffies(HDD_WAKE_LOCK_DURATION));
-#endif
-#endif
if (in_interrupt())
netif_rx( skb );
else
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_softap_tx_rx.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
index c3e84809beea..878d4458a020 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
@@ -1470,11 +1470,6 @@ VOS_STATUS hdd_softap_rx_packet_cbk( v_VOID_t *vosContext,
skb->protocol = eth_type_trans(skb, skb->dev);
skb->ip_summed = CHECKSUM_NONE;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- wake_lock_timeout(&pHddCtx->rx_wake_lock, msecs_to_jiffies(HDD_WAKE_LOCK_DURATION));
-#endif
-#endif
rxstat = netif_rx_ni(skb);
if (NET_RX_SUCCESS == rxstat)
{
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_tx_rx.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_tx_rx.c
index 15fca106f808..7523b6c6d96d 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_tx_rx.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_tx_rx.c
@@ -469,7 +469,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);
+ hdd_hostapd_select_queue(pPgBkAdapter->dev, skb, NULL, NULL);
return hdd_softap_hard_start_xmit( skb, pPgBkAdapter->dev );
}
else
@@ -1604,11 +1604,6 @@ VOS_STATUS hdd_rx_packet_cbk( v_VOID_t *vosContext,
++pAdapter->hdd_stats.hddTxRxStats.rxPackets;
++pAdapter->stats.rx_packets;
pAdapter->stats.rx_bytes += skb->len;
-#ifdef WLAN_OPEN_SOURCE
-#ifdef WLAN_FEATURE_HOLD_RX_WAKELOCK
- wake_lock_timeout(&pHddCtx->rx_wake_lock, msecs_to_jiffies(HDD_WAKE_LOCK_DURATION));
-#endif
-#endif
rxstat = netif_rx_ni(skb);
if (NET_RX_SUCCESS == rxstat)
{
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wext.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wext.c
index ad80945f1dfb..a9baf2e5f018 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wext.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wext.c
@@ -1204,7 +1204,7 @@ VOS_STATUS wlan_hdd_check_ula_done(hdd_adapter_t *pAdapter)
if (VOS_FALSE == pHddStaCtx->conn_info.uIsAuthenticated)
{
- INIT_COMPLETION(pAdapter->ula_complete);
+ reinit_completion(&pAdapter->ula_complete);
/*To avoid race condition between the set key and the last EAPOL
packet, notify TL to finish upper layer authentication incase if the
@@ -1362,7 +1362,7 @@ static int iw_set_mode(struct net_device *dev,
{
VOS_STATUS vosStatus;
// need to issue a disconnect to CSR.
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
vosStatus = sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId,
eCSR_DISCONNECT_REASON_IBSS_LEAVE );
@@ -3421,7 +3421,7 @@ static int iw_set_encode(struct net_device *dev,struct iw_request_info *info,
if(eConnectionState_Associated == pHddStaCtx->conn_info.connState)
{
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
status = sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter), pAdapter->sessionId, eCSR_DISCONNECT_REASON_UNSPECIFIED );
if(eHAL_STATUS_SUCCESS == status)
{
@@ -3940,7 +3940,7 @@ static int iw_set_mlme(struct net_device *dev,
if( mlme->reason_code == HDD_REASON_MICHAEL_MIC_FAILURE )
reason = eCSR_DISCONNECT_REASON_MIC_ERROR;
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
status = sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter), pAdapter->sessionId,reason);
if(eHAL_STATUS_SUCCESS == status)
@@ -3995,7 +3995,7 @@ static int iw_setint_getnone(struct net_device *dev, struct iw_request_info *inf
#ifdef CONFIG_HAS_EARLYSUSPEND
v_U8_t nEnableSuspendOld;
#endif
- INIT_COMPLETION(pWextState->completion_var);
+ reinit_completion(&pWextState->completion_var);
if ((WLAN_HDD_GET_CTX(pAdapter))->isLogpInProgress)
{
@@ -7255,7 +7255,7 @@ int hdd_setBand(struct net_device *dev, u8 ui_band)
__func__, csrGetCurrentBand(hHal), band);
pHddStaCtx->conn_info.connState = eConnectionState_NotConnected;
- INIT_COMPLETION(pAdapter->disconnect_comp_var);
+ reinit_completion(&pAdapter->disconnect_comp_var);
status = sme_RoamDisconnect( WLAN_HDD_GET_HAL_CTX(pAdapter),
pAdapter->sessionId, eCSR_DISCONNECT_REASON_UNSPECIFIED);
diff --git a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wmm.c b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wmm.c
index 9b82144e7434..4c05b51f89b6 100644
--- a/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wmm.c
+++ b/drivers/net/wireless/prima/CORE/HDD/src/wlan_hdd_wmm.c
@@ -1857,7 +1857,9 @@ v_VOID_t hdd_wmm_classify_pkt ( hdd_adapter_t* pAdapter,
@return : Qdisc queue index
===========================================================================*/
-v_U16_t hdd_hostapd_select_queue(struct net_device * dev, struct sk_buff *skb)
+
+v_U16_t hdd_hostapd_select_queue(struct net_device * dev, struct sk_buff *skb,
+ void *accel_priv, select_queue_fallback_t fallback)
{
WLANTL_ACEnumType ac;
sme_QosWmmUpType up = SME_QOS_WMM_UP_BE;
@@ -1920,7 +1922,7 @@ done:
@return : Qdisc queue index
===========================================================================*/
-v_U16_t hdd_wmm_select_queue(struct net_device * dev, struct sk_buff *skb)
+v_U16_t hdd_wmm_select_queue(struct net_device * dev, struct sk_buff *skb, void *accel_priv, select_queue_fallback_t fallback)
{
WLANTL_ACEnumType ac;
sme_QosWmmUpType up = SME_QOS_WMM_UP_BE;
diff --git a/drivers/net/wireless/prima/CORE/MAC/src/include/dot11f.h b/drivers/net/wireless/prima/CORE/MAC/src/include/dot11f.h
index 87a5886e2e90..f3e42a347410 100644
--- a/drivers/net/wireless/prima/CORE/MAC/src/include/dot11f.h
+++ b/drivers/net/wireless/prima/CORE/MAC/src/include/dot11f.h
@@ -124,7 +124,7 @@ typedef struct sDot11fFfAID {
#define DOT11F_FF_AID_LEN ( 2 )
-void dot11fUnpackFfAID(tpAniSirGlobal, tANI_U8*, tDot11fFfAID*);
+void dot11fUnpackFfAID(tpAniSirGlobal, const tANI_U8*, tDot11fFfAID*);
void dot11fPackFfAID(tpAniSirGlobal, tDot11fFfAID*, tANI_U8*);
@@ -5759,7 +5759,7 @@ typedef struct sDot11fIEWPA {
#ifdef __cplusplus
extern "C" {
#endif /* C++ */
-tANI_U32 dot11fUnpackIeWPA(tpAniSirGlobal, tANI_U8*,tANI_U8, tDot11fIEWPA*);
+tANI_U32 dot11fUnpackIeWPA(tpAniSirGlobal, const tANI_U8*,tANI_U8, tDot11fIEWPA*);
tANI_U32 dot11fPackIeWPA(tpAniSirGlobal, tDot11fIEWPA*, tANI_U8*, tANI_U32, tANI_U32*);
diff --git a/drivers/net/wireless/prima/CORE/SAP/inc/sapApi.h b/drivers/net/wireless/prima/CORE/SAP/inc/sapApi.h
index 48ba1ada6042..1551b33c3dea 100644
--- a/drivers/net/wireless/prima/CORE/SAP/inc/sapApi.h
+++ b/drivers/net/wireless/prima/CORE/SAP/inc/sapApi.h
@@ -1003,7 +1003,7 @@ WLANSAP_StopBss
VOS_STATUS
WLANSAP_DisassocSta
(
- v_PVOID_t pvosGCtx, v_U8_t *pPeerStaMac
+ v_PVOID_t pvosGCtx, const v_U8_t *pPeerStaMac
);
/*==========================================================================
@@ -1031,7 +1031,7 @@ WLANSAP_DisassocSta
VOS_STATUS
WLANSAP_DeauthSta
(
- v_PVOID_t pvosGCtx, v_U8_t *pPeerStaMac
+ v_PVOID_t pvosGCtx, const v_U8_t *pPeerStaMac
);
/*==========================================================================
diff --git a/drivers/net/wireless/prima/CORE/SAP/src/sapModule.c b/drivers/net/wireless/prima/CORE/SAP/src/sapModule.c
index 9dbd1bcd099f..8ef315523f59 100644
--- a/drivers/net/wireless/prima/CORE/SAP/src/sapModule.c
+++ b/drivers/net/wireless/prima/CORE/SAP/src/sapModule.c
@@ -1242,7 +1242,7 @@ VOS_STATUS
WLANSAP_DisassocSta
(
v_PVOID_t pvosGCtx,
- v_U8_t *pPeerStaMac
+ const v_U8_t *pPeerStaMac
)
{
ptSapContext pSapCtx = VOS_GET_SAP_CB(pvosGCtx);
@@ -1290,7 +1290,7 @@ VOS_STATUS
WLANSAP_DeauthSta
(
v_PVOID_t pvosGCtx,
- v_U8_t *pPeerStaMac
+ const v_U8_t *pPeerStaMac
)
{
eHalStatus halStatus = eHAL_STATUS_FAILURE;
diff --git a/drivers/net/wireless/prima/CORE/SME/inc/sme_Api.h b/drivers/net/wireless/prima/CORE/SME/inc/sme_Api.h
index 4909a4c739e8..13ed59fe6717 100644
--- a/drivers/net/wireless/prima/CORE/SME/inc/sme_Api.h
+++ b/drivers/net/wireless/prima/CORE/SME/inc/sme_Api.h
@@ -612,7 +612,7 @@ eHalStatus sme_RoamGetAssociatedStas(tHalHandle hHal, tANI_U8 sessionId,
\param pPeerMacAddr - Caller allocated memory filled with peer MAC address (6 bytes)
\return eHalStatus SUCCESS Roam callback will be called to indicate actual results
-------------------------------------------------------------------------------*/
-eHalStatus sme_RoamDisconnectSta(tHalHandle hHal, tANI_U8 sessionId, tANI_U8 *pPeerMacAddr);
+eHalStatus sme_RoamDisconnectSta(tHalHandle hHal, tANI_U8 sessionId, const tANI_U8 *pPeerMacAddr);
/* ---------------------------------------------------------------------------
\fn sme_RoamDeauthSta
@@ -623,7 +623,7 @@ eHalStatus sme_RoamDisconnectSta(tHalHandle hHal, tANI_U8 sessionId, tANI_U8 *pP
\return eHalStatus SUCCESS Roam callback will be called to indicate actual results
-------------------------------------------------------------------------------*/
eHalStatus sme_RoamDeauthSta(tHalHandle hHal, tANI_U8 sessionId,
- tANI_U8 *pPeerMacAddr);
+ const tANI_U8 *pPeerMacAddr);
/* ---------------------------------------------------------------------------
\fn sme_RoamTKIPCounterMeasures
@@ -3136,7 +3136,7 @@ eHalStatus smeIssueFastRoamNeighborAPEvent (tHalHandle hHal,
void smeGetCommandQStatus( tHalHandle hHal );
-eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, tANI_U8 *pBSSId );
+eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, const tANI_U8 *pBSSId );
#ifdef FEATURE_WLAN_BATCH_SCAN
/* ---------------------------------------------------------------------------
\fn sme_SetBatchScanReq
@@ -3191,7 +3191,7 @@ sme_StopBatchScanInd
#endif
-eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, tANI_U8 *pBSSId );
+eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, const tANI_U8 *pBSSId );
#ifdef FEATURE_WLAN_CH_AVOID
/* ---------------------------------------------------------------------------
diff --git a/drivers/net/wireless/prima/CORE/SME/src/csr/csrApiRoam.c b/drivers/net/wireless/prima/CORE/SME/src/csr/csrApiRoam.c
index fa802fc9b942..55988bb2ce8f 100644
--- a/drivers/net/wireless/prima/CORE/SME/src/csr/csrApiRoam.c
+++ b/drivers/net/wireless/prima/CORE/SME/src/csr/csrApiRoam.c
@@ -79,6 +79,7 @@
#include "pmc.h"
#include "vos_nvitem.h"
#include "macTrace.h"
+#include "sme_Api.h"
#ifdef WLAN_FEATURE_NEIGHBOR_ROAMING
#include "csrNeighborRoam.h"
#endif /* WLAN_FEATURE_NEIGHBOR_ROAMING */
diff --git a/drivers/net/wireless/prima/CORE/SME/src/sme_common/sme_Api.c b/drivers/net/wireless/prima/CORE/SME/src/sme_common/sme_Api.c
index a41536f11d1a..7e42a7bc16e2 100644
--- a/drivers/net/wireless/prima/CORE/SME/src/sme_common/sme_Api.c
+++ b/drivers/net/wireless/prima/CORE/SME/src/sme_common/sme_Api.c
@@ -2975,7 +2975,7 @@ eHalStatus sme_RoamStopBss(tHalHandle hHal, tANI_U8 sessionId)
\return eHalStatus SUCCESS Roam callback will be called to indicate actual results
-------------------------------------------------------------------------------*/
eHalStatus sme_RoamDisconnectSta(tHalHandle hHal, tANI_U8 sessionId,
- tANI_U8 *pPeerMacAddr)
+ const tANI_U8 *pPeerMacAddr)
{
eHalStatus status = eHAL_STATUS_FAILURE;
tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
@@ -3013,7 +3013,7 @@ eHalStatus sme_RoamDisconnectSta(tHalHandle hHal, tANI_U8 sessionId,
\return eHalStatus SUCCESS Roam callback will be called to indicate actual results
-------------------------------------------------------------------------------*/
eHalStatus sme_RoamDeauthSta(tHalHandle hHal, tANI_U8 sessionId,
- tANI_U8 *pPeerMacAddr)
+ const tANI_U8 *pPeerMacAddr)
{
eHalStatus status = eHAL_STATUS_FAILURE;
tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
@@ -3292,7 +3292,7 @@ eHalStatus sme_RoamSetPMKIDCache( tHalHandle hHal, tANI_U8 sessionId, tPmkidCach
return (status);
}
-eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, tANI_U8 *pBSSId )
+eHalStatus sme_RoamDelPMKIDfromCache( tHalHandle hHal, tANI_U8 sessionId, const tANI_U8 *pBSSId )
{
eHalStatus status = eHAL_STATUS_FAILURE;
tpAniSirGlobal pMac = PMAC_STRUCT( hHal );
diff --git a/drivers/net/wireless/prima/CORE/SVC/src/logging/wlan_logging_sock_svc.c b/drivers/net/wireless/prima/CORE/SVC/src/logging/wlan_logging_sock_svc.c
index 4b78a0d00c14..9451f871b654 100644
--- a/drivers/net/wireless/prima/CORE/SVC/src/logging/wlan_logging_sock_svc.c
+++ b/drivers/net/wireless/prima/CORE/SVC/src/logging/wlan_logging_sock_svc.c
@@ -542,7 +542,7 @@ int wlan_logging_sock_deactivate_svc(void)
gapp_pid = INVALID_PID;
gwlan_logging.exit = true;
- INIT_COMPLETION(gwlan_logging.shutdown_comp);
+ reinit_completion(&gwlan_logging.shutdown_comp);
wake_up_interruptible(&gwlan_logging.wait_queue);
wait_for_completion_interruptible(&gwlan_logging.shutdown_comp);
diff --git a/drivers/net/wireless/prima/CORE/SYS/legacy/src/utils/src/dot11f.c b/drivers/net/wireless/prima/CORE/SYS/legacy/src/utils/src/dot11f.c
index c6d352cc9464..b854a296327f 100644
--- a/drivers/net/wireless/prima/CORE/SYS/legacy/src/utils/src/dot11f.c
+++ b/drivers/net/wireless/prima/CORE/SYS/legacy/src/utils/src/dot11f.c
@@ -5223,7 +5223,7 @@ tANI_U32 dot11fUnpackIeWMMParams(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U8 iel
#define SigIeWMMParams ( 0x0080 )
-tANI_U32 dot11fUnpackIeWPA(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U8 ielen, tDot11fIEWPA *pDst)
+tANI_U32 dot11fUnpackIeWPA(tpAniSirGlobal pCtx, const tANI_U8 *pBuf, tANI_U8 ielen, tDot11fIEWPA *pDst)
{
tANI_U32 status = DOT11F_PARSE_SUCCESS;
(void) pBuf; (void)ielen; /* Shutup the compiler */
diff --git a/drivers/net/wireless/prima/CORE/VOSS/inc/vos_memory.h b/drivers/net/wireless/prima/CORE/VOSS/inc/vos_memory.h
index 1776c56eb877..a6caad456d6d 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/inc/vos_memory.h
+++ b/drivers/net/wireless/prima/CORE/VOSS/inc/vos_memory.h
@@ -227,7 +227,7 @@ v_VOID_t vos_mem_move( v_VOID_t *pDst, const v_VOID_t *pSrc, v_SIZE_t numBytes )
locations are equal or not equal.
-------------------------------------------------------------------------------*/
-v_BOOL_t vos_mem_compare( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numBytes );
+v_BOOL_t vos_mem_compare( const v_VOID_t *pMemory1, const v_VOID_t *pMemory2, v_U32_t numBytes );
/** ---------------------------------------------------------------------------
@@ -252,7 +252,7 @@ v_BOOL_t vos_mem_compare( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numByt
> 0 -- *pMemory1 is bigger than *pMemory2
-------------------------------------------------------------------------------*/
-v_SINT_t vos_mem_compare2( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numBytes );
+v_SINT_t vos_mem_compare2(const v_VOID_t *pMemory1, const v_VOID_t *pMemory2, v_U32_t numBytes );
/*----------------------------------------------------------------------------
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_event.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_event.c
index 256142913d3c..9ede2558a6e8 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_event.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_event.c
@@ -256,7 +256,7 @@ VOS_STATUS vos_event_reset ( vos_event_t* event )
}
// (re)initialize event
- INIT_COMPLETION(event->complete);
+ reinit_completion(&event->complete);
return VOS_STATUS_SUCCESS;
}
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_memory.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_memory.c
index 608a8ed330bd..ed53d82e3343 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_memory.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_memory.c
@@ -434,7 +434,7 @@ v_VOID_t vos_mem_move( v_VOID_t *pDst, const v_VOID_t *pSrc, v_SIZE_t numBytes )
memmove(pDst, pSrc, numBytes);
}
-v_BOOL_t vos_mem_compare( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numBytes )
+v_BOOL_t vos_mem_compare( const v_VOID_t *pMemory1, const v_VOID_t *pMemory2, v_U32_t numBytes )
{
if (0 == numBytes)
{
@@ -454,7 +454,7 @@ v_BOOL_t vos_mem_compare( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numByt
}
-v_SINT_t vos_mem_compare2( v_VOID_t *pMemory1, v_VOID_t *pMemory2, v_U32_t numBytes )
+v_SINT_t vos_mem_compare2( const v_VOID_t *pMemory1, const v_VOID_t *pMemory2, v_U32_t numBytes )
{
return( (v_SINT_t) memcmp( pMemory1, pMemory2, numBytes ) );
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_nvitem.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_nvitem.c
index ad95ae3a2a84..71b8bec40d68 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_nvitem.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_nvitem.c
@@ -3274,7 +3274,7 @@ VOS_STATUS vos_nv_getRegDomainFromCountryCode( v_REGDOMAIN_t *pRegDomain,
if (COUNTRY_NV == source)
{
- INIT_COMPLETION(pHddCtx->linux_reg_req);
+ reinit_completion(&pHddCtx->linux_reg_req);
regulatory_hint(wiphy, country_code);
wait_result = wait_for_completion_interruptible_timeout(
&pHddCtx->linux_reg_req,
@@ -3314,11 +3314,9 @@ VOS_STATUS vos_nv_getRegDomainFromCountryCode( v_REGDOMAIN_t *pRegDomain,
}
else if (COUNTRY_IE == source || COUNTRY_USER == source)
{
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,0))
- regulatory_hint_user(country_code,NL80211_USER_REG_HINT_USER);
-#else
- regulatory_hint_user(country_code);
-#endif
+//!!!
+// regulatory_hint_user(country_code,NL80211_USER_REG_HINT_USER);
+
*pRegDomain = temp_reg_domain;
}
@@ -3428,7 +3426,7 @@ static int create_linux_regulatory_entry(struct wiphy *wiphy,
VOS_TRACE(VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_INFO,
"%s: Remove passive scan restriction for %u",
__func__, wiphy->bands[i]->channels[j].center_freq);
- wiphy->bands[i]->channels[j].flags &= ~IEEE80211_CHAN_PASSIVE_SCAN;
+ wiphy->bands[i]->channels[j].flags &= ~IEEE80211_CHAN_NO_IR;
}
}
@@ -3447,7 +3445,7 @@ static int create_linux_regulatory_entry(struct wiphy *wiphy,
}
/* nv cannot distinguish between DFS and passive channels */
else if (wiphy->bands[i]->channels[j].flags &
- (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_PASSIVE_SCAN))
+ (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IR))
{
pnvEFSTable->halnv.tables.regDomains[temp_reg_domain].channels[k].enabled =
NV_CHANNEL_DFS;
@@ -3705,18 +3703,18 @@ VOS_STATUS vos_init_wiphy_from_nv_bin(void)
/* default country is world roaming */
reg_domain = REGDOMAIN_WORLD;
- wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY;
+ wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG;
}
else if (REGDOMAIN_WORLD ==
pnvEFSTable->halnv.tables.defaultCountryTable.regDomain) {
reg_domain = pnvEFSTable->halnv.tables.defaultCountryTable.regDomain;
- wiphy->flags |= WIPHY_FLAG_CUSTOM_REGULATORY;
+ wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG;
}
else {
reg_domain = pnvEFSTable->halnv.tables.defaultCountryTable.regDomain;
- wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY;
+ wiphy->regulatory_flags |= REGULATORY_STRICT_REG;
}
m = 0;
@@ -3744,7 +3742,7 @@ VOS_STATUS vos_init_wiphy_from_nv_bin(void)
else if (pnvEFSTable->halnv.tables.regDomains[reg_domain].channels[k].enabled ==
NV_CHANNEL_DFS) {
- wiphy->bands[i]->channels[j].flags |= IEEE80211_CHAN_PASSIVE_SCAN;
+ wiphy->bands[i]->channels[j].flags |= IEEE80211_CHAN_NO_IR;
wiphy->bands[i]->channels[j].max_power =
(pnvEFSTable->halnv.tables.regDomains[reg_domain].channels[k].pwrLimit)*100;
@@ -3898,7 +3896,7 @@ VOS_STATUS vos_nv_getRegDomainFromCountryCode( v_REGDOMAIN_t *pRegDomain,
wiphy = pHddCtx->wiphy;
- INIT_COMPLETION(pHddCtx->driver_crda_req);
+ reinit_completion(&pHddCtx->driver_crda_req);
regulatory_hint(wiphy, countryCode);
status = wait_for_completion_interruptible_timeout(
&pHddCtx->driver_crda_req,
@@ -4160,12 +4158,12 @@ int wlan_hdd_crda_reg_notifier(struct wiphy *wiphy,
{
wiphy->bands[i]->channels[j].flags &= ~(IEEE80211_CHAN_DISABLED
|IEEE80211_CHAN_RADAR);
- wiphy->bands[i]->channels[j].flags |= IEEE80211_CHAN_PASSIVE_SCAN;
+ wiphy->bands[i]->channels[j].flags |= IEEE80211_CHAN_NO_IR;
}
else
{
wiphy->bands[i]->channels[j].flags &= ~(IEEE80211_CHAN_DISABLED
- |IEEE80211_CHAN_PASSIVE_SCAN
+ |IEEE80211_CHAN_NO_IR
|IEEE80211_CHAN_NO_IBSS
|IEEE80211_CHAN_RADAR);
}
@@ -4193,7 +4191,7 @@ int wlan_hdd_crda_reg_notifier(struct wiphy *wiphy,
wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].center_freq == 5240) &&
((ccode[0]== 'U'&& ccode[1]=='S') && pHddCtx->nEnableStrictRegulatoryForFCC))
{
- wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].flags |= IEEE80211_CHAN_PASSIVE_SCAN;
+ wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].flags |= IEEE80211_CHAN_NO_IR;
}
else if ((wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].center_freq == 5180 ||
wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].center_freq == 5200 ||
@@ -4201,7 +4199,7 @@ int wlan_hdd_crda_reg_notifier(struct wiphy *wiphy,
wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].center_freq == 5240) &&
((ccode[0]!= 'U'&& ccode[1]!='S') || !pHddCtx->nEnableStrictRegulatoryForFCC))
{
- wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].flags &= ~IEEE80211_CHAN_PASSIVE_SCAN;
+ wiphy->bands[IEEE80211_BAND_5GHZ]->channels[j].flags &= ~IEEE80211_CHAN_NO_IR;
}
}
}
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_power.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_power.c
index 81b78e343b10..41c6945755de 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_power.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_power.c
@@ -94,8 +94,8 @@ when who what, where, why
#include <vos_power.h>
#ifdef MSM_PLATFORM
-#include <mach/mpp.h>
-#include <mach/vreg.h>
+//#include <mach/mpp.h>
+//#include <mach/vreg.h>
#include <linux/err.h>
#include <linux/delay.h>
#endif //MSM_PLATFORM
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.c
index d79394a87a48..59aa2e1f5b04 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.c
@@ -624,7 +624,7 @@ VosMCThread
/* Mc Thread Suspended */
complete(&pHddCtx->mc_sus_event_var);
- INIT_COMPLETION(pSchedContext->ResumeMcEvent);
+ reinit_completion(&pSchedContext->ResumeMcEvent);
spin_unlock(&pSchedContext->McThreadLock);
/* Wait foe Resume Indication */
@@ -1012,7 +1012,7 @@ static int VosTXThread ( void * Arg )
/* Tx Thread Suspended */
complete(&pHddCtx->tx_sus_event_var);
- INIT_COMPLETION(pSchedContext->ResumeTxEvent);
+ reinit_completion(&pSchedContext->ResumeTxEvent);
spin_unlock(&pSchedContext->TxThreadLock);
/* Wait foe Resume Indication */
@@ -1189,7 +1189,7 @@ static int VosRXThread ( void * Arg )
/* Rx Thread Suspended */
complete(&pHddCtx->rx_sus_event_var);
- INIT_COMPLETION(pSchedContext->ResumeRxEvent);
+ reinit_completion(&pSchedContext->ResumeRxEvent);
spin_unlock(&pSchedContext->RxThreadLock);
/* Wait for Resume Indication */
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.h b/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.h
index dc6acf9ceddc..1c94acd70c43 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.h
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_sched.h
@@ -88,7 +88,6 @@
#include "i_vos_types.h"
#include "i_vos_packet.h"
#include <linux/wait.h>
-#include <linux/wakelock.h>
#include <vos_power.h>
#define TX_POST_EVENT_MASK 0x001
diff --git a/drivers/net/wireless/prima/CORE/VOSS/src/vos_utils.c b/drivers/net/wireless/prima/CORE/VOSS/src/vos_utils.c
index 27d5f874dd0b..9f38304937b1 100644
--- a/drivers/net/wireless/prima/CORE/VOSS/src/vos_utils.c
+++ b/drivers/net/wireless/prima/CORE/VOSS/src/vos_utils.c
@@ -311,7 +311,7 @@ int hmac_sha1(v_U8_t *key, v_U8_t ksize, char *plaintext, v_U8_t psize,
case -EBUSY:
ret = wait_for_completion_interruptible(&tresult.completion);
if (!ret && !tresult.err) {
- INIT_COMPLETION(tresult.completion);
+ reinit_completion(&tresult.completion);
break;
} else {
VOS_TRACE(VOS_MODULE_ID_VOSS,VOS_TRACE_LEVEL_ERROR, "wait_for_completion_interruptible failed");
@@ -466,7 +466,7 @@ int hmac_md5(v_U8_t *key, v_U8_t ksize, char *plaintext, v_U8_t psize,
case -EBUSY:
ret = wait_for_completion_interruptible(&tresult.completion);
if (!ret && !tresult.err) {
- INIT_COMPLETION(tresult.completion);
+ reinit_completion(&tresult.completion);
break;
} else {
VOS_TRACE(VOS_MODULE_ID_VOSS,VOS_TRACE_LEVEL_ERROR, "wait_for_completion_interruptible failed");
diff --git a/drivers/net/wireless/prima/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c b/drivers/net/wireless/prima/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
index 29539ecfde90..0c7c30d4995f 100644
--- a/drivers/net/wireless/prima/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
+++ b/drivers/net/wireless/prima/CORE/WDI/TRP/CTS/src/wlan_qct_wdi_cts.c
@@ -98,12 +98,12 @@
#include "wlan_qct_os_list.h"
#include "wlan_qct_wdi.h"
#include "wlan_qct_wdi_i.h"
-#ifdef CONFIG_ANDROID
-#include <mach/msm_smd.h>
+//#ifdef CONFIG_ANDROID
+//#include <mach/msm_smd.h>
#include <linux/delay.h>
-#else
-#include "msm_smd.h"
-#endif
+//#else
+#include <soc/qcom/smd.h>
+//#endif
/* Global context for CTS handle, it is required to keep this
* transport open during SSR shutdown */
diff --git a/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_api.c b/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_api.c
index 83b0841ff493..dafb9e084e45 100644
--- a/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_api.c
+++ b/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_api.c
@@ -65,7 +65,7 @@
#include "vos_api.h"
#include "dma-mapping.h"
-#include <mach/subsystem_restart.h>
+#include <soc/qcom/subsystem_restart.h>
#include <linux/wcnss_wlan.h>
typedef struct sPalStruct
diff --git a/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_device.c b/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_device.c
index 296bc6c4d9da..c4d6cd77b0e5 100644
--- a/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_device.c
+++ b/drivers/net/wireless/prima/CORE/WDI/WPAL/src/wlan_qct_pal_device.c
@@ -77,7 +77,7 @@
#include <linux/irqreturn.h>
#include <linux/interrupt.h>
#include <linux/io.h>
-#include <mach/msm_smsm.h>
+#include <soc/qcom/smsm.h>
#include "wlan_qct_pal_api.h"
#include "wlan_qct_pal_device.h"
#include "wlan_hdd_main.h"
diff --git a/drivers/net/wireless/prima/Kconfig b/drivers/net/wireless/prima/Kconfig
index d3f811bbc9c5..5ed8eb11b4d1 100644
--- a/drivers/net/wireless/prima/Kconfig
+++ b/drivers/net/wireless/prima/Kconfig
@@ -45,7 +45,7 @@ config QCOM_VOWIFI_11R
bool "Enable Fast Transition (11r) feature"
default n
-config CONFIG_ENABLE_LINUX_REG
+config ENABLE_LINUX_REG
bool "Enable linux regulatory feature"
default n