rtl8188eu: Remove code for platforms other than Linux in core/

Code in #if 0 .. #endif blocks is alsop removed as well as multiple blank lines.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
Larry Finger 2018-10-20 14:03:14 -05:00
parent 9fad4d2d0d
commit 85ec7cf9ce
12 changed files with 10 additions and 2547 deletions

View file

@ -171,15 +171,6 @@ sint _rtw_init_evt_priv(struct evt_priv *pevtpriv)
pevtpriv->c2h_mem = pevtpriv->allocated_c2h_mem + 4\
- ((u32)(pevtpriv->allocated_c2h_mem) & 3);
#ifdef PLATFORM_OS_XP
pevtpriv->pc2h_mdl = IoAllocateMdl((u8 *)pevtpriv->c2h_mem, C2H_MEM_SZ , FALSE, FALSE, NULL);
if (pevtpriv->pc2h_mdl == NULL) {
res = _FAIL;
goto exit;
}
MmBuildMdlForNonPagedPool(pevtpriv->pc2h_mdl);
#endif
#endif /* end of CONFIG_SDIO_HCI */
_rtw_init_queue(&(pevtpriv->evt_queue));
@ -1384,15 +1375,6 @@ u8 rtw_joinbss_cmd(_adapter *padapter, struct wlan_network *pnetwork)
res = _FAIL;
goto exit;
}
#if 0
/* for IEs is pointer */
t_len = sizeof(ULONG) + sizeof(NDIS_802_11_MAC_ADDRESS) + 2 +
sizeof(NDIS_802_11_SSID) + sizeof(ULONG) +
sizeof(NDIS_802_11_RSSI) + sizeof(NDIS_802_11_NETWORK_TYPE) +
sizeof(NDIS_802_11_CONFIGURATION) +
sizeof(NDIS_802_11_NETWORK_INFRASTRUCTURE) +
sizeof(NDIS_802_11_RATES_EX) + sizeof(WLAN_PHY_INFO) + sizeof(ULONG) + MAX_IE_SZ;
#endif
/* for IEs is fix buf size */
t_len = sizeof(WLAN_BSSID_EX);
@ -1536,15 +1518,6 @@ u8 rtw_joinbss_cmd(_adapter *padapter, struct wlan_network *pnetwork)
}
#endif
#if 0
psecuritypriv->supplicant_ie[0] = (u8)psecnetwork->IELength;
if (psecnetwork->IELength < (256 - 1))
_rtw_memcpy(&psecuritypriv->supplicant_ie[1], &psecnetwork->IEs[0], psecnetwork->IELength);
else
_rtw_memcpy(&psecuritypriv->supplicant_ie[1], &psecnetwork->IEs[0], (256 - 1));
#endif
pcmd->cmdsz = sizeof(WLAN_BSSID_EX);
#ifdef CONFIG_RTL8712
@ -4729,11 +4702,6 @@ void rtw_create_ibss_post_hdl(_adapter *padapter, int status)
/* copy pdev_network information to pmlmepriv->cur_network */
_rtw_memcpy(&mlme_cur_network->network, pdev_network, (get_WLAN_BSSID_EX_sz(pdev_network)));
#if 0
/* reset DSConfig */
mlme_cur_network->network.Configuration.DSConfig = (u32)rtw_ch2freq(pdev_network->Configuration.DSConfig);
#endif
_clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
_exit_critical_bh(&(pmlmepriv->scanned_queue.lock), &irqL);
/* we will set _FW_LINKED when there is one more sat to join us (rtw_stassoc_event_callback) */

View file

@ -2364,13 +2364,7 @@ efuse_ShadowRead4Byte(
* 11/12/2008 MHC Create Version 0.
*
*---------------------------------------------------------------------------*/
#ifdef PLATFORM
static VOID
efuse_ShadowWrite1Byte(
IN PADAPTER pAdapter,
IN u16 Offset,
IN u8 Value);
#endif /* PLATFORM */
static VOID
efuse_ShadowWrite1Byte(
IN PADAPTER pAdapter,
@ -2683,9 +2677,7 @@ u8 mac_hidden_wl_func_to_hal_wl_func(u8 func)
return wl_func;
}
#ifdef PLATFORM_LINUX
#ifdef CONFIG_ADAPTOR_INFO_CACHING_FILE
/* #include <rtw_eeprom.h> */
int isAdaptorInfoFileValid(void)
{
@ -2723,14 +2715,6 @@ int retriveAdaptorInfoFile(char *path, u8 *efuse_data)
ret = _SUCCESS;
else
ret = _FAIL;
#if 0
if (isAdaptorInfoFileValid())
return 0;
else
return _FAIL;
#endif
} else {
RTW_INFO("%s NULL pointer\n", __FUNCTION__);
ret = _FAIL;
@ -2945,5 +2929,3 @@ exit:
return ret;
}
#endif /* CONFIG_EFUSE_CONFIG_FILE */
#endif /* PLATFORM_LINUX */

View file

@ -52,10 +52,6 @@ jackson@realtek.com.tw
#include <drv_types.h>
#include <hal_data.h>
#if defined(PLATFORM_LINUX) && defined (PLATFORM_WINDOWS)
#error "Shall be Linux or Windows, but not both!\n"
#endif
#ifdef CONFIG_SDIO_HCI
#define rtw_le16_to_cpu(val) val
#define rtw_le32_to_cpu(val) val
@ -633,11 +629,6 @@ u8 dbg_rtw_sd_f0_read8(_adapter *adapter, u32 addr, const char *caller, const in
{
u8 val = _rtw_sd_f0_read8(adapter, addr);
#if 0
if (match_read_sniff_ranges(addr, 1))
RTW_INFO("DBG_IO %s:%d rtw_sd_f0_read8(0x%04x) return 0x%02x\n", caller, line, addr, val);
#endif
return val;
}

View file

@ -19,153 +19,4 @@
******************************************************************************/
#define _RTW_IOCTL_QUERY_C_
#include <drv_types.h>
#ifdef PLATFORM_WINDOWS
/*
* Added for WPA2-PSK, by Annie, 2005-09-20.
* */
u8
query_802_11_capability(
_adapter *Adapter,
u8 *pucBuf,
u32 *pulOutLen
)
{
static NDIS_802_11_AUTHENTICATION_ENCRYPTION szAuthEnc[] = {
{Ndis802_11AuthModeOpen, Ndis802_11EncryptionDisabled},
{Ndis802_11AuthModeOpen, Ndis802_11Encryption1Enabled},
{Ndis802_11AuthModeShared, Ndis802_11EncryptionDisabled},
{Ndis802_11AuthModeShared, Ndis802_11Encryption1Enabled},
{Ndis802_11AuthModeWPA, Ndis802_11Encryption2Enabled},
{Ndis802_11AuthModeWPA, Ndis802_11Encryption3Enabled},
{Ndis802_11AuthModeWPAPSK, Ndis802_11Encryption2Enabled},
{Ndis802_11AuthModeWPAPSK, Ndis802_11Encryption3Enabled},
{Ndis802_11AuthModeWPANone, Ndis802_11Encryption2Enabled},
{Ndis802_11AuthModeWPANone, Ndis802_11Encryption3Enabled},
{Ndis802_11AuthModeWPA2, Ndis802_11Encryption2Enabled},
{Ndis802_11AuthModeWPA2, Ndis802_11Encryption3Enabled},
{Ndis802_11AuthModeWPA2PSK, Ndis802_11Encryption2Enabled},
{Ndis802_11AuthModeWPA2PSK, Ndis802_11Encryption3Enabled}
};
static ULONG ulNumOfPairSupported = sizeof(szAuthEnc) / sizeof(NDIS_802_11_AUTHENTICATION_ENCRYPTION);
NDIS_802_11_CAPABILITY *pCap = (NDIS_802_11_CAPABILITY *)pucBuf;
u8 *pucAuthEncryptionSupported = (u8 *) pCap->AuthenticationEncryptionSupported;
pCap->Length = sizeof(NDIS_802_11_CAPABILITY);
if (ulNumOfPairSupported > 1)
pCap->Length += (ulNumOfPairSupported - 1) * sizeof(NDIS_802_11_AUTHENTICATION_ENCRYPTION);
pCap->Version = 2;
pCap->NoOfPMKIDs = NUM_PMKID_CACHE;
pCap->NoOfAuthEncryptPairsSupported = ulNumOfPairSupported;
if (sizeof(szAuthEnc) <= 240) /* 240 = 256 - 4*4 */ { /* SecurityInfo.szCapability: only 256 bytes in size. */
_rtw_memcpy(pucAuthEncryptionSupported, (u8 *)szAuthEnc, sizeof(szAuthEnc));
*pulOutLen = pCap->Length;
return _TRUE;
} else {
*pulOutLen = 0;
return _FALSE;
}
}
u8 query_802_11_association_information(_adapter *padapter, PNDIS_802_11_ASSOCIATION_INFORMATION pAssocInfo)
{
struct wlan_network *tgt_network;
struct mlme_priv *pmlmepriv = &(padapter->mlmepriv);
struct security_priv *psecuritypriv = &(padapter->securitypriv);
WLAN_BSSID_EX *psecnetwork = (WLAN_BSSID_EX *)&pmlmepriv->cur_network.network;
u8 *pDest = (u8 *)pAssocInfo + sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
unsigned char i, *auth_ie, *supp_ie;
/* NdisZeroMemory(pAssocInfo, sizeof(NDIS_802_11_ASSOCIATION_INFORMATION)); */
_rtw_memset(pAssocInfo, 0, sizeof(NDIS_802_11_ASSOCIATION_INFORMATION));
/* pAssocInfo->Length = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION); */
/* ------------------------------------------------------ */
/* Association Request related information */
/* ------------------------------------------------------ */
/* Req_1. AvailableRequestFixedIEs */
if (psecnetwork != NULL) {
pAssocInfo->AvailableRequestFixedIEs |= NDIS_802_11_AI_REQFI_CAPABILITIES | NDIS_802_11_AI_REQFI_CURRENTAPADDRESS;
pAssocInfo->RequestFixedIEs.Capabilities = (unsigned short) *&psecnetwork->IEs[10];
_rtw_memcpy(pAssocInfo->RequestFixedIEs.CurrentAPAddress,
&psecnetwork->MacAddress, 6);
pAssocInfo->OffsetRequestIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION);
if (check_fwstate(pmlmepriv, _FW_UNDER_LINKING | _FW_LINKED) == _TRUE) {
if (psecuritypriv->ndisauthtype >= Ndis802_11AuthModeWPA2)
pDest[0] = 48; /* RSN Information Element */
else
pDest[0] = 221; /* WPA(SSN) Information Element */
supp_ie = &psecuritypriv->supplicant_ie[0];
i = 13; /* 0~11 is fixed information element */
while ((i < supp_ie[0]) && (i < 256)) {
if ((unsigned char)supp_ie[i] == pDest[0]) {
_rtw_memcpy((u8 *)(pDest),
&supp_ie[i],
supp_ie[1 + i] + 2);
break;
}
i = i + supp_ie[i + 1] + 2;
if (supp_ie[1 + i] == 0)
i = i + 1;
}
pAssocInfo->RequestIELength += (2 + supp_ie[1 + i]); /* (2 + psecnetwork->IEs[1+i]+4); */
}
}
/* ------------------------------------------------------ */
/* Association Response related information */
/* ------------------------------------------------------ */
if (check_fwstate(pmlmepriv, _FW_LINKED) == _TRUE) {
tgt_network = &(pmlmepriv->cur_network);
if (tgt_network != NULL) {
pAssocInfo->AvailableResponseFixedIEs =
NDIS_802_11_AI_RESFI_CAPABILITIES
| NDIS_802_11_AI_RESFI_ASSOCIATIONID
;
pAssocInfo->ResponseFixedIEs.Capabilities = (unsigned short) *&tgt_network->network.IEs[10];
pAssocInfo->ResponseFixedIEs.StatusCode = 0;
pAssocInfo->ResponseFixedIEs.AssociationId = (unsigned short) tgt_network->aid;
pDest = (u8 *)pAssocInfo + sizeof(NDIS_802_11_ASSOCIATION_INFORMATION) + pAssocInfo->RequestIELength;
auth_ie = &psecuritypriv->authenticator_ie[0];
i = auth_ie[0] - 12;
if (i > 0) {
_rtw_memcpy((u8 *)&pDest[0], &auth_ie[1], i);
pAssocInfo->ResponseIELength = i;
}
pAssocInfo->OffsetResponseIEs = sizeof(NDIS_802_11_ASSOCIATION_INFORMATION) + pAssocInfo->RequestIELength;
}
}
return _TRUE;
}
#endif

View file

@ -22,7 +22,6 @@
#include <drv_types.h>
#include <hal_data.h>
extern void indicate_wx_scan_complete_event(_adapter *padapter);
#define IS_MAC_ADDRESS_BROADCAST(addr) \
@ -50,7 +49,6 @@ u8 rtw_validate_ssid(NDIS_802_11_SSID *ssid)
u8 i;
u8 ret = _TRUE;
if (ssid->SsidLength > 32) {
ret = _FALSE;
goto exit;
@ -68,7 +66,6 @@ u8 rtw_validate_ssid(NDIS_802_11_SSID *ssid)
exit:
return ret;
}
@ -82,12 +79,10 @@ u8 rtw_do_join(_adapter *padapter)
_queue *queue = &(pmlmepriv->scanned_queue);
u8 ret = _SUCCESS;
_enter_critical_bh(&(pmlmepriv->scanned_queue.lock), &irqL);
phead = get_list_head(queue);
plist = get_next(phead);
pmlmepriv->cur_network.join_res = -2;
set_fwstate(pmlmepriv, _FW_UNDER_LINKING);
@ -150,23 +145,10 @@ u8 rtw_do_join(_adapter *padapter)
pmlmepriv->to_join = _FALSE;
} else {
/* can't associate ; reset under-linking */
_clr_fwstate_(pmlmepriv, _FW_UNDER_LINKING);
#if 0
if ((check_fwstate(pmlmepriv, WIFI_STATION_STATE) == _TRUE)) {
if (_rtw_memcmp(pmlmepriv->cur_network.network.Ssid.Ssid, pmlmepriv->assoc_ssid.Ssid, pmlmepriv->assoc_ssid.SsidLength)) {
/* for funk to do roaming */
/* funk will reconnect, but funk will not sitesurvey before reconnect */
if (pmlmepriv->sitesurveyctrl.traffic_busy == _FALSE)
rtw_sitesurvey_cmd(padapter, &pmlmepriv->assoc_ssid, 1, NULL, 0);
}
}
#endif
/* when set_ssid/set_bssid for rtw_do_join(), but there are no desired bss in scanning queue */
/* we try to issue sitesurvey firstly */
if (pmlmepriv->LinkDetectInfo.bBusyTraffic == _FALSE
@ -192,84 +174,6 @@ exit:
return ret;
}
#ifdef PLATFORM_WINDOWS
u8 rtw_pnp_set_power_wakeup(_adapter *padapter)
{
u8 res = _SUCCESS;
res = rtw_setstandby_cmd(padapter, 0);
return res;
}
u8 rtw_pnp_set_power_sleep(_adapter *padapter)
{
u8 res = _SUCCESS;
/* DbgPrint("+rtw_pnp_set_power_sleep\n"); */
res = rtw_setstandby_cmd(padapter, 1);
return res;
}
u8 rtw_set_802_11_reload_defaults(_adapter *padapter, NDIS_802_11_RELOAD_DEFAULTS reloadDefaults)
{
/* SecClearAllKeys(Adapter); */
/* 8711 CAM was not for En/Decrypt only */
/* so, we can't clear all keys. */
/* should we disable WPAcfg (ox0088) bit 1-2, instead of clear all CAM */
/* TO DO... */
return _TRUE;
}
u8 set_802_11_test(_adapter *padapter, NDIS_802_11_TEST *test)
{
u8 ret = _TRUE;
switch (test->Type) {
case 1:
NdisMIndicateStatus(padapter->hndis_adapter, NDIS_STATUS_MEDIA_SPECIFIC_INDICATION, (PVOID)&test->AuthenticationEvent, test->Length - 8);
NdisMIndicateStatusComplete(padapter->hndis_adapter);
break;
case 2:
NdisMIndicateStatus(padapter->hndis_adapter, NDIS_STATUS_MEDIA_SPECIFIC_INDICATION, (PVOID)&test->RssiTrigger, sizeof(NDIS_802_11_RSSI));
NdisMIndicateStatusComplete(padapter->hndis_adapter);
break;
default:
ret = _FALSE;
break;
}
return ret;
}
u8 rtw_set_802_11_pmkid(_adapter *padapter, NDIS_802_11_PMKID *pmkid)
{
u8 ret = _SUCCESS;
return ret;
}
#endif
u8 rtw_set_802_11_bssid(_adapter *padapter, u8 *bssid)
{
_irqL irqL;
@ -277,7 +181,6 @@ u8 rtw_set_802_11_bssid(_adapter *padapter, u8 *bssid)
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
RTW_PRINT("set bssid:%pM\n", bssid);
if ((bssid[0] == 0x00 && bssid[1] == 0x00 && bssid[2] == 0x00 && bssid[3] == 0x00 && bssid[4] == 0x00 && bssid[5] == 0x00) ||
@ -288,7 +191,6 @@ u8 rtw_set_802_11_bssid(_adapter *padapter, u8 *bssid)
_enter_critical_bh(&pmlmepriv->lock, &irqL);
RTW_INFO("Set BSSID under fw_state=0x%08x\n", get_fwstate(pmlmepriv));
if (check_fwstate(pmlmepriv, _FW_UNDER_SURVEY) == _TRUE)
goto handle_tkip_countermeasure;
@ -336,7 +238,6 @@ release_mlme_lock:
exit:
return status;
}
@ -349,7 +250,6 @@ u8 rtw_set_802_11_ssid(_adapter *padapter, NDIS_802_11_SSID *ssid)
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct wlan_network *pnetwork = &pmlmepriv->cur_network;
RTW_PRINT("set ssid [%s] fw_state=0x%08x\n",
ssid->Ssid, get_fwstate(pmlmepriv));
@ -433,7 +333,6 @@ release_mlme_lock:
exit:
return status;
}
@ -447,7 +346,6 @@ u8 rtw_set_802_11_connect(_adapter *padapter, u8 *bssid, NDIS_802_11_SSID *ssid)
bool ssid_valid = _TRUE;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
if (!ssid || rtw_validate_ssid(ssid) == _FALSE)
ssid_valid = _FALSE;
@ -503,7 +401,6 @@ release_mlme_lock:
exit:
return status;
}
@ -516,8 +413,6 @@ u8 rtw_set_802_11_infrastructure_mode(_adapter *padapter,
NDIS_802_11_NETWORK_INFRASTRUCTURE *pold_state = &(cur_network->network.InfrastructureMode);
u8 ap2sta_mode = _FALSE;
if (*pold_state != networktype) {
/* RTW_INFO("change mode, old_mode=%d, new_mode=%d, fw_state=0x%x\n", *pold_state, networktype, get_fwstate(pmlmepriv)); */
@ -580,21 +475,17 @@ u8 rtw_set_802_11_infrastructure_mode(_adapter *padapter,
/* SecClearAllKeys(adapter); */
_exit_critical_bh(&pmlmepriv->lock, &irqL);
}
return _TRUE;
}
u8 rtw_set_802_11_disassociate(_adapter *padapter)
{
_irqL irqL;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
_enter_critical_bh(&pmlmepriv->lock, &irqL);
if (check_fwstate(pmlmepriv, _FW_LINKED) == _TRUE) {
@ -609,7 +500,6 @@ u8 rtw_set_802_11_disassociate(_adapter *padapter)
_exit_critical_bh(&pmlmepriv->lock, &irqL);
return _TRUE;
}
@ -634,8 +524,6 @@ u8 rtw_set_802_11_bssid_list_scan(_adapter *padapter, NDIS_802_11_SSID *pssid, i
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
u8 res = _TRUE;
if (padapter == NULL) {
res = _FALSE;
goto exit;
@ -650,7 +538,6 @@ u8 rtw_set_802_11_bssid_list_scan(_adapter *padapter, NDIS_802_11_SSID *pssid, i
/* Scan or linking is in progress, do nothing. */
res = _TRUE;
} else {
if (rtw_is_scan_deny(padapter)) {
RTW_INFO(FUNC_ADPT_FMT": scan deny\n", FUNC_ADPT_ARG(padapter));
@ -666,7 +553,6 @@ u8 rtw_set_802_11_bssid_list_scan(_adapter *padapter, NDIS_802_11_SSID *pssid, i
}
exit:
return res;
}
#endif
@ -676,11 +562,8 @@ u8 rtw_set_802_11_authentication_mode(_adapter *padapter, NDIS_802_11_AUTHENTICA
int res;
u8 ret;
psecuritypriv->ndisauthtype = authmode;
if (psecuritypriv->ndisauthtype > 3)
psecuritypriv->dot11AuthAlgrthm = dot11AuthAlgrthm_8021X;
@ -696,7 +579,6 @@ u8 rtw_set_802_11_authentication_mode(_adapter *padapter, NDIS_802_11_AUTHENTICA
else
ret = _FALSE;
return ret;
}
@ -709,7 +591,6 @@ u8 rtw_set_802_11_add_wep(_adapter *padapter, NDIS_802_11_WEP *wep)
struct security_priv *psecuritypriv = &(padapter->securitypriv);
u8 ret = _SUCCESS;
bdefaultkey = (wep->KeyIndex & 0x40000000) > 0 ? _FALSE : _TRUE; /* for ??? */
btransmitkey = (wep->KeyIndex & 0x80000000) > 0 ? _TRUE : _FALSE; /* for ??? */
keyid = wep->KeyIndex & 0x3fffffff;
@ -731,21 +612,18 @@ u8 rtw_set_802_11_add_wep(_adapter *padapter, NDIS_802_11_WEP *wep)
break;
}
_rtw_memcpy(&(psecuritypriv->dot11DefKey[keyid].skey[0]), &(wep->KeyMaterial), wep->KeyLength);
psecuritypriv->dot11DefKeylen[keyid] = wep->KeyLength;
psecuritypriv->dot11PrivacyKeyIndex = keyid;
res = rtw_set_key(padapter, psecuritypriv, keyid, 1, _TRUE);
if (res == _FAIL)
ret = _FALSE;
exit:
return ret;
}
@ -755,7 +633,6 @@ u8 rtw_set_802_11_remove_wep(_adapter *padapter, u32 keyindex)
u8 ret = _SUCCESS;
if (keyindex >= 0x80000000 || padapter == NULL) {
ret = _FALSE;
@ -782,7 +659,6 @@ u8 rtw_set_802_11_remove_wep(_adapter *padapter, u32 keyindex)
exit:
return ret;
}
@ -797,7 +673,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
u8 bgrouptkey = _FALSE;/* can be remove later */
u8 ret = _SUCCESS;
if (((key->KeyIndex & 0x80000000) == 0) && ((key->KeyIndex & 0x40000000) > 0)) {
/* It is invalid to clear bit 31 and set bit 30. If the miniport driver encounters this combination, */
@ -809,7 +684,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
if (key->KeyIndex & 0x40000000) {
/* Pairwise key */
pbssid = get_bssid(&padapter->mlmepriv);
stainfo = rtw_get_stainfo(&padapter->stapriv, pbssid);
@ -819,9 +693,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
encryptionalgo = padapter->securitypriv.dot11PrivacyAlgrthm;
}
if (key->KeyIndex & 0x000000FF) {
/* The key index is specified in the lower 8 bits by values of zero to 255. */
/* The key index should be set to zero for a Pairwise key, and the driver should fail with */
@ -869,7 +740,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
} else {
/* Group key - KeyIndex(BIT30==0) */
/* when add wep key through add key and didn't assigned encryption type before */
if ((padapter->securitypriv.ndisauthtype <= 3) && (padapter->securitypriv.dot118021XGrpPrivacy == 0)) {
@ -887,7 +757,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
encryptionalgo = padapter->securitypriv.dot11PrivacyAlgrthm;
} else {
encryptionalgo = padapter->securitypriv.dot118021XGrpPrivacy;
@ -925,7 +794,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
bgroup = _TRUE;
}
/* If WEP encryption algorithm, just call rtw_set_802_11_add_wep(). */
@ -935,13 +803,11 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
u32 len = FIELD_OFFSET(NDIS_802_11_KEY, KeyMaterial) + key->KeyLength;
NDIS_802_11_WEP *wep = &padapter->securitypriv.ndiswep;
wep->Length = len;
keyindex = key->KeyIndex & 0x7fffffff;
wep->KeyIndex = keyindex ;
wep->KeyLength = key->KeyLength;
_rtw_memcpy(wep->KeyMaterial, key->KeyMaterial, key->KeyLength);
_rtw_memcpy(&(padapter->securitypriv.dot11DefKey[keyindex].skey[0]), key->KeyMaterial, key->KeyLength);
@ -987,12 +853,10 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
_rtw_memcpy(&padapter->securitypriv.dot118021XGrptxmickey[(u8)((key->KeyIndex) & 0x03)], key->KeyMaterial + 16, 8);
_rtw_memcpy(&padapter->securitypriv.dot118021XGrprxmickey[(u8)((key->KeyIndex) & 0x03)], key->KeyMaterial + 24, 8);
} else {
_rtw_memcpy(&padapter->securitypriv.dot118021XGrptxmickey[(u8)((key->KeyIndex) & 0x03)], key->KeyMaterial + 24, 8);
_rtw_memcpy(&padapter->securitypriv.dot118021XGrprxmickey[(u8)((key->KeyIndex) & 0x03)], key->KeyMaterial + 16, 8);
}
/* set group key by index */
@ -1004,7 +868,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
padapter->securitypriv.bcheck_grpkey = _FALSE;
res = rtw_set_key(padapter, &padapter->securitypriv, key->KeyIndex, 1, _TRUE);
if (res == _FAIL)
@ -1028,7 +891,6 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
/* _set_timer(&padapter->securitypriv.tkip_timer, 50); */
/* if TKIP, save the Receive/Transmit MIC key in KeyMaterial[128-255] */
if ((key->KeyIndex & 0x10000000)) {
_rtw_memcpy(&stainfo->dot11tkiptxmickey, key->KeyMaterial + 16, 8);
@ -1044,29 +906,17 @@ u8 rtw_set_802_11_add_key(_adapter *padapter, NDIS_802_11_KEY *key)
}
/* Set key to CAM through H2C command */
#if 0
if (bgrouptkey) { /* never go to here */
res = rtw_setstakey_cmd(padapter, stainfo, GROUP_KEY, _TRUE);
} else {
res = rtw_setstakey_cmd(padapter, stainfo, UNICAST_KEY, _TRUE);
}
#else
res = rtw_setstakey_cmd(padapter, stainfo, UNICAST_KEY, _TRUE);
#endif
if (res == _FALSE)
ret = _FAIL;
}
}
exit:
return ret;
}
@ -1080,7 +930,6 @@ u8 rtw_set_802_11_remove_key(_adapter *padapter, NDIS_802_11_REMOVE_KEY *key)
u8 keyIndex = (u8)key->KeyIndex & 0x03;
u8 ret = _SUCCESS;
if ((key->KeyIndex & 0xbffffffc) > 0) {
ret = _FAIL;
goto exit;
@ -1116,7 +965,6 @@ u8 rtw_set_802_11_remove_key(_adapter *padapter, NDIS_802_11_REMOVE_KEY *key)
exit:
return _TRUE;
}

View file

@ -19,9 +19,6 @@
******************************************************************************/
#define _RTW_MP_C_
#include <drv_types.h>
#ifdef PLATFORM_FREEBSD
#include <sys/unistd.h> /* for RFHIGHPID */
#endif
#include "../hal/phydm/phydm_precomp.h"
#if defined(CONFIG_RTL8723B) || defined(CONFIG_RTL8821A)
@ -166,65 +163,6 @@ static void _init_mp_priv_(struct mp_priv *pmp_priv)
}
#ifdef PLATFORM_WINDOWS
#if 0
void mp_wi_callback(
IN NDIS_WORK_ITEM *pwk_item,
IN PVOID cntx
)
{
_adapter *padapter = (_adapter *)cntx;
struct mp_priv *pmppriv = &padapter->mppriv;
struct mp_wi_cntx *pmp_wi_cntx = &pmppriv->wi_cntx;
/* Execute specified action. */
if (pmp_wi_cntx->curractfunc != NULL) {
LARGE_INTEGER cur_time;
ULONGLONG start_time, end_time;
NdisGetCurrentSystemTime(&cur_time); /* driver version */
start_time = cur_time.QuadPart / 10; /* The return value is in microsecond */
pmp_wi_cntx->curractfunc(padapter);
NdisGetCurrentSystemTime(&cur_time); /* driver version */
end_time = cur_time.QuadPart / 10; /* The return value is in microsecond */
}
NdisAcquireSpinLock(&(pmp_wi_cntx->mp_wi_lock));
pmp_wi_cntx->bmp_wi_progress = _FALSE;
NdisReleaseSpinLock(&(pmp_wi_cntx->mp_wi_lock));
if (pmp_wi_cntx->bmpdrv_unload)
NdisSetEvent(&(pmp_wi_cntx->mp_wi_evt));
}
#endif
static int init_mp_priv_by_os(struct mp_priv *pmp_priv)
{
struct mp_wi_cntx *pmp_wi_cntx;
if (pmp_priv == NULL)
return _FAIL;
pmp_priv->rx_testcnt = 0;
pmp_priv->rx_testcnt1 = 0;
pmp_priv->rx_testcnt2 = 0;
pmp_priv->tx_testcnt = 0;
pmp_priv->tx_testcnt1 = 0;
pmp_wi_cntx = &pmp_priv->wi_cntx
pmp_wi_cntx->bmpdrv_unload = _FALSE;
pmp_wi_cntx->bmp_wi_progress = _FALSE;
pmp_wi_cntx->curractfunc = NULL;
return _SUCCESS;
}
#endif
#ifdef PLATFORM_LINUX
static int init_mp_priv_by_os(struct mp_priv *pmp_priv)
{
int i, res;
@ -265,7 +203,6 @@ _exit_init_mp_priv:
return res;
}
#endif
static void mp_init_xmit_attrib(struct mp_tx *pmptx, PADAPTER padapter)
{
@ -279,21 +216,13 @@ static void mp_init_xmit_attrib(struct mp_tx *pmptx, PADAPTER padapter)
_rtw_memset(pmptx->desc, 0, TXDESC_SIZE);
pattrib->ether_type = 0x8712;
#if 0
_rtw_memcpy(pattrib->src, adapter_mac_addr(padapter), ETH_ALEN);
_rtw_memcpy(pattrib->ta, pattrib->src, ETH_ALEN);
#endif
_rtw_memset(pattrib->dst, 0xFF, ETH_ALEN);
/* pattrib->dhcp_pkt = 0;
* pattrib->pktlen = 0; */
pattrib->ack_policy = 0;
/* pattrib->pkt_hdrlen = ETH_HLEN; */
pattrib->hdrlen = WLAN_HDR_A3_LEN;
pattrib->subtype = WIFI_DATA;
pattrib->priority = 0;
pattrib->qsel = pattrib->priority;
/* do_queue_select(padapter, pattrib); */
pattrib->nr_frags = 1;
pattrib->encrypt = 0;
pattrib->bswenc = _FALSE;
@ -545,9 +474,6 @@ static void PHY_LCCalibrate(PADAPTER padapter)
phy_lc_calibrate_8723d(&(GET_HAL_DATA(padapter)->odmpriv));
#endif
} else if (IS_HARDWARE_TYPE_8821C(padapter)) {
#ifdef CONFIG_RTL8821C
/*phy_iq_calibrate_8821c(&(GET_HAL_DATA(padapter)->odmpriv));*/
#endif
}
}
@ -555,45 +481,6 @@ static void PHY_LCCalibrate(PADAPTER padapter)
static u8 PHY_QueryRFPathSwitch(PADAPTER padapter)
{
u8 bmain = 0;
/*
if (IS_HARDWARE_TYPE_8723B(padapter)) {
#ifdef CONFIG_RTL8723B
bmain = PHY_QueryRFPathSwitch_8723B(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8188E(padapter)) {
#ifdef CONFIG_RTL8188E
bmain = PHY_QueryRFPathSwitch_8188E(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8814A(padapter)) {
#ifdef CONFIG_RTL8814A
bmain = PHY_QueryRFPathSwitch_8814A(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8812(padapter) || IS_HARDWARE_TYPE_8821(padapter)) {
#if defined(CONFIG_RTL8812A) || defined(CONFIG_RTL8821A)
bmain = PHY_QueryRFPathSwitch_8812A(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8192E(padapter)) {
#ifdef CONFIG_RTL8192E
bmain = PHY_QueryRFPathSwitch_8192E(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8703B(padapter)) {
#ifdef CONFIG_RTL8703B
bmain = PHY_QueryRFPathSwitch_8703B(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8188F(padapter)) {
#ifdef CONFIG_RTL8188F
bmain = PHY_QueryRFPathSwitch_8188F(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8822B(padapter)) {
#ifdef CONFIG_RTL8822B
bmain = PHY_QueryRFPathSwitch_8822B(padapter);
#endif
} else if (IS_HARDWARE_TYPE_8723D(padapter)) {
#ifdef CONFIG_RTL8723D
bmain = PHY_QueryRFPathSwitch_8723D(padapter);
#endif
} else
*/
if (IS_HARDWARE_TYPE_8821C(padapter)) {
#ifdef CONFIG_RTL8821C
@ -701,16 +588,10 @@ MPT_InitializeAdapter(
/* Don't accept any packets */
rtw_write32(pAdapter, REG_RCR, 0);
/* ledsetting = rtw_read32(pAdapter, REG_LEDCFG0); */
/* rtw_write32(pAdapter, REG_LEDCFG0, ledsetting & ~LED0DIS); */
/* rtw_write32(pAdapter, REG_LEDCFG0, 0x08080); */
ledsetting = rtw_read32(pAdapter, REG_LEDCFG0);
PHY_LCCalibrate(pAdapter);
PHY_IQCalibrate(pAdapter, _FALSE);
/* dm_check_txpowertracking(&pHalData->odmpriv); */ /* trigger thermal meter */
PHY_SetRFPathSwitch(pAdapter, 1/*pHalData->bDefaultAntenna*/); /* default use Main */
@ -766,15 +647,6 @@ MPT_DeInitAdapter(
#if defined(CONFIG_RTL8723B)
phy_set_bb_reg(pAdapter, 0xA01, BIT0, 1); /* /suggestion by jerry for MP Rx. */
#endif
#if 0 /* for Windows */
PlatformFreeWorkItem(&(pMptCtx->MptWorkItem));
while (pMptCtx->bMptWorkItemInProgress) {
if (NdisWaitEvent(&(pMptCtx->MptWorkItemEvent), 50))
break;
}
NdisFreeSpinLock(&(pMptCtx->MptWorkItemSpinLock));
#endif
}
static u8 mpt_ProStartTest(PADAPTER padapter)
@ -798,7 +670,6 @@ static u8 mpt_ProStartTest(PADAPTER padapter)
*/
s32 SetPowerTracking(PADAPTER padapter, u8 enable)
{
hal_mpt_SetPowerTracking(padapter, enable);
return 0;
}
@ -1141,48 +1012,6 @@ end_of_mp_stop_test:
}
}
/*---------------------------hal\rtl8192c\MPT_Phy.c---------------------------*/
#if 0
/* #ifdef CONFIG_USB_HCI */
static VOID mpt_AdjustRFRegByRateByChan92CU(PADAPTER pAdapter, u8 RateIdx, u8 Channel, u8 BandWidthID)
{
u8 eRFPath;
u32 rfReg0x26;
HAL_DATA_TYPE *pHalData = GET_HAL_DATA(pAdapter);
if (RateIdx < MPT_RATE_6M) /* CCK rate,for 88cu */
rfReg0x26 = 0xf400;
else if ((RateIdx >= MPT_RATE_6M) && (RateIdx <= MPT_RATE_54M)) {/* OFDM rate,for 88cu */
if ((4 == Channel) || (8 == Channel) || (12 == Channel))
rfReg0x26 = 0xf000;
else if ((5 == Channel) || (7 == Channel) || (13 == Channel) || (14 == Channel))
rfReg0x26 = 0xf400;
else
rfReg0x26 = 0x4f200;
} else if ((RateIdx >= MPT_RATE_MCS0) && (RateIdx <= MPT_RATE_MCS15)) {
/* MCS 20M ,for 88cu */ /* MCS40M rate,for 88cu */
if (CHANNEL_WIDTH_20 == BandWidthID) {
if ((4 == Channel) || (8 == Channel))
rfReg0x26 = 0xf000;
else if ((5 == Channel) || (7 == Channel) || (13 == Channel) || (14 == Channel))
rfReg0x26 = 0xf400;
else
rfReg0x26 = 0x4f200;
} else {
if ((4 == Channel) || (8 == Channel))
rfReg0x26 = 0xf000;
else if ((5 == Channel) || (7 == Channel))
rfReg0x26 = 0xf400;
else
rfReg0x26 = 0x4f200;
}
}
for (eRFPath = 0; eRFPath < pHalData->NumTotalRFPath; eRFPath++)
write_rfreg(pAdapter, eRFPath, RF_SYN_G2, rfReg0x26);
}
#endif
/*-----------------------------------------------------------------------------
* Function: mpt_SwitchRfSetting
*
@ -1937,22 +1766,9 @@ void SetPacketTx(PADAPTER padapter)
rtw_mfree(pmp_priv->TXradomBuffer, 4096);
/* 3 6. start thread */
#ifdef PLATFORM_LINUX
pmp_priv->tx.PktTxThread = kthread_run(mp_xmit_packet_thread, pmp_priv, "RTW_MP_THREAD");
if (IS_ERR(pmp_priv->tx.PktTxThread))
RTW_INFO("Create PktTx Thread Fail !!!!!\n");
#endif
#ifdef PLATFORM_FREEBSD
{
struct proc *p;
struct thread *td;
pmp_priv->tx.PktTxThread = kproc_kthread_add(mp_xmit_packet_thread, pmp_priv,
&p, &td, RFHIGHPID, 0, "MPXmitThread", "MPXmitThread");
if (pmp_priv->tx.PktTxThread < 0)
RTW_INFO("Create PktTx Thread Fail !!!!!\n");
}
#endif
Rtw_MPSetMacTxEDCA(padapter);
exit:
@ -2100,11 +1916,9 @@ u32 mp_query_psd(PADAPTER pAdapter, u8 *data)
u32 psd_data = 0;
#ifdef PLATFORM_LINUX
if (!netif_running(pAdapter->pnetdev)) {
return 0;
}
#endif
if (check_fwstate(&pAdapter->mlmepriv, WIFI_MP_STATE) == _FALSE) {
return 0;
@ -2138,92 +1952,6 @@ u32 mp_query_psd(PADAPTER pAdapter, u8 *data)
return strlen(data) + 1;
}
#if 0
void _rtw_mp_xmit_priv(struct xmit_priv *pxmitpriv)
{
int i, res;
_adapter *padapter = pxmitpriv->adapter;
struct xmit_frame *pxmitframe = (struct xmit_frame *) pxmitpriv->pxmit_frame_buf;
struct xmit_buf *pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmitbuf;
u32 max_xmit_extbuf_size = MAX_XMIT_EXTBUF_SZ;
u32 num_xmit_extbuf = NR_XMIT_EXTBUFF;
if (padapter->registrypriv.mp_mode == 0) {
max_xmit_extbuf_size = MAX_XMIT_EXTBUF_SZ;
num_xmit_extbuf = NR_XMIT_EXTBUFF;
} else {
max_xmit_extbuf_size = 6000;
num_xmit_extbuf = 8;
}
pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf;
for (i = 0; i < num_xmit_extbuf; i++) {
rtw_os_xmit_resource_free(padapter, pxmitbuf, (max_xmit_extbuf_size + XMITBUF_ALIGN_SZ), _FALSE);
pxmitbuf++;
}
if (pxmitpriv->pallocated_xmit_extbuf)
rtw_vmfree(pxmitpriv->pallocated_xmit_extbuf, num_xmit_extbuf * sizeof(struct xmit_buf) + 4);
if (padapter->registrypriv.mp_mode == 0) {
max_xmit_extbuf_size = 6000;
num_xmit_extbuf = 8;
} else {
max_xmit_extbuf_size = MAX_XMIT_EXTBUF_SZ;
num_xmit_extbuf = NR_XMIT_EXTBUFF;
}
/* Init xmit extension buff */
_rtw_init_queue(&pxmitpriv->free_xmit_extbuf_queue);
pxmitpriv->pallocated_xmit_extbuf = rtw_zvmalloc(num_xmit_extbuf * sizeof(struct xmit_buf) + 4);
if (pxmitpriv->pallocated_xmit_extbuf == NULL) {
res = _FAIL;
goto exit;
}
pxmitpriv->pxmit_extbuf = (u8 *)N_BYTE_ALIGMENT((SIZE_PTR)(pxmitpriv->pallocated_xmit_extbuf), 4);
pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmit_extbuf;
for (i = 0; i < num_xmit_extbuf; i++) {
_rtw_init_listhead(&pxmitbuf->list);
pxmitbuf->priv_data = NULL;
pxmitbuf->padapter = padapter;
pxmitbuf->buf_tag = XMITBUF_MGNT;
res = rtw_os_xmit_resource_alloc(padapter, pxmitbuf, max_xmit_extbuf_size + XMITBUF_ALIGN_SZ, _TRUE);
if (res == _FAIL) {
res = _FAIL;
goto exit;
}
#if defined(CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI)
pxmitbuf->phead = pxmitbuf->pbuf;
pxmitbuf->pend = pxmitbuf->pbuf + max_xmit_extbuf_size;
pxmitbuf->len = 0;
pxmitbuf->pdata = pxmitbuf->ptail = pxmitbuf->phead;
#endif
rtw_list_insert_tail(&pxmitbuf->list, &(pxmitpriv->free_xmit_extbuf_queue.queue));
#ifdef DBG_XMIT_BUF_EXT
pxmitbuf->no = i;
#endif
pxmitbuf++;
}
pxmitpriv->free_xmit_extbuf_cnt = num_xmit_extbuf;
exit:
;
}
#endif
u8
mpt_to_mgnt_rate(
IN ULONG MptRateIdx

File diff suppressed because it is too large Load diff

View file

@ -22,13 +22,6 @@
#include <drv_types.h>
#include <hal_data.h>
#if defined(PLATFORM_LINUX) && defined (PLATFORM_WINDOWS)
#error "Shall be Linux or Windows, but not both!\n"
#endif
#ifdef CONFIG_NEW_SIGNAL_STAT_PROCESS
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 15, 0)
void rtw_signal_stat_timer_hdl(RTW_TIMER_HDL_ARGS);
@ -657,22 +650,10 @@ union recv_frame *decryptor(_adapter *padapter, union recv_frame *precv_frame)
default:
break;
}
} else if (prxattrib->bdecrypted == 1
&& prxattrib->encrypt > 0
&& (psecuritypriv->busetkipkey == 1 || prxattrib->encrypt != _TKIP_)
) {
#if 0
if ((prxstat->icv == 1) && (prxattrib->encrypt != _AES_)) {
psecuritypriv->hw_decrypted = _FALSE;
rtw_free_recvframe(precv_frame, &padapter->recvpriv.free_recv_queue);
return_packet = NULL;
} else
#endif
{
} else if (prxattrib->bdecrypted == 1 &&
prxattrib->encrypt > 0 &&
(psecuritypriv->busetkipkey == 1 ||
prxattrib->encrypt != _TKIP_)) {
DBG_COUNTER(padapter->rx_logs.core_rx_post_decrypt_hw);
psecuritypriv->hw_decrypted = _TRUE;
@ -685,7 +666,6 @@ union recv_frame *decryptor(_adapter *padapter, union recv_frame *precv_frame)
psecuritypriv->hw_decrypted);
#endif
}
} else {
DBG_COUNTER(padapter->rx_logs.core_rx_post_decrypt_unknown);
#ifdef DBG_RX_DECRYPTOR
@ -701,13 +681,10 @@ union recv_frame *decryptor(_adapter *padapter, union recv_frame *precv_frame)
if (res == _FAIL) {
rtw_free_recvframe(return_packet, &padapter->recvpriv.free_recv_queue);
return_packet = NULL;
} else
} else {
prxattrib->bdecrypted = _TRUE;
/* recvframe_chkmic(adapter, precv_frame); */ /* move to recvframme_defrag function */
}
return return_packet;
}
/* ###set the security information in the recv_frame */
union recv_frame *portctrl(_adapter *adapter, union recv_frame *precv_frame);
@ -1672,12 +1649,6 @@ sint validate_recv_ctrl_frame(_adapter *padapter, union recv_frame *precv_frame)
/* RTW_INFO("handling ps-poll, q_len=%d, tim=%x\n", psta->sleepq_len, pstapriv->tim_bitmap); */
#if 0
_exit_critical_bh(&psta->sleep_q.lock, &irqL);
if (rtw_hal_xmit(padapter, pxmitframe) == _TRUE)
rtw_os_xmit_complete(padapter, pxmitframe);
_enter_critical_bh(&psta->sleep_q.lock, &irqL);
#endif
rtw_hal_xmitframe_enqueue(padapter, pxmitframe);
if (psta->sleepq_len == 0) {
@ -1729,23 +1700,9 @@ sint validate_recv_ctrl_frame(_adapter *padapter, union recv_frame *precv_frame)
}
union recv_frame *recvframe_chk_defrag(PADAPTER padapter, union recv_frame *precv_frame);
sint validate_recv_mgnt_frame(PADAPTER padapter, union recv_frame *precv_frame);
sint validate_recv_mgnt_frame(PADAPTER padapter, union recv_frame *precv_frame)
{
/* struct mlme_priv *pmlmepriv = &adapter->mlmepriv; */
#if 0
if (check_fwstate(pmlmepriv, WIFI_AP_STATE) == _TRUE) {
#ifdef CONFIG_NATIVEAP_MLME
mgt_dispatcher(padapter, precv_frame);
#else
rtw_hostapd_mlme_rx(padapter, precv_frame);
#endif
} else
mgt_dispatcher(padapter, precv_frame);
#endif
precv_frame = recvframe_chk_defrag(padapter, precv_frame);
if (precv_frame == NULL) {
return _SUCCESS;
@ -2020,17 +1977,6 @@ static sint validate_80211w_mgmt(_adapter *adapter, union recv_frame *precv_fram
RTW_INFO("%s mgmt allocate fail !!!!!!!!!\n", __FUNCTION__);
goto validate_80211w_fail;
}
#if 0
/* dump the packet content before decrypt */
{
int pp;
RTW_INFO("pattrib->pktlen = %d =>", pattrib->pkt_len);
for (pp = 0; pp < pattrib->pkt_len; pp++)
RTW_INFO(" %02x ", ptr[pp]);
RTW_INFO("\n");
}
#endif
precv_frame = decryptor(adapter, precv_frame);
/* save actual management data frame body */
_rtw_memcpy(mgmt_DATA, ptr + pattrib->hdrlen + pattrib->iv_len, data_len);
@ -2039,16 +1985,6 @@ static sint validate_80211w_mgmt(_adapter *adapter, union recv_frame *precv_fram
/* remove the iv and icv length */
pattrib->pkt_len = pattrib->pkt_len - pattrib->iv_len - pattrib->icv_len;
rtw_mfree(mgmt_DATA, data_len);
#if 0
/* print packet content after decryption */
{
int pp;
RTW_INFO("after decryption pattrib->pktlen = %d @@=>", pattrib->pkt_len);
for (pp = 0; pp < pattrib->pkt_len; pp++)
RTW_INFO(" %02x ", ptr[pp]);
RTW_INFO("\n");
}
#endif
if (!precv_frame) {
RTW_INFO("%s mgmt descrypt fail !!!!!!!!!\n", __FUNCTION__);
goto validate_80211w_fail;
@ -2493,22 +2429,6 @@ sint wlanhdr_to_ethhdr(union recv_frame *precvframe)
} else if (eth_type == 0x8712) { /* append rx status for mp test packets */
/* ptr -= 16; */
/* _rtw_memcpy(ptr, get_rxmem(precvframe), 16); */
} else {
#ifdef PLATFORM_OS_XP
NDIS_PACKET_8021Q_INFO VlanPriInfo;
UINT32 UserPriority = precvframe->u.hdr.attrib.priority;
UINT32 VlanID = (pvlan != NULL ? get_vlan_id(pvlan) : 0);
VlanPriInfo.Value = /* Get current value. */
NDIS_PER_PACKET_INFO_FROM_PACKET(precvframe->u.hdr.pkt, Ieee8021QInfo);
VlanPriInfo.TagHeader.UserPriority = UserPriority;
VlanPriInfo.TagHeader.VlanId = VlanID ;
VlanPriInfo.TagHeader.CanonicalFormatId = 0; /* Should be zero. */
VlanPriInfo.TagHeader.Reserved = 0; /* Should be zero. */
NDIS_PER_PACKET_INFO_FROM_PACKET(precvframe->u.hdr.pkt, Ieee8021QInfo) = VlanPriInfo.Value;
#endif
}
if (eth_type == 0x8712) { /* append rx status for mp test packets */
@ -2533,7 +2453,6 @@ exit:
#if defined(CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI)
#ifdef PLATFORM_LINUX
static void recvframe_expand_pkt(
PADAPTER padapter,
union recv_frame *prframe)
@ -2586,9 +2505,6 @@ static void recvframe_expand_pkt(
pfhdr->rx_tail = skb_tail_pointer(ppkt);
pfhdr->rx_end = skb_end_pointer(ppkt);
}
#else
#warning "recvframe_expand_pkt not implement, defrag may crash system"
#endif
#endif
/* perform defrag */
@ -3019,12 +2935,6 @@ int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *pre
phead = get_list_head(ppending_recvframe_queue);
plist = get_next(phead);
#if 0
/* Check if there is any other indication thread running. */
if (pTS->RxIndicateState == RXTS_INDICATE_PROCESSING)
return;
#endif
/* Handling some condition for forced indicate case. */
if (bforced == _TRUE) {
pdbgpriv->dbg_rx_ampdu_forced_indicate_count++;
@ -3054,16 +2964,6 @@ int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *pre
pattrib = &prframe->u.hdr.attrib;
if (!SN_LESS(preorder_ctrl->indicate_seq, pattrib->seq_num)) {
#if 0
/* This protect buffer from overflow. */
if (index >= REORDER_WIN_SIZE) {
RT_ASSERT(FALSE, ("IndicateRxReorderList(): Buffer overflow!!\n"));
bPktInBuf = TRUE;
break;
}
#endif
plist = get_next(plist);
rtw_list_delete(&(prframe->u.hdr.list));
@ -3075,30 +2975,8 @@ int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *pre
#endif
}
#if 0
index++;
if (index == 1) {
/* Cancel previous pending timer. */
/* PlatformCancelTimer(Adapter, &pTS->RxPktPendingTimer); */
if (bforced != _TRUE) {
/* RTW_INFO("_cancel_timer(&preorder_ctrl->reordering_ctrl_timer, &bcancelled);\n"); */
_cancel_timer(&preorder_ctrl->reordering_ctrl_timer, &bcancelled);
}
}
#endif
/* Set this as a lock to make sure that only one thread is indicating packet. */
/* pTS->RxIndicateState = RXTS_INDICATE_PROCESSING; */
/* Indicate packets */
/* RT_ASSERT((index<=REORDER_WIN_SIZE), ("RxReorderIndicatePacket(): Rx Reorder buffer full!!\n")); */
/* indicate this recv_frame */
/* DbgPrint("recv_indicatepkts_in_order, indicate_seq=%d, seq_num=%d\n", precvpriv->indicate_seq, pattrib->seq_num); */
if (!pattrib->amsdu) {
/* RTW_INFO("recv_indicatepkts_in_order, amsdu!=1, indicate_seq=%d, seq_num=%d\n", preorder_ctrl->indicate_seq, pattrib->seq_num); */
if (!RTW_CANNOT_RUN(padapter))
rtw_recv_indicatepkt(padapter, prframe);/*indicate this recv_frame*/
@ -3122,29 +3000,9 @@ int recv_indicatepkts_in_order(_adapter *padapter, struct recv_reorder_ctrl *pre
}
/* _rtw_spinunlock_ex(&ppending_recvframe_queue->lock); */
/* _exit_critical_ex(&ppending_recvframe_queue->lock, &irql); */
#if 0
/* Release the indication lock and set to new indication step. */
if (bPktInBuf) {
/* Set new pending timer. */
/* pTS->RxIndicateState = RXTS_INDICATE_REORDER; */
/* PlatformSetTimer(Adapter, &pTS->RxPktPendingTimer, pHTInfo->RxReorderPendingTime); */
_set_timer(&preorder_ctrl->reordering_ctrl_timer, REORDER_WAIT_TIME);
} else {
/* pTS->RxIndicateState = RXTS_INDICATE_IDLE; */
}
#endif
/* _exit_critical_ex(&ppending_recvframe_queue->lock, &irql); */
/* return _TRUE; */
return bPktInBuf;
}
int recv_indicatepkt_reorder(_adapter *padapter, union recv_frame *prframe);
int recv_indicatepkt_reorder(_adapter *padapter, union recv_frame *prframe)
{
_irqL irql;
@ -3244,31 +3102,16 @@ int recv_indicatepkt_reorder(_adapter *padapter, union recv_frame *prframe)
/* s2. check if winstart_b(indicate_seq) needs to been updated */
if (!check_indicate_seq(preorder_ctrl, pattrib->seq_num)) {
pdbgpriv->dbg_rx_ampdu_drop_count++;
/* pHTInfo->RxReorderDropCounter++; */
/* ReturnRFDList(Adapter, pRfd); */
/* _exit_critical_ex(&ppending_recvframe_queue->lock, &irql); */
/* return _FAIL; */
#ifdef DBG_RX_DROP_FRAME
RTW_INFO("DBG_RX_DROP_FRAME %s check_indicate_seq fail\n", __FUNCTION__);
#endif
#if 0
rtw_recv_indicatepkt(padapter, prframe);
_exit_critical_bh(&ppending_recvframe_queue->lock, &irql);
goto _success_exit;
#else
goto _err_exit;
#endif
}
/* s3. Insert all packet into Reorder Queue to maintain its ordering. */
if (!enqueue_reorder_recvframe(preorder_ctrl, prframe)) {
/* DbgPrint("recv_indicatepkt_reorder, enqueue_reorder_recvframe fail!\n"); */
/* _exit_critical_ex(&ppending_recvframe_queue->lock, &irql); */
/* return _FAIL; */
#ifdef DBG_RX_DROP_FRAME
RTW_INFO("DBG_RX_DROP_FRAME %s enqueue_reorder_recvframe fail\n", __FUNCTION__);
#endif
@ -3413,24 +3256,6 @@ int validate_mp_recv_frame(_adapter *adapter, union recv_frame *precv_frame)
pmptx = &pmppriv->tx;
#if 0
if (1) {
u8 bDumpRxPkt;
type = GetFrameType(ptr);
subtype = get_frame_sub_type(ptr); /* bit(7)~bit(2) */
rtw_hal_get_def_var(adapter, HAL_DEF_DBG_DUMP_RXPKT, &(bDumpRxPkt));
if (bDumpRxPkt == 1) { /* dump all rx packets */
int i;
RTW_INFO("############ type:0x%02x subtype:0x%02x #################\n", type, subtype);
for (i = 0; i < 64; i = i + 8)
RTW_INFO("%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:\n", *(ptr + i),
*(ptr + i + 1), *(ptr + i + 2) , *(ptr + i + 3) , *(ptr + i + 4), *(ptr + i + 5), *(ptr + i + 6), *(ptr + i + 7));
RTW_INFO("#############################\n");
}
}
#endif
if (pmppriv->bloopback) {
if (_rtw_memcmp(ptr + 24, pmptx->buf + 24, precv_frame->u.hdr.len - 24) == _FALSE) {
RTW_INFO("Compare payload content Fail !!!\n");
@ -3672,36 +3497,6 @@ static sint fill_radiotap_hdr(_adapter *padapter, union recv_frame *precvframe,
{
#define CHAN2FREQ(a) ((a < 14) ? (2407+5*a) : (5000+5*a))
#if 0
#define RTW_RX_RADIOTAP_PRESENT (\
(1 << IEEE80211_RADIOTAP_TSFT) | \
(1 << IEEE80211_RADIOTAP_FLAGS) | \
(1 << IEEE80211_RADIOTAP_RATE) | \
(1 << IEEE80211_RADIOTAP_CHANNEL) | \
(0 << IEEE80211_RADIOTAP_FHSS) | \
(1 << IEEE80211_RADIOTAP_DBM_ANTSIGNAL) | \
(1 << IEEE80211_RADIOTAP_DBM_ANTNOISE) | \
(0 << IEEE80211_RADIOTAP_LOCK_QUALITY) | \
(0 << IEEE80211_RADIOTAP_TX_ATTENUATION) | \
(0 << IEEE80211_RADIOTAP_DB_TX_ATTENUATION) | \
(0 << IEEE80211_RADIOTAP_DBM_TX_POWER) | \
(1 << IEEE80211_RADIOTAP_ANTENNA) | \
(1 << IEEE80211_RADIOTAP_DB_ANTSIGNAL) | \
(0 << IEEE80211_RADIOTAP_DB_ANTNOISE) | \
(0 << IEEE80211_RADIOTAP_RX_FLAGS) | \
(0 << IEEE80211_RADIOTAP_TX_FLAGS) | \
(0 << IEEE80211_RADIOTAP_RTS_RETRIES) | \
(0 << IEEE80211_RADIOTAP_DATA_RETRIES) | \
(0 << IEEE80211_RADIOTAP_MCS) | \
(0 << IEEE80211_RADIOTAP_RADIOTAP_NAMESPACE)| \
(0 << IEEE80211_RADIOTAP_VENDOR_NAMESPACE) | \
(0 << IEEE80211_RADIOTAP_EXT) | \
0)
/* (0 << IEEE80211_RADIOTAP_AMPDU_STATUS) | \ */
/* (0 << IEEE80211_RADIOTAP_VHT) | \ */
#endif
#ifndef IEEE80211_RADIOTAP_RX_FLAGS
#define IEEE80211_RADIOTAP_RX_FLAGS 14
#endif
@ -3835,18 +3630,6 @@ static sint fill_radiotap_hdr(_adapter *padapter, union recv_frame *precvframe,
hdr_buf[rt_len] = pattrib->phy_info.RecvSignalPower;
rt_len += 1;
#if 0
/* dBm Antenna Noise */
rtap_hdr->it_present |= (1 << IEEE80211_RADIOTAP_DBM_ANTNOISE);
hdr_buf[rt_len] = 0;
rt_len += 1;
/* Signal Quality */
rtap_hdr->it_present |= (1 << IEEE80211_RADIOTAP_LOCK_QUALITY);
hdr_buf[rt_len] = pattrib->phy_info.SignalQuality;
rt_len += 1;
#endif
/* Antenna */
rtap_hdr->it_present |= (1 << IEEE80211_RADIOTAP_ANTENNA);
hdr_buf[rt_len] = 0; /* pHalData->rf_type; */
@ -3854,10 +3637,6 @@ static sint fill_radiotap_hdr(_adapter *padapter, union recv_frame *precvframe,
/* RX flags */
rtap_hdr->it_present |= (1 << IEEE80211_RADIOTAP_RX_FLAGS);
#if 0
tmp_16bit = cpu_to_le16(0);
memcpy(ptr, &tmp_16bit, 1);
#endif
rt_len += 2;
/* MCS information */
@ -4094,21 +3873,6 @@ int recv_func_posthandle(_adapter *padapter, union recv_frame *prframe)
}
#endif
#if 0
if (padapter->adapter_type == PRIMARY_ADAPTER) {
RTW_INFO("+++\n");
{
int i;
u8 *ptr = get_recvframe_data(prframe);
for (i = 0; i < 140; i = i + 8)
RTW_INFO("%02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X:", *(ptr + i),
*(ptr + i + 1), *(ptr + i + 2) , *(ptr + i + 3) , *(ptr + i + 4), *(ptr + i + 5), *(ptr + i + 6), *(ptr + i + 7));
}
RTW_INFO("---\n");
}
#endif
#ifdef CONFIG_TDLS
/* check TDLS frame */
psnap_type = get_recvframe_data(orig_prframe) + pattrib->hdrlen + pattrib->iv_len + SNAP_SIZE;
@ -4587,22 +4351,6 @@ void rx_query_phy_status(
if (_rtw_memcmp(adapter_mac_addr(padapter), sa, ETH_ALEN) == _TRUE) {
static u32 start_time = 0;
#if 0 /*For debug */
if (IsFrameTypeCtrl(wlanhdr)) {
RTW_INFO("-->Control frame: Y\n");
RTW_INFO("-->pkt_len: %d\n", pattrib->pkt_len);
RTW_INFO("-->Sub Type = 0x%X\n", get_frame_sub_type(wlanhdr));
}
/* Dump first 40 bytes of header */
int i = 0;
for (i = 0; i < 40; i++)
RTW_INFO("%d: %X\n", i, *((u8 *)wlanhdr + i));
RTW_INFO("\n");
#endif
if ((start_time == 0) || (rtw_get_passing_time_ms(start_time) > 5000)) {
RTW_PRINT("Warning!!! %s: Confilc mac addr!!\n", __func__);
start_time = rtw_get_current_time();

View file

@ -987,13 +987,11 @@ static void next_key(u8 *key, sint round);
static void byte_sub(u8 *in, u8 *out);
static void shift_row(u8 *in, u8 *out);
static void mix_column(u8 *in, u8 *out);
#ifndef PLATFORM_FREEBSD
static void add_round_key(u8 *shiftrow_in,
u8 *mcol_in,
u8 *block_in,
sint round,
u8 *out);
#endif /* PLATFORM_FREEBSD */
static void aes128k128d(u8 *key, u8 *data, u8 *ciphertext);
@ -2002,28 +2000,6 @@ u32 rtw_aes_decrypt(_adapter *padapter, u8 *precvframe)
prwskey = &stainfo->dot118021x_UncstKey.skey[0];
length = ((union recv_frame *)precvframe)->u.hdr.len - prxattrib->hdrlen - prxattrib->iv_len;
#if 0
/* add for CONFIG_IEEE80211W, debug */
if (0)
RTW_INFO("@@@@@@@@@@@@@@@@@@ length=%d, prxattrib->hdrlen=%d, prxattrib->pkt_len=%d\n"
, length, prxattrib->hdrlen, prxattrib->pkt_len);
if (0) {
int no;
/* test print PSK */
RTW_INFO("PSK key below:\n");
for (no = 0; no < 16; no++)
RTW_INFO(" %02x ", prwskey[no]);
RTW_INFO("\n");
}
if (0) {
int no;
/* test print PSK */
RTW_INFO("frame:\n");
for (no = 0; no < prxattrib->pkt_len; no++)
RTW_INFO(" %02x ", pframe[no]);
RTW_INFO("\n");
}
#endif
res = aes_decipher(prwskey, prxattrib->hdrlen, pframe, length);
@ -2097,26 +2073,6 @@ u32 rtw_BIP_verify(_adapter *padapter, u8 *precvframe)
, BIP_AAD, ori_len, mic))
goto BIP_exit;
#if 0
/* management packet content */
{
int pp;
RTW_INFO("pkt: ");
for (pp = 0; pp < pattrib->pkt_len; pp++)
RTW_INFO(" %02x ", pframe[pp]);
RTW_INFO("\n");
/* BIP AAD + management frame body + MME(MIC is zero) */
RTW_INFO("AAD+PKT: ");
for (pp = 0; pp < ori_len; pp++)
RTW_INFO(" %02x ", BIP_AAD[pp]);
RTW_INFO("\n");
/* show the MIC result */
RTW_INFO("mic: ");
for (pp = 0; pp < 16; pp++)
RTW_INFO(" %02x ", mic[pp]);
RTW_INFO("\n");
}
#endif
/* MIC field should be last 8 bytes of packet (packet without FCS) */
if (_rtw_memcmp(mic, pframe + pattrib->pkt_len - 8, 8)) {
pmlmeext->mgnt_80211w_IPN_rx = temp_ipn;
@ -2133,7 +2089,6 @@ BIP_exit:
}
#endif /* CONFIG_IEEE80211W */
#ifndef PLATFORM_FREEBSD
/* compress 512-bits */
static int sha256_compress(struct sha256_state *md, unsigned char *buf)
{
@ -2403,7 +2358,6 @@ static void hmac_sha256_vector(u8 *key, size_t key_len, size_t num_elem,
_len[1] = 32;
sha256_vector(2, _addr, _len, mac);
}
#endif /* PLATFORM_FREEBSD */
/**
* sha256_prf - SHA256-based Pseudo-Random Function (IEEE 802.11r, 8.5.1.5.2)
* @key: Key for PRF
@ -2417,7 +2371,6 @@ static void hmac_sha256_vector(u8 *key, size_t key_len, size_t num_elem,
* This function is used to derive new, cryptographically separate keys from a
* given key.
*/
#ifndef PLATFORM_FREEBSD /* Baron */
static void sha256_prf(u8 *key, size_t key_len, char *label,
u8 *data, size_t data_len, u8 *buf, size_t buf_len)
{
@ -2454,7 +2407,6 @@ static void sha256_prf(u8 *key, size_t key_len, char *label,
counter++;
}
}
#endif /* PLATFORM_FREEBSD Baron */
/* AES tables*/
const u32 Te0[256] = {
@ -2633,7 +2585,6 @@ const u8 rcons[] = {
*
* @return the number of rounds for the given cipher key size.
*/
#ifndef PLATFORM_FREEBSD /* Baron */
static void rijndaelKeySetupEnc(u32 rk[/*44*/], const u8 cipherKey[])
{
int i;
@ -2850,7 +2801,6 @@ int omac1_aes_128(u8 *key, u8 *data, size_t data_len, u8 *mac)
{
return omac1_aes_128_vector(key, 1, &data, &data_len, mac);
}
#endif /* PLATFORM_FREEBSD Baron */
#ifdef CONFIG_TDLS
void wpa_tdls_generate_tpk(_adapter *padapter, PVOID sta)

View file

@ -264,7 +264,7 @@ void sreset_stop_adapter(_adapter *padapter)
rtw_cancel_all_timer(padapter);
/* TODO: OS and HCI independent */
#if defined(PLATFORM_LINUX) && defined(CONFIG_USB_HCI)
#if defined(CONFIG_USB_HCI)
tasklet_kill(&pxmitpriv->xmit_tasklet);
#endif
@ -292,7 +292,7 @@ void sreset_start_adapter(_adapter *padapter)
sreset_restore_network_status(padapter);
/* TODO: OS and HCI independent */
#if defined(PLATFORM_LINUX) && defined(CONFIG_USB_HCI)
#if defined(CONFIG_USB_HCI)
tasklet_hi_schedule(&pxmitpriv->xmit_tasklet);
#endif

View file

@ -21,13 +21,6 @@
#include <drv_types.h>
#if defined(PLATFORM_LINUX) && defined (PLATFORM_WINDOWS)
#error "Shall be Linux or Windows, but not both!\n"
#endif
bool test_st_match_rule(_adapter *adapter, u8 *local_naddr, u8 *local_port, u8 *remote_naddr, u8 *remote_port)
{
if (ntohs(*((u16 *)local_port)) == 5001 || ntohs(*((u16 *)remote_port)) == 5001)

View file

@ -22,11 +22,6 @@
#include <drv_types.h>
#include <hal_data.h>
#if defined(PLATFORM_LINUX) && defined (PLATFORM_WINDOWS)
#error "Shall be Linux or Windows, but not both!\n"
#endif
static u8 P802_1H_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0xf8 };
static u8 RFC1042_OUI[P80211_OUI_LEN] = { 0x00, 0x00, 0x00 };
@ -37,11 +32,9 @@ static void _init_txservq(struct tx_servq *ptxservq)
ptxservq->qcnt = 0;
}
void _rtw_init_sta_xmit_priv(struct sta_xmit_priv *psta_xmitpriv)
{
_rtw_memset((unsigned char *)psta_xmitpriv, 0, sizeof(struct sta_xmit_priv));
spin_lock_init(&psta_xmitpriv->lock);
@ -56,7 +49,6 @@ void _rtw_init_sta_xmit_priv(struct sta_xmit_priv *psta_xmitpriv)
_rtw_init_listhead(&psta_xmitpriv->legacy_dz);
_rtw_init_listhead(&psta_xmitpriv->apsd);
}
s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter)
@ -66,7 +58,6 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter)
struct xmit_frame *pxframe;
sint res = _SUCCESS;
/* We don't need to memset padapter->XXX to zero, because adapter is allocated by rtw_zvmalloc(). */
/* _rtw_memset((unsigned char *)pxmitpriv, 0, sizeof(struct xmit_priv)); */
@ -134,7 +125,6 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter)
pxmitpriv->frag_len = MAX_FRAG_THRESHOLD;
/* init xmit_buf */
_rtw_init_queue(&pxmitpriv->free_xmitbuf_queue);
_rtw_init_queue(&pxmitpriv->pending_xmitbuf_queue);
@ -307,7 +297,6 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter)
pxmitpriv->voq_cnt = 0;
#endif
#ifdef CONFIG_XMIT_ACK
pxmitpriv->ack_tx = _FALSE;
_rtw_mutex_init(&pxmitpriv->ack_tx_mutex);
@ -340,7 +329,6 @@ s32 _rtw_init_xmit_priv(struct xmit_priv *pxmitpriv, _adapter *padapter)
exit:
return res;
}
@ -365,7 +353,6 @@ void rtw_mfree_xmit_priv_lock(struct xmit_priv *pxmitpriv)
_rtw_spinlock_free(&pxmitpriv->pending_xmitbuf_queue.lock);
}
void _rtw_free_xmit_priv(struct xmit_priv *pxmitpriv)
{
int i;
@ -373,7 +360,6 @@ void _rtw_free_xmit_priv(struct xmit_priv *pxmitpriv)
struct xmit_frame *pxmitframe = (struct xmit_frame *) pxmitpriv->pxmit_frame_buf;
struct xmit_buf *pxmitbuf = (struct xmit_buf *)pxmitpriv->pxmitbuf;
rtw_hal_free_xmit_priv(padapter);
rtw_mfree_xmit_priv_lock(pxmitpriv);
@ -396,7 +382,6 @@ void _rtw_free_xmit_priv(struct xmit_priv *pxmitpriv)
if (pxmitpriv->pallocated_frame_buf)
rtw_vmfree(pxmitpriv->pallocated_frame_buf, NR_XMITFRAME * sizeof(struct xmit_frame) + 4);
if (pxmitpriv->pallocated_xmitbuf)
rtw_vmfree(pxmitpriv->pallocated_xmitbuf, NR_XMITBUFF * sizeof(struct xmit_buf) + 4);
@ -799,19 +784,6 @@ static void update_attrib_vcs_info(_adapter *padapter, struct xmit_frame *pxmitf
}
} else {
while (_TRUE) {
#if 0 /* Todo */
/* check IOT action */
if (pHTInfo->IOTAction & HT_IOT_ACT_FORCED_CTS2SELF) {
pattrib->vcs_mode = CTS_TO_SELF;
pattrib->rts_rate = MGN_24M;
break;
} else if (pHTInfo->IOTAction & (HT_IOT_ACT_FORCED_RTS | HT_IOT_ACT_PURE_N_MODE)) {
pattrib->vcs_mode = RTS_CTS;
pattrib->rts_rate = MGN_24M;
break;
}
#endif
/* IOT action */
if ((pmlmeinfo->assoc_AP_vendor == HT_IOT_PEER_ATHEROS) && (pattrib->ampdu_en == _TRUE) &&
(padapter->securitypriv.dot11PrivacyAlgrthm == _AES_)) {
@ -819,7 +791,6 @@ static void update_attrib_vcs_info(_adapter *padapter, struct xmit_frame *pxmitf
break;
}
/* check ERP protection */
if (pattrib->rtsen || pattrib->cts2self) {
if (pattrib->rtsen)
@ -1028,7 +999,6 @@ static s32 update_attrib_sec_info(_adapter *padapter, struct pkt_attrib *pattrib
else
TKIP_IV(pattrib->iv, psta->dot11txpn, 0);
_rtw_memcpy(pattrib->dot11tkiptxmickey.skey, psta->dot11tkiptxmickey.skey, 16);
break;
@ -1061,7 +1031,6 @@ static s32 update_attrib_sec_info(_adapter *padapter, struct pkt_attrib *pattrib
if (pattrib->encrypt > 0)
_rtw_memcpy(pattrib->dot118021x_UncstKey.skey, psta->dot118021x_UncstKey.skey, 16);
if (pattrib->encrypt &&
((padapter->securitypriv.sw_encrypt == _TRUE) || (psecuritypriv->hw_decrypted == _FALSE))) {
pattrib->bswenc = _TRUE;
@ -1124,7 +1093,6 @@ static void set_qos(struct pkt_file *ppktfile, struct pkt_attrib *pattrib)
struct iphdr ip_hdr;
s32 UserPriority = 0;
_rtw_open_pktfile(ppktfile->pkt, ppktfile);
_rtw_pktfile_read(ppktfile, (unsigned char *)&etherhdr, ETH_HLEN);
@ -1137,7 +1105,6 @@ static void set_qos(struct pkt_file *ppktfile, struct pkt_attrib *pattrib)
/*
else if (pattrib->ether_type == 0x888e) {
UserPriority = 7;
}
*/
@ -1154,26 +1121,11 @@ u8 rtw_check_tdls_established(_adapter *padapter, struct pkt_attrib *pattrib)
pattrib->direct_link = _FALSE;
if (padapter->tdlsinfo.link_established == _TRUE) {
pattrib->ptdls_sta = rtw_get_stainfo(&padapter->stapriv, pattrib->dst);
#if 1
if ((pattrib->ptdls_sta != NULL) &&
(pattrib->ptdls_sta->tdls_sta_state & TDLS_LINKED_STATE) &&
(pattrib->ether_type != 0x0806)) {
pattrib->direct_link = _TRUE;
/* RTW_INFO("send ptk to "MAC_FMT" using direct link\n", MAC_ARG(pattrib->dst)); */
}
#else
if (pattrib->ptdls_sta != NULL &&
pattrib->ptdls_sta->tdls_sta_state & TDLS_LINKED_STATE) {
pattrib->direct_link = _TRUE;
#if 0
RTW_INFO("send ptk to "MAC_FMT" using direct link\n", MAC_ARG(pattrib->dst));
#endif
}
/* ARP frame may be helped by AP*/
if (pattrib->ether_type != 0x0806)
pattrib->direct_link = _FALSE;
#endif
}
return pattrib->direct_link;
@ -1221,7 +1173,6 @@ s32 update_tdls_attrib(_adapter *padapter, struct pkt_attrib *pattrib)
update_attrib_phy_info(padapter, pattrib, psta);
exit:
return res;
@ -1256,7 +1207,6 @@ static s32 update_attrib(_adapter *padapter, _pkt *pkt, struct pkt_attrib *pattr
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
sint res = _SUCCESS;
DBG_COUNTER(padapter->tx_logs.core_tx_upd_attrib);
_rtw_open_pktfile(pkt, &pktfile);
@ -1264,11 +1214,9 @@ static s32 update_attrib(_adapter *padapter, _pkt *pkt, struct pkt_attrib *pattr
pattrib->ether_type = ntohs(etherhdr.h_proto);
_rtw_memcpy(pattrib->dst, &etherhdr.h_dest, ETH_ALEN);
_rtw_memcpy(pattrib->src, &etherhdr.h_source, ETH_ALEN);
if ((check_fwstate(pmlmepriv, WIFI_ADHOC_STATE) == _TRUE) ||
(check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE) == _TRUE)) {
_rtw_memcpy(pattrib->ra, pattrib->dst, ETH_ALEN);
@ -1403,14 +1351,9 @@ static s32 update_attrib(_adapter *padapter, _pkt *pkt, struct pkt_attrib *pattr
#ifdef CONFIG_WAPI_SUPPORT
if ((pattrib->ether_type == 0x88B4) || (pattrib->ether_type == 0x0806) || (pattrib->ether_type == 0x888e) || (pattrib->dhcp_pkt == 1))
#else /* !CONFIG_WAPI_SUPPORT */
#if 0
if ((pattrib->ether_type == 0x0806) || (pattrib->ether_type == 0x888e) || (pattrib->dhcp_pkt == 1))
#else /* only ICMP/DHCP packets is as SPECIAL_PACKET, and leave LPS when tx IMCP/DHCP packets. */
/* if ((pattrib->ether_type == 0x888e) || (pattrib->dhcp_pkt == 1) ) */
if (pattrib->icmp_pkt == 1)
rtw_lps_ctrl_wk_cmd(padapter, LPS_CTRL_LEAVE, 1);
else if (pattrib->dhcp_pkt == 1)
#endif
#endif
{
DBG_COUNTER(padapter->tx_logs.core_tx_upd_attrib_active);
@ -1472,7 +1415,6 @@ static s32 update_attrib(_adapter *padapter, _pkt *pkt, struct pkt_attrib *pattr
exit:
return res;
}
@ -1514,7 +1456,6 @@ static s32 xmitframe_addmic(_adapter *padapter, struct xmit_frame *pxmitframe)
}
*/
#ifdef CONFIG_USB_TX_AGGREGATION
hw_hdr_offset = TXDESC_SIZE + (pxmitframe->pkt_offset * PACKET_OFFSET_SZ);;
#else
@ -1570,7 +1511,6 @@ static s32 xmitframe_addmic(_adapter *padapter, struct xmit_frame *pxmitframe)
if (pattrib->qos_en)
priority[0] = (u8)pxmitframe->attrib.priority;
rtw_secmicappend(&micdata, &priority[0], 4);
payload = pframe;
@ -1599,7 +1539,6 @@ static s32 xmitframe_addmic(_adapter *padapter, struct xmit_frame *pxmitframe)
}
}
return _SUCCESS;
}
@ -1611,7 +1550,6 @@ static s32 xmitframe_swencrypt(_adapter *padapter, struct xmit_frame *pxmitframe
struct pkt_attrib *pattrib = &pxmitframe->attrib;
/* struct security_priv *psecuritypriv=&padapter->securitypriv; */
/* if((psecuritypriv->sw_encrypt)||(pattrib->bswenc)) */
if (pattrib->bswenc) {
#ifdef DBG_TX_SW_ENCRYPTOR
@ -1640,7 +1578,6 @@ static s32 xmitframe_swencrypt(_adapter *padapter, struct xmit_frame *pxmitframe
}
return _SUCCESS;
}
@ -1659,7 +1596,6 @@ s32 rtw_make_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattrib)
/* sint bmcst = IS_MCAST(pattrib->ra); */
/*
psta = rtw_get_stainfo(&padapter->stapriv, pattrib->ra);
if(pattrib->psta != psta)
@ -1773,7 +1709,6 @@ s32 rtw_make_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattrib)
return _FAIL;
}
if (psta) {
psta->sta_xmitpriv.txseq_tid[pattrib->priority]++;
psta->sta_xmitpriv.txseq_tid[pattrib->priority] &= 0xFFF;
@ -1782,13 +1717,6 @@ s32 rtw_make_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattrib)
SetSeqNum(hdr, pattrib->seqnum);
#ifdef CONFIG_80211N_HT
#if 0 /* move into update_attrib_phy_info(). */
/* check if enable ampdu */
if (pattrib->ht_en && psta->htpriv.ampdu_enable) {
if (psta->htpriv.agg_enable_bitmap & BIT(pattrib->priority))
pattrib->ampdu_en = _TRUE;
}
#endif
/* re-check if enable ampdu by BA_starting_seqctrl */
if (pattrib->ampdu_en == _TRUE) {
u16 tx_seq;
@ -1820,7 +1748,6 @@ s32 rtw_make_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattrib)
exit:
return res;
}
@ -1955,7 +1882,6 @@ s32 rtw_make_tdls_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattr
sint res = _SUCCESS;
u16 *fctrl = &pwlanhdr->frame_ctl;
_rtw_memset(hdr, 0, WLANHDR_OFFSET);
set_frame_sub_type(fctrl, pattrib->subtype);
@ -2041,10 +1967,8 @@ s32 rtw_make_tdls_wlanhdr(_adapter *padapter , u8 *hdr, struct pkt_attrib *pattr
SetSeqNum(hdr, pattrib->seqnum);
}
exit:
return res;
}
@ -2062,7 +1986,6 @@ s32 rtw_xmit_tdls_coalesce(_adapter *padapter, struct xmit_frame *pxmitframe, st
s32 bmcst = IS_MCAST(pattrib->ra);
s32 res = _SUCCESS;
if (pattrib->psta)
psta = pattrib->psta;
else {
@ -2150,7 +2073,6 @@ s32 rtw_xmit_tdls_coalesce(_adapter *padapter, struct xmit_frame *pxmitframe, st
exit:
return res;
}
#endif /* CONFIG_TDLS */
@ -2254,7 +2176,6 @@ s32 rtw_xmitframe_coalesce_amsdu(_adapter *padapter, struct xmit_frame *pxmitfra
return _FAIL;
}
pbuf_start = pxmitframe->buf_addr;
#ifdef CONFIG_USB_TX_AGGREGATION
@ -2430,7 +2351,6 @@ s32 rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxm
s32 bmcst = IS_MCAST(pattrib->ra);
s32 res = _SUCCESS;
/*
if (pattrib->psta)
{
@ -2448,7 +2368,6 @@ s32 rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxm
return _FAIL;
}
if(!(psta->state &_FW_LINKED))
{
RTW_INFO("%s, psta->state(0x%x) != _FW_LINKED\n", __func__, psta->state);
@ -2500,41 +2419,8 @@ s32 rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxm
/* adding icv, if necessary... */
if (pattrib->iv_len) {
#if 0
/* if (check_fwstate(pmlmepriv, WIFI_MP_STATE)) */
/* psta = rtw_get_stainfo(pstapriv, get_bssid(pmlmepriv)); */
/* else */
/* psta = rtw_get_stainfo(pstapriv, pattrib->ra); */
if (psta != NULL) {
switch (pattrib->encrypt) {
case _WEP40_:
case _WEP104_:
WEP_IV(pattrib->iv, psta->dot11txpn, pattrib->key_idx);
break;
case _TKIP_:
if (bmcst)
TKIP_IV(pattrib->iv, psta->dot11txpn, pattrib->key_idx);
else
TKIP_IV(pattrib->iv, psta->dot11txpn, 0);
break;
case _AES_:
if (bmcst)
AES_IV(pattrib->iv, psta->dot11txpn, pattrib->key_idx);
else
AES_IV(pattrib->iv, psta->dot11txpn, 0);
break;
#ifdef CONFIG_WAPI_SUPPORT
case _SMS4_:
rtw_wapi_get_iv(padapter, pattrib->ra, pattrib->iv);
break;
#endif
}
}
#endif
_rtw_memcpy(pframe, pattrib->iv, pattrib->iv_len);
pframe += pattrib->iv_len;
mpdu_len -= pattrib->iv_len;
@ -2549,7 +2435,6 @@ s32 rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxm
if ((pattrib->icv_len > 0) && (pattrib->bswenc))
mpdu_len -= pattrib->icv_len;
if (bmcst) {
/* don't do fragment to broadcat/multicast packets */
mem_sz = _rtw_pktfile_read(&pktfile, pframe, pattrib->pktlen);
@ -2598,7 +2483,6 @@ s32 rtw_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame *pxm
exit:
return res;
}
@ -2639,7 +2523,6 @@ s32 rtw_mgmt_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame
_enter_critical_bh(&padapter->security_key_mutex, &irqL);
/* IGTK key is not install, it may not support 802.11w */
if (padapter->securitypriv.binstallBIPkey != _TRUE) {
RTW_INFO("no instll BIP key\n");
@ -2681,41 +2564,13 @@ s32 rtw_mgmt_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame
_rtw_memcpy(BIP_AAD + 2, pwlanhdr->addr1, 18);
/* copy management fram body */
_rtw_memcpy(BIP_AAD + BIP_AAD_SIZE, MGMT_body, frame_body_len);
#if 0
/* dump total packet include MME with zero MIC */
{
int i;
RTW_INFO("Total packet: ");
for (i = 0; i < BIP_AAD_SIZE + frame_body_len; i++)
RTW_INFO(" %02x ", BIP_AAD[i]);
RTW_INFO("\n");
}
#endif
/* calculate mic */
if (omac1_aes_128(padapter->securitypriv.dot11wBIPKey[padapter->securitypriv.dot11wBIPKeyid].skey
, BIP_AAD, BIP_AAD_SIZE + frame_body_len, mic))
goto xmitframe_coalesce_fail;
#if 0
/* dump calculated mic result */
{
int i;
RTW_INFO("Calculated mic result: ");
for (i = 0; i < 16; i++)
RTW_INFO(" %02x ", mic[i]);
RTW_INFO("\n");
}
#endif
/* copy right BIP mic value, total is 128bits, we use the 0~63 bits */
_rtw_memcpy(pframe - 8, mic, 8);
/*/dump all packet after mic ok
{
int pp;
RTW_INFO("pattrib->pktlen = %d\n", pattrib->pktlen);
for(pp=0;pp< pattrib->pktlen; pp++)
RTW_INFO(" %02x ", mem_start[pp]);
RTW_INFO("\n");
}*/
} else { /* unicast mgmt frame TX */
/* start to encrypt mgmt frame */
if (subtype == WIFI_DEAUTH || subtype == WIFI_DISASSOC ||
@ -2789,16 +2644,6 @@ s32 rtw_mgmt_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame
pframe += pattrib->pktlen - pattrib->hdrlen;
/* add 8 bytes CCMP IV header to length */
pattrib->pktlen += pattrib->iv_len;
#if 0
/* dump management packet include AES IV header */
{
int i;
RTW_INFO("Management pkt + IV: ");
/* for(i=0; i<pattrib->pktlen; i++) */
RTW_INFO("@@@@@@@@@@@@@\n");
}
#endif
if ((pattrib->icv_len > 0) && (pattrib->bswenc)) {
_rtw_memcpy(pframe, pattrib->icv, pattrib->icv_len);
@ -2811,16 +2656,6 @@ s32 rtw_mgmt_xmitframe_coalesce(_adapter *padapter, _pkt *pkt, struct xmit_frame
/* set protected bit must be beofre SW encrypt */
SetPrivacy(mem_start);
#if 0
/* dump management packet include AES header */
{
int i;
RTW_INFO("prepare to enc Management pkt + IV: ");
for (i = 0; i < pattrib->pktlen; i++)
RTW_INFO(" %02x ", mem_start[i]);
RTW_INFO("@@@@@@@@@@@@@\n");
}
#endif
/* software encrypt */
xmitframe_swencrypt(padapter, pxmitframe);
}
@ -2851,7 +2686,6 @@ s32 rtw_put_snap(u8 *data, u16 h_proto)
struct ieee80211_snap_hdr *snap;
u8 *oui;
snap = (struct ieee80211_snap_hdr *)data;
snap->dsap = 0xaa;
snap->ssap = 0xaa;
@ -2868,7 +2702,6 @@ s32 rtw_put_snap(u8 *data, u16 h_proto)
*(u16 *)(data + SNAP_SIZE) = htons(h_proto);
return SNAP_SIZE + sizeof(u16);
}
@ -2881,7 +2714,6 @@ void rtw_update_protection(_adapter *padapter, u8 *ie, uint ie_len)
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
struct registry_priv *pregistrypriv = &padapter->registrypriv;
switch (pxmitpriv->vcs_setting) {
case DISABLE_VCS:
pxmitpriv->vcs = NONE_VCS;
@ -2910,7 +2742,6 @@ void rtw_update_protection(_adapter *padapter, u8 *ie, uint ie_len)
}
}
void rtw_count_tx_stats(PADAPTER padapter, struct xmit_frame *pxmitframe, int sz)
@ -2959,7 +2790,6 @@ static struct xmit_buf *__rtw_alloc_cmd_xmitbuf(struct xmit_priv *pxmitpriv,
{
struct xmit_buf *pxmitbuf = NULL;
pxmitbuf = &pxmitpriv->pcmd_xmitbuf[buf_type];
if (pxmitbuf != NULL) {
pxmitbuf->priv_data = NULL;
@ -2988,7 +2818,6 @@ static struct xmit_buf *__rtw_alloc_cmd_xmitbuf(struct xmit_priv *pxmitpriv,
exit:
return pxmitbuf;
}
@ -3033,7 +2862,6 @@ struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv)
_list *plist, *phead;
_queue *pfree_queue = &pxmitpriv->free_xmit_extbuf_queue;
_enter_critical(&pfree_queue->lock, &irqL);
if (_rtw_queue_empty(pfree_queue) == _TRUE)
@ -3055,7 +2883,6 @@ struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv)
RTW_INFO("DBG_XMIT_BUF_EXT ALLOC no=%d, free_xmit_extbuf_cnt=%d\n", pxmitbuf->no, pxmitpriv->free_xmit_extbuf_cnt);
#endif
pxmitbuf->priv_data = NULL;
#if defined(CONFIG_SDIO_HCI) || defined(CONFIG_GSPI_HCI)
@ -3081,7 +2908,6 @@ struct xmit_buf *rtw_alloc_xmitbuf_ext(struct xmit_priv *pxmitpriv)
_exit_critical(&pfree_queue->lock, &irqL);
return pxmitbuf;
}
@ -3090,7 +2916,6 @@ s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
_irqL irqL;
_queue *pfree_queue = &pxmitpriv->free_xmit_extbuf_queue;
if (pxmitbuf == NULL)
return _FAIL;
@ -3106,7 +2931,6 @@ s32 rtw_free_xmitbuf_ext(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
_exit_critical(&pfree_queue->lock, &irqL);
return _SUCCESS;
}
@ -3117,7 +2941,6 @@ struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv)
_list *plist, *phead;
_queue *pfree_xmitbuf_queue = &pxmitpriv->free_xmitbuf_queue;
/* RTW_INFO("+rtw_alloc_xmitbuf\n"); */
_enter_critical(&pfree_xmitbuf_queue->lock, &irqL);
@ -3171,7 +2994,6 @@ struct xmit_buf *rtw_alloc_xmitbuf(struct xmit_priv *pxmitpriv)
_exit_critical(&pfree_xmitbuf_queue->lock, &irqL);
return pxmitbuf;
}
@ -3180,7 +3002,6 @@ s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
_irqL irqL;
_queue *pfree_xmitbuf_queue = &pxmitpriv->free_xmitbuf_queue;
/* RTW_INFO("+rtw_free_xmitbuf\n"); */
if (pxmitbuf == NULL)
@ -3209,7 +3030,6 @@ s32 rtw_free_xmitbuf(struct xmit_priv *pxmitpriv, struct xmit_buf *pxmitbuf)
_exit_critical(&pfree_xmitbuf_queue->lock, &irqL);
}
return _SUCCESS;
}
@ -3274,7 +3094,6 @@ struct xmit_frame *rtw_alloc_xmitframe(struct xmit_priv *pxmitpriv)/* (_queue *p
_list *plist, *phead;
_queue *pfree_xmit_queue = &pxmitpriv->free_xmit_queue;
_enter_critical_bh(&pfree_xmit_queue->lock, &irqL);
if (_rtw_queue_empty(pfree_xmit_queue) == _TRUE) {
@ -3294,7 +3113,6 @@ struct xmit_frame *rtw_alloc_xmitframe(struct xmit_priv *pxmitpriv)/* (_queue *p
rtw_init_xmitframe(pxframe);
return pxframe;
}
@ -3305,7 +3123,6 @@ struct xmit_frame *rtw_alloc_xmitframe_ext(struct xmit_priv *pxmitpriv)
_list *plist, *phead;
_queue *queue = &pxmitpriv->free_xframe_ext_queue;
_enter_critical_bh(&queue->lock, &irqL);
if (_rtw_queue_empty(queue) == _TRUE) {
@ -3323,7 +3140,6 @@ struct xmit_frame *rtw_alloc_xmitframe_ext(struct xmit_priv *pxmitpriv)
rtw_init_xmitframe(pxframe);
return pxframe;
}
@ -3363,7 +3179,6 @@ s32 rtw_free_xmitframe(struct xmit_priv *pxmitpriv, struct xmit_frame *pxmitfram
_adapter *padapter = pxmitpriv->adapter;
_pkt *pndis_pkt = NULL;
if (pxmitframe == NULL) {
goto exit;
}
@ -3406,7 +3221,6 @@ check_pkt_complete:
exit:
return _SUCCESS;
}
@ -3416,7 +3230,6 @@ void rtw_free_xmitframe_queue(struct xmit_priv *pxmitpriv, _queue *pframequeue)
_list *plist, *phead;
struct xmit_frame *pxmitframe;
_enter_critical_bh(&(pframequeue->lock), &irqL);
phead = get_list_head(pframequeue);
@ -3457,32 +3270,10 @@ static struct xmit_frame *dequeue_one_xmitframe(struct xmit_priv *pxmitpriv, str
while ((rtw_end_of_queue_search(xmitframe_phead, xmitframe_plist)) == _FALSE) {
pxmitframe = LIST_CONTAINOR(xmitframe_plist, struct xmit_frame, list);
/* xmitframe_plist = get_next(xmitframe_plist); */
/*#ifdef RTK_DMP_PLATFORM
#ifdef CONFIG_USB_TX_AGGREGATION
if((ptxservq->qcnt>0) && (ptxservq->qcnt<=2))
{
pxmitframe = NULL;
tasklet_schedule(&pxmitpriv->xmit_tasklet);
break;
}
#endif
#endif*/
rtw_list_delete(&pxmitframe->list);
ptxservq->qcnt--;
/* rtw_list_insert_tail(&pxmitframe->list, &phwxmit->pending); */
/* ptxservq->qcnt--; */
break;
/* pxmitframe = NULL; */
}
return pxmitframe;
@ -3565,7 +3356,6 @@ exit:
return pxmitframe;
}
struct xmit_frame *rtw_dequeue_xframe(struct xmit_priv *pxmitpriv, struct hw_xmit *phwxmit_i, sint entry)
{
_irqL irqL0;
@ -3581,7 +3371,6 @@ struct xmit_frame *rtw_dequeue_xframe(struct xmit_priv *pxmitpriv, struct hw_xmi
/* int j, tmp, acirp_cnt[4]; */
#endif
inx[0] = 0;
inx[1] = 1;
inx[2] = 2;
@ -3589,13 +3378,6 @@ struct xmit_frame *rtw_dequeue_xframe(struct xmit_priv *pxmitpriv, struct hw_xmi
if (pregpriv->wifi_spec == 1) {
int j, tmp, acirp_cnt[4];
#if 0
if (flags < XMIT_QUEUE_ENTRY) {
/* priority exchange according to the completed xmitbuf flags. */
inx[flags] = 0;
inx[0] = flags;
}
#endif
#if defined(CONFIG_USB_HCI) || defined(CONFIG_SDIO_HCI) || defined(CONFIG_PCI_HCI)
for (j = 0; j < 4; j++)
@ -3653,7 +3435,6 @@ struct tx_servq *rtw_get_sta_pending(_adapter *padapter, struct sta_info *psta,
{
struct tx_servq *ptxservq = NULL;
switch (up) {
case 1:
case 2:
@ -3682,7 +3463,6 @@ struct tx_servq *rtw_get_sta_pending(_adapter *padapter, struct sta_info *psta,
}
return ptxservq;
}
#else
@ -3692,7 +3472,6 @@ __inline static struct tx_servq *rtw_get_sta_pending
struct tx_servq *ptxservq;
struct hw_xmit *phwxmits = padapter->xmitpriv.hwxmits;
#ifdef CONFIG_RTL8711
if (IS_MCAST(psta->hwaddr)) {
@ -3735,7 +3514,6 @@ __inline static struct tx_servq *rtw_get_sta_pending
}
return ptxservq;
}
#endif
@ -3755,7 +3533,6 @@ s32 rtw_xmit_classifier(_adapter *padapter, struct xmit_frame *pxmitframe)
struct hw_xmit *phwxmits = padapter->xmitpriv.hwxmits;
sint res = _SUCCESS;
DBG_COUNTER(padapter->tx_logs.core_tx_enqueue_class);
/*
@ -3806,7 +3583,6 @@ s32 rtw_xmit_classifier(_adapter *padapter, struct xmit_frame *pxmitframe)
exit:
return res;
}
@ -3868,10 +3644,8 @@ void rtw_alloc_hwxmits(_adapter *padapter)
hwxmits[3] .sta_queue = &pxmitpriv->bk_pending;
} else {
}
}
void rtw_free_hwxmits(_adapter *padapter)
@ -4003,7 +3777,6 @@ int rtw_br_client_tx(_adapter *padapter, struct sk_buff **pskb)
if (skb_is_nonlinear(skb))
DEBUG_ERR("%s(): skb_is_nonlinear!!\n", __FUNCTION__);
#if (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 18))
res = skb_linearize(skb, GFP_ATOMIC);
#else /* (LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 18)) */
@ -4043,21 +3816,6 @@ int rtw_br_client_tx(_adapter *padapter, struct sk_buff **pskb)
*((unsigned short *)(skb->data + MACADDRLEN * 2 + 2)) = vlan_hdr;
}
}
#if 0
else {
if (*((unsigned short *)(skb->data + MACADDRLEN * 2)) == __constant_htons(ETH_P_8021Q))
is_vlan_tag = 1;
if (is_vlan_tag) {
if (ICMPV6_MCAST_MAC(skb->data) && ICMPV6_PROTO1A_VALN(skb->data))
memcpy(skb->data + MACADDRLEN, GET_MY_HWADDR(padapter), MACADDRLEN);
} else {
if (ICMPV6_MCAST_MAC(skb->data) && ICMPV6_PROTO1A(skb->data))
memcpy(skb->data + MACADDRLEN, GET_MY_HWADDR(padapter), MACADDRLEN);
}
}
#endif /* 0 */
/* check if SA is equal to our MAC */
if (memcmp(skb->data + MACADDRLEN, GET_MY_HWADDR(padapter), MACADDRLEN)) {
/* priv->ext_stats.tx_drops++; */
@ -4571,7 +4329,6 @@ sint xmitframe_enqueue_for_sleeping_sta(_adapter *padapter, struct xmit_frame *p
return ret;
}
if (bmcst) {
_enter_critical_bh(&psta->sleep_q.lock, &irqL);
@ -4615,7 +4372,6 @@ sint xmitframe_enqueue_for_sleeping_sta(_adapter *padapter, struct xmit_frame *p
}
_enter_critical_bh(&psta->sleep_q.lock, &irqL);
if (psta->state & WIFI_SLEEP_STATE) {
@ -4738,7 +4494,6 @@ void stop_sta_xmit(_adapter *padapter, struct sta_info *psta)
/* for BC/MC Frames */
psta_bmc = rtw_get_bcmc_stainfo(padapter);
_enter_critical_bh(&pxmitpriv->lock, &irqL0);
psta->state |= WIFI_SLEEP_STATE;
@ -4748,20 +4503,15 @@ void stop_sta_xmit(_adapter *padapter, struct sta_info *psta)
#endif /* CONFIG_TDLS */
pstapriv->sta_dz_bitmap |= BIT(psta->aid);
dequeue_xmitframes_to_sleeping_queue(padapter, psta, &pstaxmitpriv->vo_q.sta_pending);
rtw_list_delete(&(pstaxmitpriv->vo_q.tx_pending));
dequeue_xmitframes_to_sleeping_queue(padapter, psta, &pstaxmitpriv->vi_q.sta_pending);
rtw_list_delete(&(pstaxmitpriv->vi_q.tx_pending));
dequeue_xmitframes_to_sleeping_queue(padapter, psta, &pstaxmitpriv->be_q.sta_pending);
rtw_list_delete(&(pstaxmitpriv->be_q.tx_pending));
dequeue_xmitframes_to_sleeping_queue(padapter, psta, &pstaxmitpriv->bk_q.sta_pending);
rtw_list_delete(&(pstaxmitpriv->bk_q.tx_pending));
@ -4769,19 +4519,16 @@ void stop_sta_xmit(_adapter *padapter, struct sta_info *psta)
if (!(psta->tdls_sta_state & TDLS_LINKED_STATE) && (psta_bmc != NULL)) {
#endif /* CONFIG_TDLS */
/* for BC/MC Frames */
pstaxmitpriv = &psta_bmc->sta_xmitpriv;
dequeue_xmitframes_to_sleeping_queue(padapter, psta_bmc, &pstaxmitpriv->be_q.sta_pending);
rtw_list_delete(&(pstaxmitpriv->be_q.tx_pending));
#ifdef CONFIG_TDLS
}
#endif /* CONFIG_TDLS */
_exit_critical_bh(&pxmitpriv->lock, &irqL0);
}
void wakeup_sta_to_xmit(_adapter *padapter, struct sta_info *psta)
@ -4796,7 +4543,6 @@ void wakeup_sta_to_xmit(_adapter *padapter, struct sta_info *psta)
psta_bmc = rtw_get_bcmc_stainfo(padapter);
/* _enter_critical_bh(&psta->sleep_q.lock, &irqL); */
_enter_critical_bh(&pxmitpriv->lock, &irqL);
@ -4859,7 +4605,6 @@ void wakeup_sta_to_xmit(_adapter *padapter, struct sta_info *psta)
*/
rtw_hal_xmitframe_enqueue(padapter, pxmitframe);
}
if (psta->sleepq_len == 0) {
@ -4915,7 +4660,6 @@ void wakeup_sta_to_xmit(_adapter *padapter, struct sta_info *psta)
else
pxmitframe->attrib.mdata = 0;
pxmitframe->attrib.triggered = 1;
/*
_exit_critical_bh(&psta_bmc->sleep_q.lock, &irqL);
@ -4969,7 +4713,6 @@ void xmit_delivery_enabled_frames(_adapter *padapter, struct sta_info *psta)
struct sta_priv *pstapriv = &padapter->stapriv;
struct xmit_priv *pxmitpriv = &padapter->xmitpriv;
/* _enter_critical_bh(&psta->sleep_q.lock, &irqL); */
_enter_critical_bh(&pxmitpriv->lock, &irqL);
@ -5089,7 +4832,6 @@ struct xmit_buf *dequeue_pending_xmitbuf(
struct xmit_buf *pxmitbuf;
_queue *pqueue;
pxmitbuf = NULL;
pqueue = &pxmitpriv->pending_xmitbuf_queue;
@ -5119,7 +4861,6 @@ static struct xmit_buf *dequeue_pending_xmitbuf_under_survey(
#endif
_queue *pqueue;
pxmitbuf = NULL;
pqueue = &pxmitpriv->pending_xmitbuf_queue;
@ -5241,7 +4982,6 @@ thread_return rtw_xmit_thread(thread_context context)
s32 err;
PADAPTER padapter;
err = _SUCCESS;
padapter = (PADAPTER)context;
@ -5460,9 +5200,7 @@ void rtw_sctx_init(struct submit_ctx *sctx, int timeout_ms)
{
sctx->timeout_ms = timeout_ms;
sctx->submit_time = rtw_get_current_time();
#ifdef PLATFORM_LINUX /* TODO: add condition wating interface for other os */
init_completion(&sctx->done);
#endif
sctx->status = RTW_SCTX_SUBMITTED;
}
@ -5472,7 +5210,6 @@ int rtw_sctx_wait(struct submit_ctx *sctx, const char *msg)
unsigned long expire;
int status = 0;
#ifdef PLATFORM_LINUX
expire = sctx->timeout_ms ? msecs_to_jiffies(sctx->timeout_ms) : MAX_SCHEDULE_TIMEOUT;
if (!wait_for_completion_timeout(&sctx->done, expire)) {
/* timeout, do something?? */
@ -5480,7 +5217,6 @@ int rtw_sctx_wait(struct submit_ctx *sctx, const char *msg)
RTW_INFO("%s timeout: %s\n", __func__, msg);
} else
status = sctx->status;
#endif
if (status == RTW_SCTX_DONE_SUCCESS)
ret = _SUCCESS;
@ -5509,9 +5245,7 @@ void rtw_sctx_done_err(struct submit_ctx **sctx, int status)
if (rtw_sctx_chk_waring_status(status))
RTW_INFO("%s status:%d\n", __func__, status);
(*sctx)->status = status;
#ifdef PLATFORM_LINUX
complete(&((*sctx)->done));
#endif
*sctx = NULL;
}
}