Staging: rt2870: remove dead QOS_DLS_SUPPORT code

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Bartlomiej Zolnierkiewicz 2009-04-26 16:05:09 +02:00 committed by Greg Kroah-Hartman
parent 0aa7c8ddc0
commit bbdf6e888d
20 changed files with 1 additions and 3371 deletions

View file

@ -72,9 +72,6 @@ VOID ActionStateMachineInit(
StateMachineSetAction(S, ACT_IDLE, MT2_PEER_QOS_CATE, (STATE_MACHINE_FUNC)PeerQOSAction);
StateMachineSetAction(S, ACT_IDLE, MT2_PEER_DLS_CATE, (STATE_MACHINE_FUNC)ReservedAction);
#ifdef QOS_DLS_SUPPORT
StateMachineSetAction(S, ACT_IDLE, MT2_PEER_DLS_CATE, (STATE_MACHINE_FUNC)PeerDLSAction);
#endif // QOS_DLS_SUPPORT //
#ifdef DOT11_N_SUPPORT
StateMachineSetAction(S, ACT_IDLE, MT2_PEER_BA_CATE, (STATE_MACHINE_FUNC)PeerBAAction);
@ -137,13 +134,7 @@ VOID MlmeADDBAAction(
if (ADHOC_ON(pAd))
ActHeaderInit(pAd, &Frame.Hdr, pInfo->pAddr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#ifdef QOS_DLS_SUPPORT
if (pAd->MacTab.Content[pInfo->Wcid].ValidAsDls)
ActHeaderInit(pAd, &Frame.Hdr, pInfo->pAddr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#endif // QOS_DLS_SUPPORT //
ActHeaderInit(pAd, &Frame.Hdr, pAd->CommonCfg.Bssid, pAd->CurrentAddress, pInfo->pAddr);
}
#endif // CONFIG_STA_SUPPORT //
@ -248,11 +239,6 @@ VOID MlmeDELBAAction(
if (ADHOC_ON(pAd))
ActHeaderInit(pAd, &Frame.Hdr, pAd->MacTab.Content[pInfo->Wcid].Addr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#ifdef QOS_DLS_SUPPORT
if (pAd->MacTab.Content[pInfo->Wcid].ValidAsDls)
ActHeaderInit(pAd, &Frame.Hdr, pAd->MacTab.Content[pInfo->Wcid].Addr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#endif // QOS_DLS_SUPPORT //
ActHeaderInit(pAd, &Frame.Hdr, pAd->CommonCfg.Bssid, pAd->CurrentAddress, pAd->MacTab.Content[pInfo->Wcid].Addr);
}
#endif // CONFIG_STA_SUPPORT //
@ -300,39 +286,6 @@ VOID PeerQOSAction(
{
}
#ifdef QOS_DLS_SUPPORT
VOID PeerDLSAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
UCHAR Action = Elem->Msg[LENGTH_802_11+1];
switch(Action)
{
case ACTION_DLS_REQUEST:
#ifdef CONFIG_STA_SUPPORT
IF_DEV_CONFIG_OPMODE_ON_STA(pAd)
PeerDlsReqAction(pAd, Elem);
#endif // CONFIG_STA_SUPPORT //
break;
case ACTION_DLS_RESPONSE:
#ifdef CONFIG_STA_SUPPORT
IF_DEV_CONFIG_OPMODE_ON_STA(pAd)
PeerDlsRspAction(pAd, Elem);
#endif // CONFIG_STA_SUPPORT //
break;
case ACTION_DLS_TEARDOWN:
#ifdef CONFIG_STA_SUPPORT
IF_DEV_CONFIG_OPMODE_ON_STA(pAd)
PeerDlsTearDownAction(pAd, Elem);
#endif // CONFIG_STA_SUPPORT //
break;
}
}
#endif // QOS_DLS_SUPPORT //
#ifdef DOT11_N_SUPPORT
VOID PeerBAAction(
IN PRTMP_ADAPTER pAd,

View file

@ -1226,11 +1226,6 @@ VOID PeerAddBAReqAction(
if (ADHOC_ON(pAd))
ActHeaderInit(pAd, &ADDframe.Hdr, pAddr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#ifdef QOS_DLS_SUPPORT
if (pAd->MacTab.Content[Elem->Wcid].ValidAsDls)
ActHeaderInit(pAd, &ADDframe.Hdr, pAddr, pAd->CurrentAddress, pAd->CommonCfg.Bssid);
else
#endif // QOS_DLS_SUPPORT //
ActHeaderInit(pAd, &ADDframe.Hdr, pAd->CommonCfg.Bssid, pAd->CurrentAddress, pAddr);
}
#endif // CONFIG_STA_SUPPORT //

View file

@ -1163,15 +1163,6 @@ VOID RTMPWriteTxWI_Data(
pTxWI->ACK = TX_BLK_TEST_FLAG(pTxBlk, fTX_bAckRequired);
pTxWI->txop = pTxBlk->FrameGap;
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
if (pMacEntry &&
(pAd->StaCfg.BssType == BSS_INFRA) &&
(pMacEntry->ValidAsDls == TRUE))
pTxWI->WirelessCliID = BSSID_WCID;
else
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
pTxWI->WirelessCliID = pTxBlk->Wcid;
pTxWI->MPDUtotalByteCount = pTxBlk->MpduHeaderLen + pTxBlk->SrcBufLen;
@ -1774,11 +1765,6 @@ MAC_TABLE_ENTRY *MacTableInsertEntry(
(pAd->MacTab.Content[i].ValidAsWDS == FALSE) &&
(pAd->MacTab.Content[i].ValidAsApCli== FALSE) &&
(pAd->MacTab.Content[i].ValidAsMesh == FALSE)
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
&& (pAd->MacTab.Content[i].ValidAsDls == FALSE)
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
)
{
pEntry = &pAd->MacTab.Content[i];
@ -1790,20 +1776,6 @@ MAC_TABLE_ENTRY *MacTableInsertEntry(
pEntry->PairwiseKey.KeyLen = 0;
pEntry->PairwiseKey.CipherAlg = CIPHER_NONE;
}
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
if (apidx >= MIN_NET_DEVICE_FOR_DLS)
{
pEntry->ValidAsCLI = FALSE;
pEntry->ValidAsWDS = FALSE;
pEntry->ValidAsApCli = FALSE;
pEntry->ValidAsMesh = FALSE;
pEntry->ValidAsDls = TRUE;
pEntry->isCached = FALSE;
}
else
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
{
#ifdef CONFIG_STA_SUPPORT
@ -1832,12 +1804,6 @@ MAC_TABLE_ENTRY *MacTableInsertEntry(
pEntry->apidx = (apidx - MIN_NET_DEVICE_FOR_APCLI);
else if (pEntry->ValidAsWDS)
pEntry->apidx = (apidx - MIN_NET_DEVICE_FOR_WDS);
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
else if (pEntry->ValidAsDls)
pEntry->apidx = (apidx - MIN_NET_DEVICE_FOR_DLS);
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
else
pEntry->apidx = apidx;
@ -1856,12 +1822,6 @@ MAC_TABLE_ENTRY *MacTableInsertEntry(
pEntry->GTKState = REKEY_NEGOTIATING;
pEntry->PairwiseKey.KeyLen = 0;
pEntry->PairwiseKey.CipherAlg = CIPHER_NONE;
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
if (pEntry->ValidAsDls == TRUE)
pEntry->PortSecured = WPA_802_1X_PORT_SECURED;
#endif //QOS_DLS_SUPPORT
#endif // CONFIG_STA_SUPPORT //
pEntry->PortSecured = WPA_802_1X_PORT_NOT_SECURED;
pEntry->PMKID_CacheIdx = ENTRY_NOT_FOUND;
COPY_MAC_ADDR(pEntry->Addr, pAddr);
@ -1933,11 +1893,6 @@ BOOLEAN MacTableDeleteEntry(
pEntry = &pAd->MacTab.Content[wcid];
if (pEntry && (pEntry->ValidAsCLI || pEntry->ValidAsApCli || pEntry->ValidAsWDS || pEntry->ValidAsMesh
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
|| pEntry->ValidAsDls
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
))
{
if (MAC_ADDR_EQUAL(pEntry->Addr, pAddr))

View file

@ -2036,11 +2036,6 @@ VOID RTMPAddWcidAttributeEntry(
Wcid = pEntry->Aid;
else if (pEntry && INFRA_ON(pAd))
{
#ifdef QOS_DLS_SUPPORT
if (pEntry->ValidAsDls == TRUE)
Wcid = pEntry->Aid;
else
#endif // QOS_DLS_SUPPORT //
Wcid = BSSID_WCID;
}
else
@ -2057,14 +2052,6 @@ VOID RTMPAddWcidAttributeEntry(
{
if (pEntry && pEntry->ValidAsMesh)
WCIDAttri = (CipherAlg<<1) | PAIRWISEKEYTABLE;
#ifdef QOS_DLS_SUPPORT
else if ((pEntry) && (pEntry->ValidAsDls) &&
((CipherAlg == CIPHER_TKIP) ||
(CipherAlg == CIPHER_TKIP_NO_MIC) ||
(CipherAlg == CIPHER_AES) ||
(CipherAlg == CIPHER_NONE)))
WCIDAttri = (CipherAlg<<1) | PAIRWISEKEYTABLE;
#endif // QOS_DLS_SUPPORT //
else
WCIDAttri = (CipherAlg<<1) | SHAREDKEYTABLE;
}

View file

@ -1374,290 +1374,3 @@ BOOLEAN PeerWpaMessageSanity(
return TRUE;
}
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
BOOLEAN MlmeDlsReqSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PRT_802_11_DLS *pDLS,
OUT PUSHORT pReason)
{
MLME_DLS_REQ_STRUCT *pInfo;
pInfo = (MLME_DLS_REQ_STRUCT *)Msg;
*pDLS = pInfo->pDLS;
*pReason = pInfo->Reason;
return TRUE;
}
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
#ifdef QOS_DLS_SUPPORT
BOOLEAN PeerDlsReqSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pCapabilityInfo,
OUT USHORT *pDlsTimeout,
OUT UCHAR *pRatesLen,
OUT UCHAR Rates[],
OUT UCHAR *pHtCapabilityLen,
OUT HT_CAPABILITY_IE *pHtCapability)
{
CHAR *Ptr;
PFRAME_802_11 Fr = (PFRAME_802_11)Msg;
PEID_STRUCT eid_ptr;
// to prevent caller from using garbage output value
*pCapabilityInfo = 0;
*pDlsTimeout = 0;
*pHtCapabilityLen = 0;
Ptr = Fr->Octet;
// offset to destination MAC address (Category and Action field)
Ptr += 2;
// get DA from payload and advance the pointer
NdisMoveMemory(pDA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
// get SA from payload and advance the pointer
NdisMoveMemory(pSA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
// get capability info from payload and advance the pointer
NdisMoveMemory(pCapabilityInfo, Ptr, 2);
Ptr += 2;
// get capability info from payload and advance the pointer
NdisMoveMemory(pDlsTimeout, Ptr, 2);
Ptr += 2;
// Category and Action field + DA + SA + capability + Timeout
eid_ptr = (PEID_STRUCT) &Fr->Octet[18];
while (((UCHAR*)eid_ptr + eid_ptr->Len + 1) < ((UCHAR*)Fr + MsgLen))
{
switch(eid_ptr->Eid)
{
case IE_SUPP_RATES:
if ((eid_ptr->Len <= MAX_LEN_OF_SUPPORTED_RATES) && (eid_ptr->Len > 0))
{
NdisMoveMemory(Rates, eid_ptr->Octet, eid_ptr->Len);
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsReqSanity - IE_SUPP_RATES., Len=%d. Rates[0]=%x\n",eid_ptr->Len, Rates[0]));
DBGPRINT(RT_DEBUG_TRACE, ("Rates[1]=%x %x %x %x %x %x %x\n", Rates[1], Rates[2], Rates[3], Rates[4], Rates[5], Rates[6], Rates[7]));
*pRatesLen = eid_ptr->Len;
}
else
{
*pRatesLen = 8;
Rates[0] = 0x82;
Rates[1] = 0x84;
Rates[2] = 0x8b;
Rates[3] = 0x96;
Rates[4] = 0x12;
Rates[5] = 0x24;
Rates[6] = 0x48;
Rates[7] = 0x6c;
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsReqSanity - wrong IE_SUPP_RATES., Len=%d\n",eid_ptr->Len));
}
break;
case IE_EXT_SUPP_RATES:
if (eid_ptr->Len + *pRatesLen <= MAX_LEN_OF_SUPPORTED_RATES)
{
NdisMoveMemory(&Rates[*pRatesLen], eid_ptr->Octet, eid_ptr->Len);
*pRatesLen = (*pRatesLen) + eid_ptr->Len;
}
else
{
NdisMoveMemory(&Rates[*pRatesLen], eid_ptr->Octet, MAX_LEN_OF_SUPPORTED_RATES - (*pRatesLen));
*pRatesLen = MAX_LEN_OF_SUPPORTED_RATES;
}
break;
case IE_HT_CAP:
if (eid_ptr->Len >= sizeof(HT_CAPABILITY_IE))
{
NdisMoveMemory(pHtCapability, eid_ptr->Octet, sizeof(HT_CAPABILITY_IE));
*(USHORT *)(&pHtCapability->HtCapInfo) = cpu2le16(*(USHORT *)(&pHtCapability->HtCapInfo));
*(USHORT *)(&pHtCapability->ExtHtCapInfo) = cpu2le16(*(USHORT *)(&pHtCapability->ExtHtCapInfo));
*pHtCapabilityLen = sizeof(HT_CAPABILITY_IE);
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsReqSanity - IE_HT_CAP\n"));
}
else
{
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsReqSanity - wrong IE_HT_CAP.eid_ptr->Len = %d\n", eid_ptr->Len));
}
break;
default:
break;
}
eid_ptr = (PEID_STRUCT)((UCHAR*)eid_ptr + 2 + eid_ptr->Len);
}
return TRUE;
}
BOOLEAN PeerDlsRspSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pCapabilityInfo,
OUT USHORT *pStatus,
OUT UCHAR *pRatesLen,
OUT UCHAR Rates[],
OUT UCHAR *pHtCapabilityLen,
OUT HT_CAPABILITY_IE *pHtCapability)
{
CHAR *Ptr;
PFRAME_802_11 Fr = (PFRAME_802_11)Msg;
PEID_STRUCT eid_ptr;
// to prevent caller from using garbage output value
*pStatus = 0;
*pCapabilityInfo = 0;
*pHtCapabilityLen = 0;
Ptr = Fr->Octet;
// offset to destination MAC address (Category and Action field)
Ptr += 2;
// get status code from payload and advance the pointer
NdisMoveMemory(pStatus, Ptr, 2);
Ptr += 2;
// get DA from payload and advance the pointer
NdisMoveMemory(pDA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
// get SA from payload and advance the pointer
NdisMoveMemory(pSA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
if (pStatus == 0)
{
// get capability info from payload and advance the pointer
NdisMoveMemory(pCapabilityInfo, Ptr, 2);
Ptr += 2;
}
// Category and Action field + status code + DA + SA + capability
eid_ptr = (PEID_STRUCT) &Fr->Octet[18];
while (((UCHAR*)eid_ptr + eid_ptr->Len + 1) < ((UCHAR*)Fr + MsgLen))
{
switch(eid_ptr->Eid)
{
case IE_SUPP_RATES:
if ((eid_ptr->Len <= MAX_LEN_OF_SUPPORTED_RATES) && (eid_ptr->Len > 0))
{
NdisMoveMemory(Rates, eid_ptr->Octet, eid_ptr->Len);
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsRspSanity - IE_SUPP_RATES., Len=%d. Rates[0]=%x\n",eid_ptr->Len, Rates[0]));
DBGPRINT(RT_DEBUG_TRACE, ("Rates[1]=%x %x %x %x %x %x %x\n", Rates[1], Rates[2], Rates[3], Rates[4], Rates[5], Rates[6], Rates[7]));
*pRatesLen = eid_ptr->Len;
}
else
{
*pRatesLen = 8;
Rates[0] = 0x82;
Rates[1] = 0x84;
Rates[2] = 0x8b;
Rates[3] = 0x96;
Rates[4] = 0x12;
Rates[5] = 0x24;
Rates[6] = 0x48;
Rates[7] = 0x6c;
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsRspSanity - wrong IE_SUPP_RATES., Len=%d\n",eid_ptr->Len));
}
break;
case IE_EXT_SUPP_RATES:
if (eid_ptr->Len + *pRatesLen <= MAX_LEN_OF_SUPPORTED_RATES)
{
NdisMoveMemory(&Rates[*pRatesLen], eid_ptr->Octet, eid_ptr->Len);
*pRatesLen = (*pRatesLen) + eid_ptr->Len;
}
else
{
NdisMoveMemory(&Rates[*pRatesLen], eid_ptr->Octet, MAX_LEN_OF_SUPPORTED_RATES - (*pRatesLen));
*pRatesLen = MAX_LEN_OF_SUPPORTED_RATES;
}
break;
case IE_HT_CAP:
if (eid_ptr->Len >= sizeof(HT_CAPABILITY_IE))
{
NdisMoveMemory(pHtCapability, eid_ptr->Octet, sizeof(HT_CAPABILITY_IE));
*(USHORT *)(&pHtCapability->HtCapInfo) = cpu2le16(*(USHORT *)(&pHtCapability->HtCapInfo));
*(USHORT *)(&pHtCapability->ExtHtCapInfo) = cpu2le16(*(USHORT *)(&pHtCapability->ExtHtCapInfo));
*pHtCapabilityLen = sizeof(HT_CAPABILITY_IE);
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsRspSanity - IE_HT_CAP\n"));
}
else
{
DBGPRINT(RT_DEBUG_TRACE, ("PeerDlsRspSanity - wrong IE_HT_CAP.eid_ptr->Len = %d\n", eid_ptr->Len));
}
break;
default:
break;
}
eid_ptr = (PEID_STRUCT)((UCHAR*)eid_ptr + 2 + eid_ptr->Len);
}
return TRUE;
}
BOOLEAN PeerDlsTearDownSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pReason)
{
CHAR *Ptr;
PFRAME_802_11 Fr = (PFRAME_802_11)Msg;
// to prevent caller from using garbage output value
*pReason = 0;
Ptr = Fr->Octet;
// offset to destination MAC address (Category and Action field)
Ptr += 2;
// get DA from payload and advance the pointer
NdisMoveMemory(pDA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
// get SA from payload and advance the pointer
NdisMoveMemory(pSA, Ptr, MAC_ADDR_LEN);
Ptr += MAC_ADDR_LEN;
// get reason code from payload and advance the pointer
NdisMoveMemory(pReason, Ptr, 2);
Ptr += 2;
return TRUE;
}
#endif // QOS_DLS_SUPPORT //

View file

@ -510,11 +510,6 @@ NDIS_STATUS MlmeInit(
WpaPskStateMachineInit(pAd, &pAd->Mlme.WpaPskMachine, pAd->Mlme.WpaPskFunc);
AironetStateMachineInit(pAd, &pAd->Mlme.AironetMachine, pAd->Mlme.AironetFunc);
#ifdef QOS_DLS_SUPPORT
DlsStateMachineInit(pAd, &pAd->Mlme.DlsMachine, pAd->Mlme.DlsFunc);
#endif // QOS_DLS_SUPPORT //
// Since we are using switch/case to implement it, the init is different from the above
// state machine init
MlmeCntlInit(pAd, &pAd->Mlme.CntlMachine, NULL);
@ -630,12 +625,6 @@ VOID MlmeHandler(
case AIRONET_STATE_MACHINE:
StateMachinePerformAction(pAd, &pAd->Mlme.AironetMachine, Elem);
break;
#ifdef QOS_DLS_SUPPORT
case DLS_STATE_MACHINE:
StateMachinePerformAction(pAd, &pAd->Mlme.DlsMachine, Elem);
break;
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
case ACTION_STATE_MACHINE:
@ -694,9 +683,6 @@ VOID MlmeHalt(
#ifdef CONFIG_STA_SUPPORT
IF_DEV_CONFIG_OPMODE_ON_STA(pAd)
{
#ifdef QOS_DLS_SUPPORT
UCHAR i;
#endif // QOS_DLS_SUPPORT //
// Cancel pending timers
RTMPCancelTimer(&pAd->MlmeAux.AssocTimer, &Cancelled);
RTMPCancelTimer(&pAd->MlmeAux.ReassocTimer, &Cancelled);
@ -704,13 +690,6 @@ VOID MlmeHalt(
RTMPCancelTimer(&pAd->MlmeAux.AuthTimer, &Cancelled);
RTMPCancelTimer(&pAd->MlmeAux.BeaconTimer, &Cancelled);
RTMPCancelTimer(&pAd->MlmeAux.ScanTimer, &Cancelled);
#ifdef QOS_DLS_SUPPORT
for (i=0; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
RTMPCancelTimer(&pAd->StaCfg.DLSEntry[i].Timer, &Cancelled);
}
#endif // QOS_DLS_SUPPORT //
}
#endif // CONFIG_STA_SUPPORT //
@ -1028,11 +1007,6 @@ VOID STAMlmePeriodicExec(
if (INFRA_ON(pAd))
{
#ifdef QOS_DLS_SUPPORT
// Check DLS time out, then tear down those session
RTMPCheckDLSTimeOut(pAd);
#endif // QOS_DLS_SUPPORT //
// Is PSM bit consistent with user power management policy?
// This is the only place that will set PSM bit ON.
if (!OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_DOZE))
@ -4877,9 +4851,6 @@ VOID MlmeRestartStateMachine(
#ifdef CONFIG_STA_SUPPORT
IF_DEV_CONFIG_OPMODE_ON_STA(pAd)
{
#ifdef QOS_DLS_SUPPORT
UCHAR i;
#endif // QOS_DLS_SUPPORT //
// Cancel all timer events
// Be careful to cancel new added timer
RTMPCancelTimer(&pAd->MlmeAux.AssocTimer, &Cancelled);
@ -4888,13 +4859,6 @@ VOID MlmeRestartStateMachine(
RTMPCancelTimer(&pAd->MlmeAux.AuthTimer, &Cancelled);
RTMPCancelTimer(&pAd->MlmeAux.BeaconTimer, &Cancelled);
RTMPCancelTimer(&pAd->MlmeAux.ScanTimer, &Cancelled);
#ifdef QOS_DLS_SUPPORT
for (i=0; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
RTMPCancelTimer(&pAd->StaCfg.DLSEntry[i].Timer, &Cancelled);
}
#endif // QOS_DLS_SUPPORT //
}
#endif // CONFIG_STA_SUPPORT //
@ -4915,9 +4879,6 @@ VOID MlmeRestartStateMachine(
pAd->Mlme.AuthRspMachine.CurrState = AUTH_RSP_IDLE;
pAd->Mlme.SyncMachine.CurrState = SYNC_IDLE;
pAd->Mlme.ActMachine.CurrState = ACT_IDLE;
#ifdef QOS_DLS_SUPPORT
pAd->Mlme.DlsMachine.CurrState = DLS_IDLE;
#endif // QOS_DLS_SUPPORT //
}
#endif // CONFIG_STA_SUPPORT //
@ -8109,11 +8070,6 @@ BOOLEAN RTMPCheckEntryEnableAutoRateSwitch(
}
else
result = FALSE;
#ifdef QOS_DLS_SUPPORT
if (pEntry && (pEntry->ValidAsDls))
result = pAd->StaCfg.bAutoTxRateSwitch;
#endif // QOS_DLS_SUPPORT //
}
#endif // CONFIG_STA_SUPPORT //

View file

@ -1773,34 +1773,6 @@ VOID CMDHandler(
}
break;
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
// avoid in interrupt when write key
case RT_CMD_SET_KEY_TABLE: //General call for AsicAddPairwiseKeyEntry()
{
RT_ADD_PAIRWISE_KEY_ENTRY KeyInfo;
KeyInfo = *((PRT_ADD_PAIRWISE_KEY_ENTRY)(pData));
AsicAddPairwiseKeyEntry(pAd,
KeyInfo.MacAddr,
(UCHAR)KeyInfo.MacTabMatchWCID,
&KeyInfo.CipherKey);
}
break;
case RT_CMD_SET_RX_WCID_TABLE: //General call for RTMPAddWcidAttributeEntry()
{
PMAC_TABLE_ENTRY pEntry ;
pEntry = (PMAC_TABLE_ENTRY)(pData);
RTMPAddWcidAttributeEntry(pAd,
BSS0,
0,
pEntry->PairwiseKey.CipherAlg,
pEntry);
}
break;
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
case CMDTHREAD_SET_CLIENT_MAC_ENTRY:
{
MAC_TABLE_ENTRY *pEntry;

View file

@ -1348,29 +1348,6 @@ typedef struct _MLME_START_REQ_STRUCT {
UCHAR SsidLen;
} MLME_START_REQ_STRUCT, *PMLME_START_REQ_STRUCT;
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
// structure for DLS
typedef struct _RT_802_11_DLS {
USHORT TimeOut; // Use to time out while slience, unit: second , set by UI
USHORT CountDownTimer; // Use to time out while slience,unit: second , used by driver only
NDIS_802_11_MAC_ADDRESS MacAddr; // set by UI
UCHAR Status; // 0: none , 1: wait STAkey, 2: finish DLS setup , set by driver only
BOOLEAN Valid; // 1: valid , 0: invalid , set by UI, use to setup or tear down DLS link
RALINK_TIMER_STRUCT Timer; // Use to time out while handshake
USHORT Sequence;
USHORT MacTabMatchWCID; // ASIC
BOOLEAN bHTCap;
PVOID pAd;
} RT_802_11_DLS, *PRT_802_11_DLS;
typedef struct _MLME_DLS_REQ_STRUCT {
PRT_802_11_DLS pDLS;
USHORT Reason;
} MLME_DLS_REQ_STRUCT, *PMLME_DLS_REQ_STRUCT;
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
typedef struct PACKED {
UCHAR Eid;
UCHAR Len;

View file

@ -678,9 +678,6 @@ enum {
#endif // RT2870 //
RAIO_OFF = 10,
RAIO_ON = 11,
#ifdef QOS_DLS_SUPPORT
SHOW_DLS_ENTRY_INFO = 19,
#endif // QOS_DLS_SUPPORT //
SHOW_CFG_VALUE = 20,
SHOW_ADHOC_ENTRY_INFO = 21,
};
@ -949,29 +946,6 @@ typedef struct _RT_LLTD_ASSOICATION_TABLE {
#endif // LLTD_SUPPORT //
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
//rt2860, kathy 2007-0118
// structure for DLS
typedef struct _RT_802_11_DLS_UI {
USHORT TimeOut; // unit: second , set by UI
USHORT CountDownTimer; // unit: second , used by driver only
NDIS_802_11_MAC_ADDRESS MacAddr; // set by UI
UCHAR Status; // 0: none , 1: wait STAkey, 2: finish DLS setup , set by driver only
BOOLEAN Valid; // 1: valid , 0: invalid , set by UI, use to setup or tear down DLS link
} RT_802_11_DLS_UI, *PRT_802_11_DLS_UI;
typedef struct _RT_802_11_DLS_INFO {
RT_802_11_DLS_UI Entry[MAX_NUMBER_OF_DLS_ENTRY];
UCHAR num;
} RT_802_11_DLS_INFO, *PRT_802_11_DLS_INFO;
typedef enum _RT_802_11_DLS_MODE {
DLS_NONE,
DLS_WAIT_KEY,
DLS_FINISH
} RT_802_11_DLS_MODE;
#endif // QOS_DLS_SUPPORT //
#ifdef WPA_SUPPLICANT_SUPPORT
#ifndef NATIVE_WPA_SUPPLICANT_SUPPORT
#define RT_ASSOC_EVENT_FLAG 0x0101

View file

@ -52,9 +52,6 @@ BUILD_TIMER_FUNCTION(LeapAuthTimeout);
#endif
BUILD_TIMER_FUNCTION(StaQuickResponeForRateUpExec);
BUILD_TIMER_FUNCTION(WpaDisassocApAndBlockAssoc);
#ifdef QOS_DLS_SUPPORT
BUILD_TIMER_FUNCTION(DlsTimeoutAction);
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
// for wireless system event message

View file

@ -553,10 +553,6 @@ DECLARE_TIMER_FUNCTION(StaQuickResponeForRateUpExec);
DECLARE_TIMER_FUNCTION(WpaDisassocApAndBlockAssoc);
DECLARE_TIMER_FUNCTION(PsPollWakeExec);
DECLARE_TIMER_FUNCTION(RadioOnExec);
#ifdef QOS_DLS_SUPPORT
DECLARE_TIMER_FUNCTION(DlsTimeoutAction);
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
void RTMP_GetCurrentSystemTime(LARGE_INTEGER *time);

View file

@ -218,37 +218,6 @@ int rt28xx_close(IN PNET_DEV dev)
AsicForceWakeup(pAd, TRUE);
}
#ifdef QOS_DLS_SUPPORT
// send DLS-TEAR_DOWN message,
if (pAd->CommonCfg.bDLSCapable)
{
UCHAR i;
// tear down local dls table entry
for (i=0; i<MAX_NUM_OF_INIT_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
}
}
// tear down peer dls table entry
for (i=MAX_NUM_OF_INIT_DLS_ENTRY; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
}
}
RT28XX_MLME_HANDLER(pAd);
}
#endif // QOS_DLS_SUPPORT //
if (INFRA_ON(pAd) &&
(!RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_NIC_NOT_EXIST)))
{

View file

@ -821,23 +821,6 @@ static void rtmp_read_sta_wmm_parms_from_file(IN PRTMP_ADAPTER pAd, char *tmpbu
DBGPRINT(RT_DEBUG_TRACE, ("WmmCapable=%d\n", pAd->CommonCfg.bWmmCapable));
}
#ifdef QOS_DLS_SUPPORT
//DLSCapable
if(RTMPGetKeyParameter("DLSCapable", tmpbuf, 32, buffer))
{
if(simple_strtol(tmpbuf, 0, 10) != 0) //Enable
{
pAd->CommonCfg.bDLSCapable = TRUE;
}
else //Disable
{
pAd->CommonCfg.bDLSCapable = FALSE;
}
DBGPRINT(RT_DEBUG_TRACE, ("bDLSCapable=%d\n", pAd->CommonCfg.bDLSCapable));
}
#endif // QOS_DLS_SUPPORT //
//AckPolicy for AC_BK, AC_BE, AC_VI, AC_VO
if(RTMPGetKeyParameter("AckPolicy", tmpbuf, 32, buffer))
{

View file

@ -1261,15 +1261,6 @@ typedef struct _MLME_STRUCT {
// Action
STATE_MACHINE ActMachine;
#ifdef QOS_DLS_SUPPORT
STATE_MACHINE DlsMachine;
STATE_MACHINE_FUNC DlsFunc[DLS_FUNC_SIZE];
#endif // QOS_DLS_SUPPORT //
ULONG ChannelQuality; // 0..100, Channel Quality Indication for Roaming
ULONG Now32; // latch the value of NdisGetSystemUpTime()
ULONG LastSendNULLpsmTime;
@ -2076,10 +2067,6 @@ typedef struct _STA_ADMIN_CONFIG {
UCHAR DtimCount; // 0.. DtimPeriod-1
UCHAR DtimPeriod; // default = 3
#ifdef QOS_DLS_SUPPORT
RT_802_11_DLS DLSEntry[MAX_NUM_OF_DLS_ENTRY];
UCHAR DlsReplayCounter[8];
#endif // QOS_DLS_SUPPORT //
////////////////////////////////////////////////////////////////////////////////////////
// This is only for WHQL test.
BOOLEAN WhqlTest;
@ -2252,14 +2239,6 @@ typedef struct _MAC_TABLE_ENTRY {
UCHAR TxRateUpPenalty; // extra # of second penalty due to last unstable condition
//====================================================
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
UINT MatchDlsEntryIdx; // indicate the index in pAd->StaCfg.DLSEntry
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
BOOLEAN fNoisyEnvironment;
BOOLEAN fLastSecAccordingRSSI;
UCHAR LastSecTxRateChangeAction; // 0: no change, 1:rate UP, 2:rate down
@ -3679,22 +3658,6 @@ VOID PeerQOSAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
#ifdef QOS_DLS_SUPPORT
VOID PeerDLSAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
#endif // QOS_DLS_SUPPORT //
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
VOID DlsParmFill(
IN PRTMP_ADAPTER pAd,
IN OUT MLME_DLS_REQ_STRUCT *pDlsReq,
IN PRT_802_11_DLS pDls,
IN USHORT reason);
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
#ifdef DOT11_N_SUPPORT
VOID RECBATimerTimeout(
IN PVOID SystemSpecific1,
@ -4649,142 +4612,6 @@ VOID PeerAuthSimpleRspGenAndSend(
// Private routines in dls.c
//
#ifdef CONFIG_STA_SUPPORT
#ifdef QOS_DLS_SUPPORT
void DlsStateMachineInit(
IN PRTMP_ADAPTER pAd,
IN STATE_MACHINE *Sm,
OUT STATE_MACHINE_FUNC Trans[]);
VOID MlmeDlsReqAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
VOID PeerDlsReqAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
VOID PeerDlsRspAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
VOID MlmeDlsTearDownAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
VOID PeerDlsTearDownAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
VOID RTMPCheckDLSTimeOut(
IN PRTMP_ADAPTER pAd);
BOOLEAN RTMPRcvFrameDLSCheck(
IN PRTMP_ADAPTER pAd,
IN PHEADER_802_11 pHeader,
IN ULONG Len,
IN PRT28XX_RXD_STRUC pRxD);
INT RTMPCheckDLSFrame(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pDA);
VOID RTMPSendDLSTearDownFrame(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pDA);
NDIS_STATUS RTMPSendSTAKeyRequest(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pDA);
NDIS_STATUS RTMPSendSTAKeyHandShake(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pDA);
VOID DlsTimeoutAction(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3);
BOOLEAN MlmeDlsReqSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PRT_802_11_DLS *pDLS,
OUT PUSHORT pReason);
INT Set_DlsEntryInfo_Display_Proc(
IN PRTMP_ADAPTER pAd,
IN PUCHAR arg);
MAC_TABLE_ENTRY *MacTableInsertDlsEntry(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pAddr,
IN UINT DlsEntryIdx);
BOOLEAN MacTableDeleteDlsEntry(
IN PRTMP_ADAPTER pAd,
IN USHORT wcid,
IN PUCHAR pAddr);
MAC_TABLE_ENTRY *DlsEntryTableLookup(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pAddr,
IN BOOLEAN bResetIdelCount);
MAC_TABLE_ENTRY *DlsEntryTableLookupByWcid(
IN PRTMP_ADAPTER pAd,
IN UCHAR wcid,
IN PUCHAR pAddr,
IN BOOLEAN bResetIdelCount);
INT Set_DlsAddEntry_Proc(
IN PRTMP_ADAPTER pAd,
IN PUCHAR arg);
INT Set_DlsTearDownEntry_Proc(
IN PRTMP_ADAPTER pAd,
IN PUCHAR arg);
#endif // QOS_DLS_SUPPORT //
#endif // CONFIG_STA_SUPPORT //
#ifdef QOS_DLS_SUPPORT
BOOLEAN PeerDlsReqSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pCapabilityInfo,
OUT USHORT *pDlsTimeout,
OUT UCHAR *pRatesLen,
OUT UCHAR Rates[],
OUT UCHAR *pHtCapabilityLen,
OUT HT_CAPABILITY_IE *pHtCapability);
BOOLEAN PeerDlsRspSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pCapabilityInfo,
OUT USHORT *pStatus,
OUT UCHAR *pRatesLen,
OUT UCHAR Rates[],
OUT UCHAR *pHtCapabilityLen,
OUT HT_CAPABILITY_IE *pHtCapability);
BOOLEAN PeerDlsTearDownSanity(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT PUCHAR pDA,
OUT PUCHAR pSA,
OUT USHORT *pReason);
#endif // QOS_DLS_SUPPORT //
//========================================
VOID SyncStateMachineInit(
@ -4889,12 +4716,6 @@ VOID CntlWaitAssocProc(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
#ifdef QOS_DLS_SUPPORT
VOID CntlOidDLSSetupProc(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
#endif // QOS_DLS_SUPPORT //
VOID LinkUp(
IN PRTMP_ADAPTER pAd,
IN UCHAR BssType);

View file

@ -624,10 +624,6 @@
#define AP_CNTL_STATE_MACHINE 15
#define AP_WPA_STATE_MACHINE 16
#ifdef QOS_DLS_SUPPORT
#define DLS_STATE_MACHINE 26
#endif // QOS_DLS_SUPPORT //
//
// STA's CONTROL/CONNECT state machine: states, events, total function #
//

View file

@ -927,36 +927,6 @@ VOID MlmeDisassocReqAction(
ULONG Timeout = 0;
USHORT Status;
#ifdef QOS_DLS_SUPPORT
// send DLS-TEAR_DOWN message,
if (pAd->CommonCfg.bDLSCapable)
{
UCHAR i;
// tear down local dls table entry
for (i=0; i<MAX_NUM_OF_INIT_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
}
}
// tear down peer dls table entry
for (i=MAX_NUM_OF_INIT_DLS_ENTRY; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
}
}
}
#endif // QOS_DLS_SUPPORT //
// skip sanity check
pDisassocReq = (PMLME_DISASSOC_REQ_STRUCT)(Elem->Msg);

View file

@ -286,12 +286,6 @@ VOID CntlIdleProc(
WpaMicFailureReportFrame(pAd, Elem);
break;
#ifdef QOS_DLS_SUPPORT
case RT_OID_802_11_SET_DLS_PARAM:
CntlOidDLSSetupProc(pAd, Elem);
break;
#endif // QOS_DLS_SUPPORT //
default:
DBGPRINT(RT_DEBUG_TRACE, ("CNTL - Illegal message in CntlIdleProc(MsgType=%ld)\n",Elem->MsgType));
break;
@ -685,113 +679,6 @@ VOID CntlMlmeRoamingProc(
IterateOnBssTab(pAd);
}
#ifdef QOS_DLS_SUPPORT
/*
==========================================================================
Description:
IRQL = DISPATCH_LEVEL
==========================================================================
*/
VOID CntlOidDLSSetupProc(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem)
{
PRT_802_11_DLS pDLS = (PRT_802_11_DLS)Elem->Msg;
MLME_DLS_REQ_STRUCT MlmeDlsReq;
INT i;
USHORT reason = REASON_UNSPECIFY;
DBGPRINT(RT_DEBUG_TRACE,("CNTL - (OID set %02x:%02x:%02x:%02x:%02x:%02x with Valid=%d, Status=%d, TimeOut=%d, CountDownTimer=%d)\n",
pDLS->MacAddr[0], pDLS->MacAddr[1], pDLS->MacAddr[2], pDLS->MacAddr[3], pDLS->MacAddr[4], pDLS->MacAddr[5],
pDLS->Valid, pDLS->Status, pDLS->TimeOut, pDLS->CountDownTimer));
if (!pAd->CommonCfg.bDLSCapable)
return;
// DLS will not be supported when Adhoc mode
if (INFRA_ON(pAd))
{
for (i = 0; i < MAX_NUM_OF_DLS_ENTRY; i++)
{
if (pDLS->Valid && pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH) &&
(pDLS->TimeOut == pAd->StaCfg.DLSEntry[i].TimeOut) && MAC_ADDR_EQUAL(pDLS->MacAddr, pAd->StaCfg.DLSEntry[i].MacAddr))
{
// 1. Same setting, just drop it
DBGPRINT(RT_DEBUG_TRACE,("CNTL - setting unchanged\n"));
break;
}
else if (!pDLS->Valid && pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH) &&
MAC_ADDR_EQUAL(pDLS->MacAddr, pAd->StaCfg.DLSEntry[i].MacAddr))
{
// 2. Disable DLS link case, just tear down DLS link
reason = REASON_QOS_UNWANTED_MECHANISM;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_TEAR_DOWN, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
DBGPRINT(RT_DEBUG_TRACE,("CNTL - start tear down procedure\n"));
break;
}
else if ((i < MAX_NUM_OF_DLS_ENTRY) && pDLS->Valid && !pAd->StaCfg.DLSEntry[i].Valid)
{
// 3. Enable case, start DLS setup procedure
NdisMoveMemory(&pAd->StaCfg.DLSEntry[i], pDLS, sizeof(RT_802_11_DLS_UI));
//Update countdown timer
pAd->StaCfg.DLSEntry[i].CountDownTimer = pAd->StaCfg.DLSEntry[i].TimeOut;
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_REQ, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
DBGPRINT(RT_DEBUG_TRACE,("CNTL - DLS setup case\n"));
break;
}
else if ((i < MAX_NUM_OF_DLS_ENTRY) && pDLS->Valid && pAd->StaCfg.DLSEntry[i].Valid &&
(pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH) && !MAC_ADDR_EQUAL(pDLS->MacAddr, pAd->StaCfg.DLSEntry[i].MacAddr))
{
// 4. update mac case, tear down old DLS and setup new DLS
reason = REASON_QOS_UNWANTED_MECHANISM;
pAd->StaCfg.DLSEntry[i].Valid = FALSE;
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_TEAR_DOWN, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
NdisMoveMemory(&pAd->StaCfg.DLSEntry[i], pDLS, sizeof(RT_802_11_DLS_UI));
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_REQ, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
DBGPRINT(RT_DEBUG_TRACE,("CNTL - DLS tear down and restart case\n"));
break;
}
else if (pDLS->Valid && pAd->StaCfg.DLSEntry[i].Valid &&
MAC_ADDR_EQUAL(pDLS->MacAddr, pAd->StaCfg.DLSEntry[i].MacAddr) && (pAd->StaCfg.DLSEntry[i].TimeOut != pDLS->TimeOut))
{
// 5. update timeout case, start DLS setup procedure (no tear down)
pAd->StaCfg.DLSEntry[i].TimeOut = pDLS->TimeOut;
//Update countdown timer
pAd->StaCfg.DLSEntry[i].CountDownTimer = pAd->StaCfg.DLSEntry[i].TimeOut;
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_REQ, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
DBGPRINT(RT_DEBUG_TRACE,("CNTL - DLS update timeout case\n"));
break;
}
else if (pDLS->Valid && pAd->StaCfg.DLSEntry[i].Valid &&
(pAd->StaCfg.DLSEntry[i].Status != DLS_FINISH) && MAC_ADDR_EQUAL(pDLS->MacAddr, pAd->StaCfg.DLSEntry[i].MacAddr))
{
// 6. re-setup case, start DLS setup procedure (no tear down)
DlsParmFill(pAd, &MlmeDlsReq, &pAd->StaCfg.DLSEntry[i], reason);
MlmeEnqueue(pAd, DLS_STATE_MACHINE, MT2_MLME_DLS_REQ, sizeof(MLME_DLS_REQ_STRUCT), &MlmeDlsReq);
DBGPRINT(RT_DEBUG_TRACE,("CNTL - DLS retry setup procedure\n"));
break;
}
else
{
DBGPRINT(RT_DEBUG_WARN,("CNTL - DLS not changed in entry - %d - Valid=%d, Status=%d, TimeOut=%d\n",
i, pAd->StaCfg.DLSEntry[i].Valid, pAd->StaCfg.DLSEntry[i].Status, pAd->StaCfg.DLSEntry[i].TimeOut));
}
}
}
}
#endif // QOS_DLS_SUPPORT //
/*
==========================================================================
Description:
@ -2009,33 +1896,6 @@ VOID LinkDown(
{
DBGPRINT(RT_DEBUG_TRACE, ("!!! LINK DOWN 2!!!\n"));
#ifdef QOS_DLS_SUPPORT
// DLS tear down frame must be sent before link down
// send DLS-TEAR_DOWN message
if (pAd->CommonCfg.bDLSCapable)
{
// tear down local dls table entry
for (i=0; i<MAX_NUM_OF_INIT_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
}
}
// tear down peer dls table entry
for (i=MAX_NUM_OF_INIT_DLS_ENTRY; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
if (pAd->StaCfg.DLSEntry[i].Valid && (pAd->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
pAd->StaCfg.DLSEntry[i].Status = DLS_NONE;
RTMPSendDLSTearDownFrame(pAd, pAd->StaCfg.DLSEntry[i].MacAddr);
}
}
}
#endif // QOS_DLS_SUPPORT //
OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_INFRA_ON);
OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_MEDIA_STATE_CONNECTED);
@ -2134,11 +1994,6 @@ VOID LinkDown(
pAd->StaCfg.WpaState = SS_START;
// Clear Replay counter
NdisZeroMemory(pAd->StaCfg.ReplayCounter, 8);
#ifdef QOS_DLS_SUPPORT
if (pAd->CommonCfg.bDLSCapable)
NdisZeroMemory(pAd->StaCfg.DlsReplayCounter, 8);
#endif // QOS_DLS_SUPPORT //
}
@ -2441,26 +2296,6 @@ VOID ScanParmFill(
ScanReq->ScanType = ScanType;
}
#ifdef QOS_DLS_SUPPORT
/*
==========================================================================
Description:
IRQL = DISPATCH_LEVEL
==========================================================================
*/
VOID DlsParmFill(
IN PRTMP_ADAPTER pAd,
IN OUT MLME_DLS_REQ_STRUCT *pDlsReq,
IN PRT_802_11_DLS pDls,
IN USHORT reason)
{
pDlsReq->pDLS = pDls;
pDlsReq->Reason = reason;
}
#endif // QOS_DLS_SUPPORT //
/*
==========================================================================
Description:

File diff suppressed because it is too large Load diff

View file

@ -180,9 +180,6 @@ VOID STARxDataFrameAnnounce(
// ARALINK
CmmRxRalinkFrameIndicate(pAd, pEntry, pRxBlk, FromWhichBSSID);
}
#ifdef QOS_DLS_SUPPORT
RX_BLK_CLEAR_FLAG(pRxBlk, fRX_DLS);
#endif // QOS_DLS_SUPPORT //
}
else
{
@ -288,14 +285,6 @@ VOID STAHandleRxDataFrame(
return;
}
#ifdef QOS_DLS_SUPPORT
//if ((pHeader->FC.FrDs == 0) && (pHeader->FC.ToDs == 0))
if (RTMPRcvFrameDLSCheck(pAd, pHeader, pRxWI->MPDUtotalByteCount, pRxD))
{
return;
}
#endif // QOS_DLS_SUPPORT //
// Drop not my BSS frames
if (pRxD->MyBss == 0)
{
@ -354,10 +343,7 @@ VOID STAHandleRxDataFrame(
}
// Drop not my BSS frame (we can not only check the MyBss bit in RxD)
#ifdef QOS_DLS_SUPPORT
if (!pAd->CommonCfg.bDLSCapable)
{
#endif // QOS_DLS_SUPPORT //
if (INFRA_ON(pAd))
{
// Infrastructure mode, check address 2 for BSSID
@ -380,9 +366,6 @@ VOID STAHandleRxDataFrame(
return;
}
}
#ifdef QOS_DLS_SUPPORT
}
#endif // QOS_DLS_SUPPORT //
//
// find pEntry
@ -403,11 +386,6 @@ VOID STAHandleRxDataFrame(
if (INFRA_ON(pAd))
{
RX_BLK_SET_FLAG(pRxBlk, fRX_INFRA);
#ifdef QOS_DLS_SUPPORT
if ((pHeader->FC.FrDs == 0) && (pHeader->FC.ToDs == 0))
RX_BLK_SET_FLAG(pRxBlk, fRX_DLS);
else
#endif // QOS_DLS_SUPPORT //
ASSERT(pRxWI->WirelessCliID == BSSID_WCID);
}
@ -521,18 +499,6 @@ VOID STAHandleRxDataFrame(
{
pAd->LastRxRate = (USHORT)((pRxWI->MCS) + (pRxWI->BW <<7) + (pRxWI->ShortGI <<8)+ (pRxWI->PHYMODE <<14)) ;
#ifdef QOS_DLS_SUPPORT
if (RX_BLK_TEST_FLAG(pRxBlk, fRX_DLS))
{
MAC_TABLE_ENTRY *pDlsEntry = NULL;
pDlsEntry = DlsEntryTableLookupByWcid(pAd, pRxWI->WirelessCliID, pHeader->Addr2, TRUE);
if(pDlsEntry)
Update_Rssi_Sample(pAd, &pDlsEntry->RssiSample, pRxWI);
}
else
#endif // QOS_DLS_SUPPORT //
if (ADHOC_ON(pAd))
{
pEntry = MacTableLookup(pAd, pHeader->Addr2);
@ -868,17 +834,6 @@ VOID STASendPackets(
{
// Record that orignal packet source is from NDIS layer,so that
// later on driver knows how to release this NDIS PACKET
#ifdef QOS_DLS_SUPPORT
MAC_TABLE_ENTRY *pEntry;
PUCHAR pSrcBufVA = GET_OS_PKT_DATAPTR(pPacket);
pEntry = MacTableLookup(pAd, pSrcBufVA);
if (pEntry && (pEntry->ValidAsDls == TRUE))
{
RTMP_SET_PACKET_WCID(pPacket, pEntry->Aid);
}
else
#endif // QOS_DLS_SUPPORT //
RTMP_SET_PACKET_WCID(pPacket, 0); // this field is useless when in STA mode
RTMP_SET_PACKET_SOURCE(pPacket, PKTSRC_NDIS);
NDIS_SET_PACKET_STATUS(pPacket, NDIS_STATUS_PENDING);
@ -961,18 +916,6 @@ NDIS_STATUS STASendPacket(
{
if(INFRA_ON(pAd))
{
#ifdef QOS_DLS_SUPPORT
USHORT tmpWcid;
tmpWcid = RTMP_GET_PACKET_WCID(pPacket);
if (VALID_WCID(tmpWcid) &&
(pAd->MacTab.Content[tmpWcid].ValidAsDls== TRUE))
{
pEntry = &pAd->MacTab.Content[tmpWcid];
Rate = pAd->MacTab.Content[tmpWcid].CurrTxRate;
}
else
#endif // QOS_DLS_SUPPORT //
{
pEntry = &pAd->MacTab.Content[BSSID_WCID];
RTMP_SET_PACKET_WCID(pPacket, BSSID_WCID);
@ -1454,12 +1397,7 @@ VOID STABuildCommon802_11Header(
IN PRTMP_ADAPTER pAd,
IN TX_BLK *pTxBlk)
{
HEADER_802_11 *pHeader_802_11;
#ifdef QOS_DLS_SUPPORT
BOOLEAN bDLSFrame = FALSE;
INT DlsEntryIndex = 0;
#endif // QOS_DLS_SUPPORT //
//
// MAKE A COMMON 802.11 HEADER
@ -1476,19 +1414,6 @@ VOID STABuildCommon802_11Header(
pHeader_802_11->FC.Type = BTYPE_DATA;
pHeader_802_11->FC.SubType = ((TX_BLK_TEST_FLAG(pTxBlk, fTX_bWMM)) ? SUBTYPE_QDATA : SUBTYPE_DATA);
#ifdef QOS_DLS_SUPPORT
if (INFRA_ON(pAd))
{
// Check if the frame can be sent through DLS direct link interface
// If packet can be sent through DLS, then force aggregation disable. (Hard to determine peer STA's capability)
DlsEntryIndex = RTMPCheckDLSFrame(pAd, pTxBlk->pSrcBufHeader);
if (DlsEntryIndex >= 0)
bDLSFrame = TRUE;
else
bDLSFrame = FALSE;
}
#endif // QOS_DLS_SUPPORT //
if (pTxBlk->pMacEntry)
{
if (TX_BLK_TEST_FLAG(pTxBlk, fTX_bForceNonQoS))
@ -1515,16 +1440,6 @@ VOID STABuildCommon802_11Header(
{
if (INFRA_ON(pAd))
{
#ifdef QOS_DLS_SUPPORT
if (bDLSFrame)
{
COPY_MAC_ADDR(pHeader_802_11->Addr1, pTxBlk->pSrcBufHeader);
COPY_MAC_ADDR(pHeader_802_11->Addr2, pAd->CurrentAddress);
COPY_MAC_ADDR(pHeader_802_11->Addr3, pAd->CommonCfg.Bssid);
pHeader_802_11->FC.ToDs = 0;
}
else
#endif // QOS_DLS_SUPPORT //
{
COPY_MAC_ADDR(pHeader_802_11->Addr1, pAd->CommonCfg.Bssid);
COPY_MAC_ADDR(pHeader_802_11->Addr2, pAd->CurrentAddress);
@ -1580,29 +1495,7 @@ VOID STABuildCache802_11Header(
pMacEntry->TxSeq[pTxBlk->UserPriority] = (pMacEntry->TxSeq[pTxBlk->UserPriority]+1) & MAXSEQ;
{
// Check if the frame can be sent through DLS direct link interface
// If packet can be sent through DLS, then force aggregation disable. (Hard to determine peer STA's capability)
#ifdef QOS_DLS_SUPPORT
BOOLEAN bDLSFrame = FALSE;
INT DlsEntryIndex = 0;
DlsEntryIndex = RTMPCheckDLSFrame(pAd, pTxBlk->pSrcBufHeader);
if (DlsEntryIndex >= 0)
bDLSFrame = TRUE;
else
bDLSFrame = FALSE;
#endif // QOS_DLS_SUPPORT //
// The addr3 of normal packet send from DS is Dest Mac address.
#ifdef QOS_DLS_SUPPORT
if (bDLSFrame)
{
COPY_MAC_ADDR(pHeader80211->Addr1, pTxBlk->pSrcBufHeader);
COPY_MAC_ADDR(pHeader80211->Addr3, pAd->CommonCfg.Bssid);
pHeader80211->FC.ToDs = 0;
}
else
#endif // QOS_DLS_SUPPORT //
if (ADHOC_ON(pAd))
COPY_MAC_ADDR(pHeader80211->Addr3, pAd->CommonCfg.Bssid);
else

View file

@ -85,10 +85,6 @@ struct iw_priv_args privtab[] = {
0, IW_PRIV_TYPE_CHAR | IW_PRIV_SIZE_MASK, "radio_off" },
{ RAIO_ON,
0, IW_PRIV_TYPE_CHAR | IW_PRIV_SIZE_MASK, "radio_on" },
#ifdef QOS_DLS_SUPPORT
{ SHOW_DLS_ENTRY_INFO,
0, IW_PRIV_TYPE_CHAR | IW_PRIV_SIZE_MASK, "dlsentryinfo" },
#endif // QOS_DLS_SUPPORT //
{ SHOW_CFG_VALUE,
IW_PRIV_TYPE_CHAR | 1024, IW_PRIV_TYPE_CHAR | IW_PRIV_SIZE_MASK, "show" },
{ SHOW_ADHOC_ENTRY_INFO,
@ -286,10 +282,6 @@ static struct {
{"TGnWifiTest", Set_TGnWifiTest_Proc},
{"ForceGF", Set_ForceGF_Proc},
#endif // DOT11_N_SUPPORT //
#ifdef QOS_DLS_SUPPORT
{"DlsAddEntry", Set_DlsAddEntry_Proc},
{"DlsTearDownEntry", Set_DlsTearDownEntry_Proc},
#endif // QOS_DLS_SUPPORT //
{"LongRetry", Set_LongRetryLimit_Proc},
{"ShortRetry", Set_ShortRetryLimit_Proc},
#ifdef EXT_BUILD_CHANNEL_LIST
@ -2116,16 +2108,6 @@ rt_private_show(struct net_device *dev, struct iw_request_info *info,
wrq->length = strlen(extra) + 1; // 1: size of '\0'
break;
#ifdef QOS_DLS_SUPPORT
case SHOW_DLS_ENTRY_INFO:
{
Set_DlsEntryInfo_Display_Proc(pAd, NULL);
wrq->length = 0; // 1: size of '\0'
}
break;
#endif // QOS_DLS_SUPPORT //
case SHOW_CFG_VALUE:
{
Status = RTMPShowCfgValue(pAd, wrq->pointer, extra);
@ -3874,62 +3856,7 @@ INT RTMPSetInformation(
DBGPRINT(RT_DEBUG_TRACE, ("Set::RT_OID_802_11_SET_APSD_PSM (bAPSDForcePowerSave:%d)\n", pAdapter->CommonCfg.bAPSDForcePowerSave));
}
break;
#ifdef QOS_DLS_SUPPORT
case RT_OID_802_11_SET_DLS:
if (wrq->u.data.length != sizeof(ULONG))
Status = -EINVAL;
else
{
BOOLEAN oldvalue = pAdapter->CommonCfg.bDLSCapable;
Status = copy_from_user(&pAdapter->CommonCfg.bDLSCapable, wrq->u.data.pointer, wrq->u.data.length);
if (oldvalue && !pAdapter->CommonCfg.bDLSCapable)
{
int i;
// tear down local dls table entry
for (i=0; i<MAX_NUM_OF_INIT_DLS_ENTRY; i++)
{
if (pAdapter->StaCfg.DLSEntry[i].Valid && (pAdapter->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
pAdapter->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAdapter->StaCfg.DLSEntry[i].Valid = FALSE;
RTMPSendDLSTearDownFrame(pAdapter, pAdapter->StaCfg.DLSEntry[i].MacAddr);
}
}
// tear down peer dls table entry
for (i=MAX_NUM_OF_INIT_DLS_ENTRY; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
if (pAdapter->StaCfg.DLSEntry[i].Valid && (pAdapter->StaCfg.DLSEntry[i].Status == DLS_FINISH))
{
pAdapter->StaCfg.DLSEntry[i].Status = DLS_NONE;
pAdapter->StaCfg.DLSEntry[i].Valid = FALSE;
RTMPSendDLSTearDownFrame(pAdapter, pAdapter->StaCfg.DLSEntry[i].MacAddr);
}
}
}
DBGPRINT(RT_DEBUG_TRACE,("Set::RT_OID_802_11_SET_DLS (=%d)\n", pAdapter->CommonCfg.bDLSCapable));
}
break;
case RT_OID_802_11_SET_DLS_PARAM:
if (wrq->u.data.length != sizeof(RT_802_11_DLS_UI))
Status = -EINVAL;
else
{
RT_802_11_DLS Dls;
NdisZeroMemory(&Dls, sizeof(RT_802_11_DLS));
RTMPMoveMemory(&Dls, wrq->u.data.pointer, sizeof(RT_802_11_DLS_UI));
MlmeEnqueue(pAdapter,
MLME_CNTL_STATE_MACHINE,
RT_OID_802_11_SET_DLS_PARAM,
sizeof(RT_802_11_DLS),
&Dls);
DBGPRINT(RT_DEBUG_TRACE,("Set::RT_OID_802_11_SET_DLS_PARAM \n"));
}
break;
#endif // QOS_DLS_SUPPORT //
case RT_OID_802_11_SET_WMM:
if (wrq->u.data.length != sizeof(BOOLEAN))
Status = -EINVAL;
@ -5280,35 +5207,6 @@ INT RTMPQueryInformation(
DBGPRINT(RT_DEBUG_TRACE, ("Status=%d\n", Status));
break;
#ifdef QOS_DLS_SUPPORT
case RT_OID_802_11_QUERY_DLS:
wrq->u.data.length = sizeof(BOOLEAN);
Status = copy_to_user(wrq->u.data.pointer, &pAdapter->CommonCfg.bDLSCapable, wrq->u.data.length);
DBGPRINT(RT_DEBUG_TRACE, ("Query::RT_OID_802_11_QUERY_DLS(=%d)\n", pAdapter->CommonCfg.bDLSCapable));
break;
case RT_OID_802_11_QUERY_DLS_PARAM:
{
PRT_802_11_DLS_INFO pDlsInfo = kmalloc(sizeof(RT_802_11_DLS_INFO), GFP_ATOMIC);
if (pDlsInfo == NULL)
break;
for (i=0; i<MAX_NUM_OF_DLS_ENTRY; i++)
{
RTMPMoveMemory(&pDlsInfo->Entry[i], &pAdapter->StaCfg.DLSEntry[i], sizeof(RT_802_11_DLS_UI));
}
pDlsInfo->num = MAX_NUM_OF_DLS_ENTRY;
wrq->u.data.length = sizeof(RT_802_11_DLS_INFO);
Status = copy_to_user(wrq->u.data.pointer, pDlsInfo, wrq->u.data.length);
DBGPRINT(RT_DEBUG_TRACE, ("Query::RT_OID_802_11_QUERY_DLS_PARAM\n"));
if (pDlsInfo)
kfree(pDlsInfo);
}
break;
#endif // QOS_DLS_SUPPORT //
default:
DBGPRINT(RT_DEBUG_TRACE, ("Query::unknown IOCTL's subcmd = 0x%08x\n", cmd));
Status = -EOPNOTSUPP;