Commit 790a9093 authored by Bartlomiej Zolnierkiewicz's avatar Bartlomiej Zolnierkiewicz Committed by Greg Kroah-Hartman

Staging: rt2860: remove dead DOT11N_DRAFT3 code

Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 6108b375
......@@ -159,9 +159,6 @@ USHORT APBuildAssociation(
IN UCHAR *pRSNLen,
IN BOOLEAN bWmmCapable,
IN ULONG RalinkIe,
#ifdef DOT11N_DRAFT3
IN EXT_CAP_INFO_ELEMENT ExtCapInfo,
#endif // DOT11N_DRAFT3 //
IN HT_CAPABILITY_IE *pHtCapability,
IN UCHAR HtCapabilityLen,
OUT USHORT *pAid);
......@@ -282,11 +279,6 @@ VOID SupportRate(
BOOLEAN ApScanRunning(
IN PRTMP_ADAPTER pAd);
#ifdef DOT11N_DRAFT3
VOID APOverlappingBSSScan(
IN RTMP_ADAPTER *pAd);
#endif // DOT11N_DRAFT3 //
// ap_wpa.c
VOID APWpaStateMachineInit(
......@@ -472,9 +464,6 @@ BOOLEAN PeerAssocReqCmmSanity(
OUT UCHAR *pRSNLen,
OUT BOOLEAN *pbWmmCapable,
OUT ULONG *pRalinkIe,
#ifdef DOT11N_DRAFT3
OUT EXT_CAP_INFO_ELEMENT *pExtCapInfo,
#endif // DOT11N_DRAFT3 //
OUT UCHAR *pHtCapabilityLen,
OUT HT_CAPABILITY_IE *pHtCapability);
......
This diff is collapsed.
......@@ -1324,10 +1324,6 @@ VOID RTMPWriteTxWI(
// If CCK or OFDM, BW must be 20
pTxWI->BW = (pTransmit->field.MODE <= MODE_OFDM) ? (BW_20) : (pTransmit->field.BW);
#ifdef DOT11N_DRAFT3
if (pTxWI->BW)
pTxWI->BW = (pAd->CommonCfg.AddHTInfo.AddHtInfo.RecomWidth == 0) ? (BW_20) : (pTransmit->field.BW);
#endif // DOT11N_DRAFT3 //
pTxWI->MCS = pTransmit->field.MCS;
pTxWI->PHYMODE = pTransmit->field.MODE;
......@@ -1407,10 +1403,6 @@ VOID RTMPWriteTxWI_Data(
// If CCK or OFDM, BW must be 20
pTxWI->BW = (pTransmit->field.MODE <= MODE_OFDM) ? (BW_20) : (pTransmit->field.BW);
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
if (pTxWI->BW)
pTxWI->BW = (pAd->CommonCfg.AddHTInfo.AddHtInfo.RecomWidth == 0) ? (BW_20) : (pTransmit->field.BW);
#endif // DOT11N_DRAFT3 //
pTxWI->AMPDU = ((pTxBlk->TxFrameType == TX_AMPDU_FRAME) ? TRUE : FALSE);
// John tune the performace with Intel Client in 20 MHz performance
......@@ -1508,11 +1500,6 @@ VOID RTMPWriteTxWI_Cache(
pTxWI->AMPDU = ((pMacEntry->NoBADataCountDown == 0) ? TRUE: FALSE);
pTxWI->MIMOps = 0;
#ifdef DOT11N_DRAFT3
if (pTxWI->BW)
pTxWI->BW = (pAd->CommonCfg.AddHTInfo.AddHtInfo.RecomWidth == 0) ? (BW_20) : (pTransmit->field.BW);
#endif // DOT11N_DRAFT3 //
if (pAd->CommonCfg.bMIMOPSEnable)
{
// MIMO Power Save Mode
......
......@@ -749,76 +749,6 @@ BOOLEAN PeerBeaconAndProbeRspSanity(
}
#ifdef DOT11N_DRAFT3
/*
==========================================================================
Description:
MLME message sanity check for some IE addressed in 802.11n d3.03.
Return:
TRUE if all parameters are OK, FALSE otherwise
IRQL = DISPATCH_LEVEL
==========================================================================
*/
BOOLEAN PeerBeaconAndProbeRspSanity2(
IN PRTMP_ADAPTER pAd,
IN VOID *Msg,
IN ULONG MsgLen,
OUT UCHAR *RegClass)
{
CHAR *Ptr;
PFRAME_802_11 pFrame;
PEID_STRUCT pEid;
ULONG Length = 0;
pFrame = (PFRAME_802_11)Msg;
*RegClass = 0;
Ptr = pFrame->Octet;
Length += LENGTH_802_11;
// get timestamp from payload and advance the pointer
Ptr += TIMESTAMP_LEN;
Length += TIMESTAMP_LEN;
// get beacon interval from payload and advance the pointer
Ptr += 2;
Length += 2;
// get capability info from payload and advance the pointer
Ptr += 2;
Length += 2;
pEid = (PEID_STRUCT) Ptr;
// get variable fields from payload and advance the pointer
while ((Length + 2 + pEid->Len) <= MsgLen)
{
switch(pEid->Eid)
{
case IE_SUPP_REG_CLASS:
if(pEid->Len > 0)
{
*RegClass = *pEid->Octet;
}
else
{
DBGPRINT(RT_DEBUG_TRACE, ("PeerBeaconAndProbeRspSanity - wrong IE_SSID (len=%d)\n",pEid->Len));
return FALSE;
}
break;
}
Length = Length + 2 + pEid->Len; // Eid[1] + Len[1]+ content[Len]
pEid = (PEID_STRUCT)((UCHAR*)pEid + 2 + pEid->Len);
}
return TRUE;
}
#endif // DOT11N_DRAFT3 //
/*
==========================================================================
Description:
......
......@@ -630,21 +630,6 @@ VOID ScanNextChannel(
#endif // RT_BIG_ENDIAN //
}
FrameLen += Tmp;
#ifdef DOT11N_DRAFT3
if (pAd->CommonCfg.BACapability.field.b2040CoexistScanSup == 1)
{
ULONG Tmp;
HtLen = 1;
MakeOutgoingFrame(pOutBuffer + FrameLen, &Tmp,
1, &ExtHtCapIe,
1, &HtLen,
1, &pAd->CommonCfg.BSSCoexist2040.word,
END_OF_ARGS);
FrameLen += Tmp;
}
#endif // DOT11N_DRAFT3 //
}
#endif // DOT11_N_SUPPORT //
......
......@@ -338,9 +338,6 @@ UCHAR ExtRateIe = IE_EXT_SUPP_RATES;
UCHAR HtCapIe = IE_HT_CAP;
UCHAR AddHtInfoIe = IE_ADD_HT;
UCHAR NewExtChanIe = IE_SECONDARY_CH_OFFSET;
#ifdef DOT11N_DRAFT3
UCHAR ExtHtCapIe = IE_EXT_CAPABILITY;
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
UCHAR ErpIe = IE_ERP;
UCHAR DsIe = IE_DS_PARM;
......@@ -1310,14 +1307,6 @@ VOID STAMlmePeriodicExec(
}
#endif // DOT11_N_SUPPORT //
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
if (OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_SCAN_2040))
TriEventCounterMaintenance(pAd);
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
return;
}
......@@ -3836,111 +3825,6 @@ ULONG BssTableSetEntry(
}
#ifdef CONFIG_STA_SUPPORT
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
VOID TriEventInit(
IN PRTMP_ADAPTER pAd)
{
UCHAR i;
for (i = 0;i < MAX_TRIGGER_EVENT;i++)
pAd->CommonCfg.TriggerEventTab.EventA[i].bValid = FALSE;
pAd->CommonCfg.TriggerEventTab.EventANo = 0;
pAd->CommonCfg.TriggerEventTab.EventBCountDown = 0;
}
ULONG TriEventTableSetEntry(
IN PRTMP_ADAPTER pAd,
OUT TRIGGER_EVENT_TAB *Tab,
IN PUCHAR pBssid,
IN HT_CAPABILITY_IE *pHtCapability,
IN UCHAR HtCapabilityLen,
IN UCHAR RegClass,
IN UCHAR ChannelNo)
{
// Event A
if (HtCapabilityLen == 0)
{
if (Tab->EventANo < MAX_TRIGGER_EVENT)
{
RTMPMoveMemory(Tab->EventA[Tab->EventANo].BSSID, pBssid, 6);
Tab->EventA[Tab->EventANo].bValid = TRUE;
Tab->EventA[Tab->EventANo].Channel = ChannelNo;
Tab->EventA[Tab->EventANo].CDCounter = pAd->CommonCfg.Dot11BssWidthChanTranDelay;
if (RegClass != 0)
{
// Beacon has Regulatory class IE. So use beacon's
Tab->EventA[Tab->EventANo].RegClass = RegClass;
}
else
{
// Use Station's Regulatory class instead.
if (pAd->StaActive.SupportedHtPhy.bHtEnable == TRUE)
{
if (pAd->CommonCfg.CentralChannel > pAd->CommonCfg.Channel)
{
Tab->EventA[Tab->EventANo].RegClass = 32;
}
else if (pAd->CommonCfg.CentralChannel < pAd->CommonCfg.Channel)
Tab->EventA[Tab->EventANo].RegClass = 33;
}
else
Tab->EventA[Tab->EventANo].RegClass = ??;
}
Tab->EventANo ++;
}
}
else if (pHtCapability->HtCapInfo.Intolerant40)
{
Tab->EventBCountDown = pAd->CommonCfg.Dot11BssWidthChanTranDelay;
}
}
/*
========================================================================
Routine Description:
Trigger Event table Maintainence called once every second.
Arguments:
// IRQL = DISPATCH_LEVEL
========================================================================
*/
VOID TriEventCounterMaintenance(
IN PRTMP_ADAPTER pAd)
{
UCHAR i;
BOOLEAN bNotify = FALSE;
for (i = 0;i < MAX_TRIGGER_EVENT;i++)
{
if (pAd->CommonCfg.TriggerEventTab.EventA[i].bValid && (pAd->CommonCfg.TriggerEventTab.EventA[i].CDCounter > 0))
{
pAd->CommonCfg.TriggerEventTab.EventA[i].CDCounter--;
if (pAd->CommonCfg.TriggerEventTab.EventA[i].CDCounter == 0)
{
pAd->CommonCfg.TriggerEventTab.EventA[i].bValid = FALSE;
pAd->CommonCfg.TriggerEventTab.EventANo --;
// Need to send 20/40 Coexistence Notify frame if has status change.
bNotify = TRUE;
}
}
}
if (pAd->CommonCfg.TriggerEventTab.EventBCountDown > 0)
{
pAd->CommonCfg.TriggerEventTab.EventBCountDown--;
if (pAd->CommonCfg.TriggerEventTab.EventBCountDown == 0)
bNotify = TRUE;
}
if (bNotify == TRUE)
Update2040CoexistFrameAndNotify(pAd, BSSID_WCID, TRUE);
}
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
// IRQL = DISPATCH_LEVEL
VOID BssTableSsidSort(
IN PRTMP_ADAPTER pAd,
......
......@@ -2969,17 +2969,6 @@ VOID UserCfgInit(
pAd->bBroadComHT = FALSE;
pAd->CommonCfg.bRdg = FALSE;
#ifdef DOT11N_DRAFT3
pAd->CommonCfg.Dot11OBssScanPassiveDwell = dot11OBSSScanPassiveDwell; // Unit : TU. 5~1000
pAd->CommonCfg.Dot11OBssScanActiveDwell = dot11OBSSScanActiveDwell; // Unit : TU. 10~1000
pAd->CommonCfg.Dot11BssWidthTriggerScanInt = dot11BSSWidthTriggerScanInterval; // Unit : Second
pAd->CommonCfg.Dot11OBssScanPassiveTotalPerChannel = dot11OBSSScanPassiveTotalPerChannel; // Unit : TU. 200~10000
pAd->CommonCfg.Dot11OBssScanActiveTotalPerChannel = dot11OBSSScanActiveTotalPerChannel; // Unit : TU. 20~10000
pAd->CommonCfg.Dot11BssWidthChanTranDelayFactor = dot11BSSWidthChannelTransactionDelayFactor;
pAd->CommonCfg.Dot11OBssScanActivityThre = dot11BSSScanActivityThreshold; // Unit : percentage
pAd->CommonCfg.Dot11BssWidthChanTranDelay = (pAd->CommonCfg.Dot11BssWidthTriggerScanInt * pAd->CommonCfg.Dot11BssWidthChanTranDelayFactor);
#endif // DOT11N_DRAFT3 //
NdisZeroMemory(&pAd->CommonCfg.AddHTInfo, sizeof(pAd->CommonCfg.AddHTInfo));
pAd->CommonCfg.BACapability.field.MMPSmode = MMPS_ENABLE;
pAd->CommonCfg.BACapability.field.MpduDensity = 0;
......
......@@ -1735,28 +1735,6 @@ VOID PeerSpectrumAction(
case SPEC_CHANNEL_SWITCH:
{
#ifdef DOT11N_DRAFT3
SEC_CHA_OFFSET_IE Secondary;
CHA_SWITCH_ANNOUNCE_IE ChannelSwitch;
// 802.11h only has Channel Switch Announcement IE.
RTMPMoveMemory(&ChannelSwitch, &Elem->Msg[LENGTH_802_11+4], sizeof (CHA_SWITCH_ANNOUNCE_IE));
// 802.11n D3.03 adds secondary channel offset element in the end.
if (Elem->MsgLen == (LENGTH_802_11 + 2 + sizeof (CHA_SWITCH_ANNOUNCE_IE) + sizeof (SEC_CHA_OFFSET_IE)))
{
RTMPMoveMemory(&Secondary, &Elem->Msg[LENGTH_802_11+9], sizeof (SEC_CHA_OFFSET_IE));
}
else
{
Secondary.SecondaryChannelOffset = 0;
}
if ((Elem->Msg[LENGTH_802_11+2] == IE_CHANNEL_SWITCH_ANNOUNCEMENT) && (Elem->Msg[LENGTH_802_11+3] == 3))
{
ChannelSwitchAction(pAd, Elem->Wcid, ChannelSwitch.NewChannel, Secondary.SecondaryChannelOffset);
}
#endif // DOT11N_DRAFT3 //
}
PeerChSwAnnAction(pAd, Elem);
break;
......
......@@ -124,10 +124,6 @@
#define SCAN_CISCO_CHANNEL_LOAD 23 // Single channel passive scan for channel load collection
#define FAST_SCAN_ACTIVE 24 // scan with probe request, and wait beacon and probe response
#ifdef DOT11N_DRAFT3
#define SCAN_2040_BSS_COEXIST 26
#endif // DOT11N_DRAFT3 //
#define MAC_ADDR_IS_GROUP(Addr) (((Addr[0]) & 0x01))
#define MAC_ADDR_HASH(Addr) (Addr[0] ^ Addr[1] ^ Addr[2] ^ Addr[3] ^ Addr[4] ^ Addr[5])
#define MAC_ADDR_HASH_INDEX(Addr) (MAC_ADDR_HASH(Addr) % HASH_TABLE_SIZE)
......
......@@ -140,9 +140,6 @@ extern UCHAR ExtRateIe;
extern UCHAR HtCapIe;
extern UCHAR AddHtInfoIe;
extern UCHAR NewExtChanIe;
#ifdef DOT11N_DRAFT3
extern UCHAR ExtHtCapIe;
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
extern UCHAR ErpIe;
......@@ -1285,9 +1282,6 @@ typedef struct _BBP_R66_TUNING {
typedef struct _CHANNEL_TX_POWER {
USHORT RemainingTimeForUse; //unit: sec
UCHAR Channel;
#ifdef DOT11N_DRAFT3
BOOLEAN bEffectedChannel; // For BW 40 operating in 2.4GHz , the "effected channel" is the channel that is covered in 40Mhz.
#endif // DOT11N_DRAFT3 //
CHAR Power;
CHAR Power2;
UCHAR MaxTxPwr;
......@@ -1704,17 +1698,6 @@ typedef struct _MULTISSID_STRUCT {
UCHAR BcnBufIdx;
} MULTISSID_STRUCT, *PMULTISSID_STRUCT;
#ifdef DOT11N_DRAFT3
typedef enum _BSS2040COEXIST_FLAG{
BSS_2040_COEXIST_DISABLE = 0,
BSS_2040_COEXIST_TIMER_FIRED = 1,
BSS_2040_COEXIST_INFO_SYNC = 2,
BSS_2040_COEXIST_INFO_NOTIFY = 4,
}BSS2040COEXIST_FLAG;
#endif // DOT11N_DRAFT3 //
// configuration common to OPMODE_AP as well as OPMODE_STA
typedef struct _COMMON_CONFIG {
......@@ -1826,33 +1809,6 @@ typedef struct _COMMON_CONFIG {
//This IE is included in channel switch ammouncement frames 7.4.1.5, beacons, probe Rsp.
NEW_EXT_CHAN_IE NewExtChanOffset; //7.3.2.20A, 1 if extension channel is above the control channel, 3 if below, 0 if not present
#ifdef DOT11N_DRAFT3
UCHAR Bss2040CoexistFlag; // bit 0: bBssCoexistTimerRunning, bit 1: NeedSyncAddHtInfo.
RALINK_TIMER_STRUCT Bss2040CoexistTimer;
//This IE is used for 20/40 BSS Coexistence.
BSS_2040_COEXIST_IE BSS2040CoexistInfo;
// ====== 11n D3.0 =======================>
USHORT Dot11OBssScanPassiveDwell; // Unit : TU. 5~1000
USHORT Dot11OBssScanActiveDwell; // Unit : TU. 10~1000
USHORT Dot11BssWidthTriggerScanInt; // Unit : Second
USHORT Dot11OBssScanPassiveTotalPerChannel; // Unit : TU. 200~10000
USHORT Dot11OBssScanActiveTotalPerChannel; // Unit : TU. 20~10000
USHORT Dot11BssWidthChanTranDelayFactor;
USHORT Dot11OBssScanActivityThre; // Unit : percentage
ULONG Dot11BssWidthChanTranDelay; // multiple of (Dot11BssWidthTriggerScanInt * Dot11BssWidthChanTranDelayFactor)
ULONG CountDownCtr; // CountDown Counter from (Dot11BssWidthTriggerScanInt * Dot11BssWidthChanTranDelayFactor)
NDIS_SPIN_LOCK TriggerEventTabLock;
BSS_2040_COEXIST_IE LastBSSCoexist2040;
BSS_2040_COEXIST_IE BSSCoexist2040;
TRIGGER_EVENT_TAB TriggerEventTab;
UCHAR ChannelListIdx;
// <====== 11n D3.0 =======================
BOOLEAN bOverlapScanning;
#endif // DOT11N_DRAFT3 //
BOOLEAN bHTProtect;
BOOLEAN bMIMOPSEnable;
BOOLEAN bBADecline;
......@@ -2260,10 +2216,6 @@ typedef struct _MAC_TABLE_ENTRY {
UCHAR MmpsMode; // MIMO power save more.
HT_CAPABILITY_IE HTCapability;
#ifdef DOT11N_DRAFT3
UCHAR BSS2040CoexistenceMgmtSupport;
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
BOOLEAN bAutoTxRateSwitch;
......@@ -3518,46 +3470,6 @@ VOID SendPSMPAction(
IN UCHAR Wcid,
IN UCHAR Psmp);
#ifdef DOT11N_DRAFT3
VOID SendBSS2040CoexistMgmtAction(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN UCHAR apidx,
IN UCHAR InfoReq);
VOID SendNotifyBWActionFrame(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN UCHAR apidx);
BOOLEAN ChannelSwitchSanityCheck(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN UCHAR NewChannel,
IN UCHAR Secondary);
VOID ChannelSwitchAction(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN UCHAR Channel,
IN UCHAR Secondary);
ULONG BuildIntolerantChannelRep(
IN PRTMP_ADAPTER pAd,
IN PUCHAR pDest);
VOID Update2040CoexistFrameAndNotify(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN BOOLEAN bAddIntolerantCha);
VOID Send2040CoexistAction(
IN PRTMP_ADAPTER pAd,
IN UCHAR Wcid,
IN BOOLEAN bAddIntolerantCha);
#endif // DOT11N_DRAFT3 //
VOID PeerRMAction(
IN PRTMP_ADAPTER pAd,
IN MLME_QUEUE_ELEM *Elem);
......@@ -4236,30 +4148,6 @@ VOID BATableInsertEntry(
IN UCHAR BAWinSize,
IN UCHAR OriginatorStatus,
IN BOOLEAN IsRecipient);
#ifdef DOT11N_DRAFT3
VOID Bss2040CoexistTimeOut(
IN PVOID SystemSpecific1,
IN PVOID FunctionContext,
IN PVOID SystemSpecific2,
IN PVOID SystemSpecific3);
VOID TriEventInit(
IN PRTMP_ADAPTER pAd);
ULONG TriEventTableSetEntry(
IN PRTMP_ADAPTER pAd,
OUT TRIGGER_EVENT_TAB *Tab,
IN PUCHAR pBssid,
IN HT_CAPABILITY_IE *pHtCapability,
IN UCHAR HtCapabilityLen,
IN UCHAR RegClass,
IN UCHAR ChannelNo);
VOID TriEventCounterMaintenance(
IN PRTMP_ADAPTER pAd);
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
VOID BssTableSsidSort(
......@@ -5439,13 +5327,6 @@ CHAR ConvertToRssi(
IN CHAR Rssi,
IN UCHAR RssiNumber);
#ifdef DOT11N_DRAFT3
VOID BuildEffectedChannelList(
IN PRTMP_ADAPTER pAd);
#endif // DOT11N_DRAFT3 //
VOID APAsicEvaluateRxAnt(
IN PRTMP_ADAPTER pAd);
......
......@@ -208,10 +208,6 @@
//. This flag is used ONLY in RTMPHandleRxDoneInterrupt routine.
#define fRTMP_PS_GO_TO_SLEEP_NOW 0x00000008
#ifdef DOT11N_DRAFT3
#define fOP_STATUS_SCAN_2040 0x00040000
#endif // DOT11N_DRAFT3 //
#define CCKSETPROTECT 0x1
#define OFDMSETPROTECT 0x2
#define MM20SETPROTECT 0x4
......@@ -236,10 +232,6 @@
#define fCLIENT_STATUS_MCSFEEDBACK_CAPABLE 0x00000400
#define fCLIENT_STATUS_APSD_CAPABLE 0x00000800 /* UAPSD STATION */
#ifdef DOT11N_DRAFT3
#define fCLIENT_STATUS_BSSCOEXIST_CAPABLE 0x00001000
#endif // DOT11N_DRAFT3 //
#define fCLIENT_STATUS_RALINK_CHIPSET 0x00100000
//
// STA configuration flags
......
......@@ -178,13 +178,6 @@ VOID MlmeCntlMachinePerformAction(
pAd->bLedOnScanning = FALSE;
RTMPSetLED(pAd, pAd->LedStatus);
}
#ifdef DOT11N_DRAFT3
// AP sent a 2040Coexistence mgmt frame, then station perform a scan, and then send back the respone.
if (pAd->CommonCfg.BSSCoexist2040.field.InfoReq == 1)
{
Update2040CoexistFrameAndNotify(pAd, BSSID_WCID, TRUE);
}
#endif // DOT11N_DRAFT3 //
}
break;
......@@ -1718,16 +1711,6 @@ VOID LinkUp(
RTMP_CLEAR_FLAG(pAd, fRTMP_ADAPTER_BSS_SCAN_IN_PROGRESS);
RTMP_CLEAR_PSFLAG(pAd, fRTMP_PS_GO_TO_SLEEP_NOW);
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
if ((pAd->CommonCfg.BACapability.field.b2040CoexistScanSup) && (pAd->CommonCfg.Channel <= 11))
{
OPSTATUS_SET_FLAG(pAd, fOP_STATUS_SCAN_2040);
BuildEffectedChannelList(pAd);
}
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
}
/*
......@@ -2005,18 +1988,6 @@ VOID LinkDown(
pAd->CommonCfg.IOTestParm.bCurrentAtheros = FALSE;
pAd->CommonCfg.IOTestParm.bNowAtherosBurstOn = FALSE;
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
OPSTATUS_CLEAR_FLAG(pAd, fOP_STATUS_SCAN_2040);
pAd->CommonCfg.BSSCoexist2040.word = 0;
TriEventInit(pAd);
for (i = 0; i < (pAd->ChannelListNum - 1); i++)
{
pAd->ChannelList[i].bEffectedChannel = FALSE;
}
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
RTMP_IO_WRITE32(pAd, MAX_LEN_CFG, 0x1fff);
RTMP_CLEAR_FLAG(pAd, fRTMP_ADAPTER_BSS_SCAN_IN_PROGRESS);
......
......@@ -679,16 +679,7 @@ VOID PeerBeaconAtScanAction(
&CfParm, AtimWin, CapabilityInfo, SupRate, SupRateLen, ExtRate, ExtRateLen, &HtCapability,
&AddHtInfo, HtCapabilityLen, AddHtInfoLen, NewExtChannelOffset, Channel, Rssi, TimeStamp, CkipFlag,
&EdcaParm, &QosCapability, &QbssLoad, LenVIE, pVIE);
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
if (pAd->ChannelList[pAd->CommonCfg.ChannelListIdx].bEffectedChannel == TRUE)
{
UCHAR RegClass;
PeerBeaconAndProbeRspSanity2(pAd, Elem->Msg, Elem->MsgLen, &RegClass);
TriEventTableSetEntry(pAd, &pAd->CommonCfg.TriggerEventTab, Bssid, &HtCapability, HtCapabilityLen, RegClass, Channel);
}
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
if (Idx != BSS_NOT_FOUND)
{
NdisMoveMemory(pAd->ScanTab.BssEntry[Idx].PTSF, &Elem->Msg[24], 4);
......@@ -1817,88 +1808,6 @@ VOID EnqueueProbeRequest(
}
#ifdef DOT11_N_SUPPORT
#ifdef DOT11N_DRAFT3
VOID BuildEffectedChannelList(
IN PRTMP_ADAPTER pAd)
{
UCHAR EChannel[11];
UCHAR i, j, k;
UCHAR UpperChannel = 0, LowerChannel = 0;
RTMPZeroMemory(EChannel, 11);
i = 0;
// Find upper channel and lower channel.
if (pAd->CommonCfg.CentralChannel < pAd->CommonCfg.Channel)
{
UpperChannel = pAd->CommonCfg.Channel;
LowerChannel = pAd->CommonCfg.CentralChannel;
}
else if (pAd->CommonCfg.CentralChannel > pAd->CommonCfg.Channel)
{
UpperChannel = pAd->CommonCfg.CentralChannel;
LowerChannel = pAd->CommonCfg.Channel;
}
else
{
return;
}
// Record channels that is below lower channel..
if (LowerChannel > 1)
{
EChannel[0] = LowerChannel - 1;
i = 1;
if (LowerChannel > 2)
{
EChannel[1] = LowerChannel - 2;
i = 2;
if (LowerChannel > 3)
{
EChannel[2] = LowerChannel - 3;
i = 3;
}
}
}
// Record channels that is between lower channel and upper channel.
for (k = LowerChannel;k < UpperChannel;k++)
{
EChannel[i] = k;
i++;
}
// Record channels that is above upper channel..
if (LowerChannel < 11)
{
EChannel[i] = UpperChannel + 1;
i++;
if (LowerChannel < 10)
{
EChannel[i] = LowerChannel + 2;
i++;
if (LowerChannel < 9)
{
EChannel[i] = LowerChannel + 3;
i++;
}
}
}
//
for (j = 0;j < i;j++)
{
for (k = 0;k < pAd->ChannelListNum;k++)
{
if (pAd->ChannelList[k].Channel == EChannel[j])
{
pAd->ChannelList[k].bEffectedChannel = TRUE;
DBGPRINT(RT_DEBUG_TRACE,(" EffectedChannel( =%d)\n", EChannel[j]));
break;
}
}
}
}
#endif // DOT11N_DRAFT3 //
#endif // DOT11_N_SUPPORT //
BOOLEAN ScanRunning(
IN PRTMP_ADAPTER pAd)
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment