diff options
Diffstat (limited to 'drivers/staging/csr/sme_sys.c')
-rw-r--r-- | drivers/staging/csr/sme_sys.c | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/drivers/staging/csr/sme_sys.c b/drivers/staging/csr/sme_sys.c index 99de27e678d2..5b26c41c01f6 100644 --- a/drivers/staging/csr/sme_sys.c +++ b/drivers/staging/csr/sme_sys.c @@ -14,6 +14,7 @@ * --------------------------------------------------------------------------- */ +#include <linux/version.h> #include "csr_wifi_hip_unifiversion.h" #include "unifi_priv.h" #include "csr_wifi_hip_conversions.h" @@ -21,7 +22,6 @@ #include "csr_wifi_sme_sef.h" #endif - /* * This file implements the SME SYS API and contains the following functions: * CsrWifiRouterCtrlMediaStatusReqHandler() @@ -192,7 +192,7 @@ void CsrWifiRouterCtrlMediaStatusReqHandler(void* drvpriv, CsrWifiFsmEvent* msg) #endif unifi_trace(priv, UDBG1, "CsrWifiRouterCtrlMediaStatusReqHandler: AP/P2PGO setting netif_carrier_on\n"); - UF_NETIF_TX_WAKE_ALL_QUEUES(priv->netdev[req->interfaceTag]); + netif_tx_wake_all_queues(priv->netdev[req->interfaceTag]); break; default: @@ -226,7 +226,7 @@ void CsrWifiRouterCtrlMediaStatusReqHandler(void* drvpriv, CsrWifiFsmEvent* msg) unifi_trace(priv, UDBG1, "CsrWifiRouterMediaStatusReqHandler: UnifiConnected && netif_carrier_on\n"); netif_carrier_on(priv->netdev[req->interfaceTag]); - UF_NETIF_TX_WAKE_ALL_QUEUES(priv->netdev[req->interfaceTag]); + netif_tx_wake_all_queues(priv->netdev[req->interfaceTag]); uf_process_rx_pending_queue(priv, UF_UNCONTROLLED_PORT_Q, broadcast_address, 1, interfacePriv->InterfaceTag); uf_process_rx_pending_queue(priv, UF_CONTROLLED_PORT_Q, broadcast_address, 1, interfacePriv->InterfaceTag); } @@ -869,7 +869,6 @@ wifi_off(unifi_priv_t *priv) unifi_trace(priv, UDBG1, "wifi_off\n"); /* Destroy the Traffic Analysis Module */ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,23) cancel_work_sync(&priv->ta_ind_work.task); cancel_work_sync(&priv->ta_sample_ind_work.task); #ifdef CSR_SUPPORT_WEXT @@ -884,7 +883,6 @@ wifi_off(unifi_priv_t *priv) cancel_work_sync(&netpriv->send_m4_ready_task); } } -#endif flush_workqueue(priv->unifi_workqueue); /* fw_init parameter can prevent power off UniFi, for debugging */ @@ -955,7 +953,7 @@ void CsrWifiRouterCtrlWifiOffReqHandler(void* drvpriv, CsrWifiFsmEvent* msg) netInterface_priv_t *interfacePriv = priv->interfacePriv[i]; if (interfacePriv->netdev_registered == 1) { netif_carrier_off(priv->netdev[i]); - UF_NETIF_TX_STOP_ALL_QUEUES(priv->netdev[i]); + netif_tx_stop_all_queues(priv->netdev[i]); interfacePriv->connected = UnifiConnectedUnknown; } interfacePriv->interfaceMode = 0; @@ -2123,7 +2121,7 @@ static int peer_add_new_record(unifi_priv_t *priv,CsrWifiRouterCtrlPeerAddReq *r /* Allocate for the new station record , to avoid race condition would happen between ADD_PEER & * DEL_PEER the allocation made atomic memory rather than kernel memory */ - newRecord = (CsrWifiRouterCtrlStaInfo_t *) kmalloc(sizeof(CsrWifiRouterCtrlStaInfo_t), GFP_ATOMIC); + newRecord = kmalloc(sizeof(CsrWifiRouterCtrlStaInfo_t), GFP_ATOMIC); if (!newRecord) { unifi_error(priv, "failed to allocate the %d bytes of mem for station record\n", sizeof(CsrWifiRouterCtrlStaInfo_t)); @@ -2815,12 +2813,11 @@ u8 blockack_session_start(unifi_priv_t *priv, } /* create and populate the new BA session structure */ - ba_session_tx = kmalloc(sizeof(ba_session_tx_struct), GFP_KERNEL); + ba_session_tx = kzalloc(sizeof(ba_session_tx_struct), GFP_KERNEL); if (!ba_session_tx) { unifi_error(priv, "%s: kmalloc failed for ba_session_tx\n", __FUNCTION__); return FALSE; } - memset(ba_session_tx, 0, sizeof(ba_session_tx_struct)); ba_session_tx->interfacePriv = interfacePriv; ba_session_tx->tID = tID; @@ -2905,26 +2902,23 @@ u8 blockack_session_start(unifi_priv_t *priv, return FALSE; } - ba_session_rx = kmalloc(sizeof(ba_session_rx_struct), GFP_KERNEL); + ba_session_rx = kzalloc(sizeof(ba_session_rx_struct), GFP_KERNEL); if (!ba_session_rx) { unifi_error(priv, "%s: kmalloc failed for ba_session_rx\n", __FUNCTION__); return FALSE; } - memset(ba_session_rx, 0, sizeof(ba_session_rx_struct)); ba_session_rx->wind_size = wind_size; ba_session_rx->start_sn = ba_session_rx->expected_sn = start_sn; ba_session_rx->trigger_ba_after_ssn = FALSE; - ba_session_rx->buffer = kmalloc(ba_session_rx->wind_size*sizeof(frame_desc_struct), GFP_KERNEL); + ba_session_rx->buffer = kzalloc(ba_session_rx->wind_size*sizeof(frame_desc_struct), GFP_KERNEL); if (!ba_session_rx->buffer) { kfree(ba_session_rx); unifi_error(priv, "%s: kmalloc failed for buffer\n", __FUNCTION__); return FALSE; } - memset(ba_session_rx->buffer, 0, ba_session_rx->wind_size*sizeof(frame_desc_struct)); - INIT_WORK(&ba_session_rx->send_ba_err_task, uf_send_ba_err_wq); if (timeout) { ba_session_rx->timeout = timeout; |