diff options
Diffstat (limited to 'drivers/staging/rt2870/sta/sync.c')
-rw-r--r-- | drivers/staging/rt2870/sta/sync.c | 29 |
1 files changed, 6 insertions, 23 deletions
diff --git a/drivers/staging/rt2870/sta/sync.c b/drivers/staging/rt2870/sta/sync.c index a489ebc0878..7533b9d0480 100644 --- a/drivers/staging/rt2870/sta/sync.c +++ b/drivers/staging/rt2870/sta/sync.c | |||
@@ -108,7 +108,6 @@ VOID BeaconTimeout( | |||
108 | if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS)) | 108 | if (RTMP_TEST_FLAG(pAd, fRTMP_ADAPTER_HALT_IN_PROGRESS)) |
109 | return; | 109 | return; |
110 | 110 | ||
111 | #ifdef DOT11_N_SUPPORT | ||
112 | if ((pAd->CommonCfg.BBPCurrentBW == BW_40) | 111 | if ((pAd->CommonCfg.BBPCurrentBW == BW_40) |
113 | ) | 112 | ) |
114 | { | 113 | { |
@@ -121,7 +120,6 @@ VOID BeaconTimeout( | |||
121 | RTMP_BBP_IO_WRITE8_BY_REG_ID(pAd, BBP_R4, BBPValue); | 120 | RTMP_BBP_IO_WRITE8_BY_REG_ID(pAd, BBP_R4, BBPValue); |
122 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC - End of SCAN, restore to 40MHz channel %d, Total BSS[%02d]\n",pAd->CommonCfg.CentralChannel, pAd->ScanTab.BssNr)); | 121 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC - End of SCAN, restore to 40MHz channel %d, Total BSS[%02d]\n",pAd->CommonCfg.CentralChannel, pAd->ScanTab.BssNr)); |
123 | } | 122 | } |
124 | #endif // DOT11_N_SUPPORT // | ||
125 | 123 | ||
126 | MlmeEnqueue(pAd, SYNC_STATE_MACHINE, MT2_BEACON_TIMEOUT, 0, NULL); | 124 | MlmeEnqueue(pAd, SYNC_STATE_MACHINE, MT2_BEACON_TIMEOUT, 0, NULL); |
127 | RT28XX_MLME_HANDLER(pAd); | 125 | RT28XX_MLME_HANDLER(pAd); |
@@ -475,7 +473,7 @@ VOID MlmeStartReqAction( | |||
475 | pAd->MlmeAux.ExtRateLen = pAd->CommonCfg.ExtRateLen; | 473 | pAd->MlmeAux.ExtRateLen = pAd->CommonCfg.ExtRateLen; |
476 | NdisMoveMemory(pAd->MlmeAux.ExtRate, pAd->CommonCfg.ExtRate, MAX_LEN_OF_SUPPORTED_RATES); | 474 | NdisMoveMemory(pAd->MlmeAux.ExtRate, pAd->CommonCfg.ExtRate, MAX_LEN_OF_SUPPORTED_RATES); |
477 | RTMPCheckRates(pAd, pAd->MlmeAux.ExtRate, &pAd->MlmeAux.ExtRateLen); | 475 | RTMPCheckRates(pAd, pAd->MlmeAux.ExtRate, &pAd->MlmeAux.ExtRateLen); |
478 | #ifdef DOT11_N_SUPPORT | 476 | |
479 | if (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) | 477 | if (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) |
480 | { | 478 | { |
481 | RTMPUpdateHTIE(&pAd->CommonCfg.DesiredHtPhy, &pAd->StaCfg.DesiredHtPhyInfo.MCSSet[0], &pAd->MlmeAux.HtCapability, &pAd->MlmeAux.AddHtInfo); | 479 | RTMPUpdateHTIE(&pAd->CommonCfg.DesiredHtPhy, &pAd->StaCfg.DesiredHtPhyInfo.MCSSet[0], &pAd->MlmeAux.HtCapability, &pAd->MlmeAux.AddHtInfo); |
@@ -484,7 +482,6 @@ VOID MlmeStartReqAction( | |||
484 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC -pAd->StaActive.SupportedHtPhy.bHtEnable = TRUE\n")); | 482 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC -pAd->StaActive.SupportedHtPhy.bHtEnable = TRUE\n")); |
485 | } | 483 | } |
486 | else | 484 | else |
487 | #endif // DOT11_N_SUPPORT // | ||
488 | { | 485 | { |
489 | pAd->MlmeAux.HtCapabilityLen = 0; | 486 | pAd->MlmeAux.HtCapabilityLen = 0; |
490 | pAd->StaActive.SupportedPhyInfo.bHtEnable = FALSE; | 487 | pAd->StaActive.SupportedPhyInfo.bHtEnable = FALSE; |
@@ -554,10 +551,9 @@ VOID PeerBeaconAtScanAction( | |||
554 | // Init Variable IE structure | 551 | // Init Variable IE structure |
555 | pVIE = (PNDIS_802_11_VARIABLE_IEs) VarIE; | 552 | pVIE = (PNDIS_802_11_VARIABLE_IEs) VarIE; |
556 | pVIE->Length = 0; | 553 | pVIE->Length = 0; |
557 | #ifdef DOT11_N_SUPPORT | 554 | |
558 | RTMPZeroMemory(&HtCapability, sizeof(HtCapability)); | 555 | RTMPZeroMemory(&HtCapability, sizeof(HtCapability)); |
559 | RTMPZeroMemory(&AddHtInfo, sizeof(ADD_HT_INFO_IE)); | 556 | RTMPZeroMemory(&AddHtInfo, sizeof(ADD_HT_INFO_IE)); |
560 | #endif // DOT11_N_SUPPORT // | ||
561 | 557 | ||
562 | if (PeerBeaconAndProbeRspSanity(pAd, | 558 | if (PeerBeaconAndProbeRspSanity(pAd, |
563 | Elem->Msg, | 559 | Elem->Msg, |
@@ -608,11 +604,9 @@ VOID PeerBeaconAtScanAction( | |||
608 | 604 | ||
609 | Rssi = RTMPMaxRssi(pAd, ConvertToRssi(pAd, Elem->Rssi0, RSSI_0), ConvertToRssi(pAd, Elem->Rssi1, RSSI_1), ConvertToRssi(pAd, Elem->Rssi2, RSSI_2)); | 605 | Rssi = RTMPMaxRssi(pAd, ConvertToRssi(pAd, Elem->Rssi0, RSSI_0), ConvertToRssi(pAd, Elem->Rssi1, RSSI_1), ConvertToRssi(pAd, Elem->Rssi2, RSSI_2)); |
610 | 606 | ||
611 | |||
612 | #ifdef DOT11_N_SUPPORT | ||
613 | if ((HtCapabilityLen > 0) || (PreNHtCapabilityLen > 0)) | 607 | if ((HtCapabilityLen > 0) || (PreNHtCapabilityLen > 0)) |
614 | HtCapabilityLen = SIZE_HT_CAP_IE; | 608 | HtCapabilityLen = SIZE_HT_CAP_IE; |
615 | #endif // DOT11_N_SUPPORT // | 609 | |
616 | if ((pAd->StaCfg.CCXReqType != MSRN_TYPE_UNUSED) && (Channel == pAd->StaCfg.CCXScanChannel)) | 610 | if ((pAd->StaCfg.CCXReqType != MSRN_TYPE_UNUSED) && (Channel == pAd->StaCfg.CCXScanChannel)) |
617 | { | 611 | { |
618 | Idx = BssTableSetEntry(pAd, &pAd->StaCfg.CCXBssTab, Bssid, Ssid, SsidLen, BssType, BeaconPeriod, | 612 | Idx = BssTableSetEntry(pAd, &pAd->StaCfg.CCXBssTab, Bssid, Ssid, SsidLen, BssType, BeaconPeriod, |
@@ -682,9 +676,7 @@ VOID PeerBeaconAtJoinAction( | |||
682 | UCHAR HtCapabilityLen = 0, PreNHtCapabilityLen = 0; | 676 | UCHAR HtCapabilityLen = 0, PreNHtCapabilityLen = 0; |
683 | UCHAR AddHtInfoLen; | 677 | UCHAR AddHtInfoLen; |
684 | UCHAR NewExtChannelOffset = 0xff; | 678 | UCHAR NewExtChannelOffset = 0xff; |
685 | #ifdef DOT11_N_SUPPORT | ||
686 | UCHAR CentralChannel; | 679 | UCHAR CentralChannel; |
687 | #endif // DOT11_N_SUPPORT // | ||
688 | 680 | ||
689 | // Init Variable IE structure | 681 | // Init Variable IE structure |
690 | pVIE = (PNDIS_802_11_VARIABLE_IEs) VarIE; | 682 | pVIE = (PNDIS_802_11_VARIABLE_IEs) VarIE; |
@@ -800,7 +792,7 @@ VOID PeerBeaconAtJoinAction( | |||
800 | RTMPCheckRates(pAd, pAd->MlmeAux.ExtRate, &pAd->MlmeAux.ExtRateLen); | 792 | RTMPCheckRates(pAd, pAd->MlmeAux.ExtRate, &pAd->MlmeAux.ExtRateLen); |
801 | 793 | ||
802 | NdisZeroMemory(pAd->StaActive.SupportedPhyInfo.MCSSet, 16); | 794 | NdisZeroMemory(pAd->StaActive.SupportedPhyInfo.MCSSet, 16); |
803 | #ifdef DOT11_N_SUPPORT | 795 | |
804 | pAd->MlmeAux.NewExtChannelOffset = NewExtChannelOffset; | 796 | pAd->MlmeAux.NewExtChannelOffset = NewExtChannelOffset; |
805 | pAd->MlmeAux.HtCapabilityLen = HtCapabilityLen; | 797 | pAd->MlmeAux.HtCapabilityLen = HtCapabilityLen; |
806 | 798 | ||
@@ -845,7 +837,6 @@ VOID PeerBeaconAtJoinAction( | |||
845 | 837 | ||
846 | } | 838 | } |
847 | else | 839 | else |
848 | #endif // DOT11_N_SUPPORT // | ||
849 | { | 840 | { |
850 | // To prevent error, let legacy AP must have same CentralChannel and Channel. | 841 | // To prevent error, let legacy AP must have same CentralChannel and Channel. |
851 | if ((HtCapabilityLen == 0) && (PreNHtCapabilityLen == 0)) | 842 | if ((HtCapabilityLen == 0) && (PreNHtCapabilityLen == 0)) |
@@ -860,9 +851,7 @@ VOID PeerBeaconAtJoinAction( | |||
860 | 851 | ||
861 | // copy QOS related information | 852 | // copy QOS related information |
862 | if ((pAd->CommonCfg.bWmmCapable) | 853 | if ((pAd->CommonCfg.bWmmCapable) |
863 | #ifdef DOT11_N_SUPPORT | ||
864 | || (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) | 854 | || (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) |
865 | #endif // DOT11_N_SUPPORT // | ||
866 | ) | 855 | ) |
867 | { | 856 | { |
868 | NdisMoveMemory(&pAd->MlmeAux.APEdcaParm, &EdcaParm, sizeof(EDCA_PARM)); | 857 | NdisMoveMemory(&pAd->MlmeAux.APEdcaParm, &EdcaParm, sizeof(EDCA_PARM)); |
@@ -1003,14 +992,12 @@ VOID PeerBeacon( | |||
1003 | if (pAd->Mlme.CntlMachine.CurrState == CNTL_WAIT_DISASSOC) | 992 | if (pAd->Mlme.CntlMachine.CurrState == CNTL_WAIT_DISASSOC) |
1004 | return; | 993 | return; |
1005 | 994 | ||
1006 | #ifdef DOT11_N_SUPPORT | ||
1007 | // Copy Control channel for this BSSID. | 995 | // Copy Control channel for this BSSID. |
1008 | if (AddHtInfoLen != 0) | 996 | if (AddHtInfoLen != 0) |
1009 | Channel = AddHtInfo.ControlChan; | 997 | Channel = AddHtInfo.ControlChan; |
1010 | 998 | ||
1011 | if ((HtCapabilityLen > 0) || (PreNHtCapabilityLen > 0)) | 999 | if ((HtCapabilityLen > 0) || (PreNHtCapabilityLen > 0)) |
1012 | HtCapabilityLen = SIZE_HT_CAP_IE; | 1000 | HtCapabilityLen = SIZE_HT_CAP_IE; |
1013 | #endif // DOT11_N_SUPPORT // | ||
1014 | 1001 | ||
1015 | // | 1002 | // |
1016 | // Housekeeping "SsidBssTab" table for later-on ROAMing usage. | 1003 | // Housekeeping "SsidBssTab" table for later-on ROAMing usage. |
@@ -1248,7 +1235,6 @@ VOID PeerBeacon( | |||
1248 | DBGPRINT(RT_DEBUG_WARN, ("SYNC - AP changed B/G protection to %d\n", bUseBGProtection)); | 1235 | DBGPRINT(RT_DEBUG_WARN, ("SYNC - AP changed B/G protection to %d\n", bUseBGProtection)); |
1249 | } | 1236 | } |
1250 | 1237 | ||
1251 | #ifdef DOT11_N_SUPPORT | ||
1252 | // check Ht protection mode. and adhere to the Non-GF device indication by AP. | 1238 | // check Ht protection mode. and adhere to the Non-GF device indication by AP. |
1253 | if ((AddHtInfoLen != 0) && | 1239 | if ((AddHtInfoLen != 0) && |
1254 | ((AddHtInfo.AddHtInfo2.OperaionMode != pAd->MlmeAux.AddHtInfo.AddHtInfo2.OperaionMode) || | 1240 | ((AddHtInfo.AddHtInfo2.OperaionMode != pAd->MlmeAux.AddHtInfo.AddHtInfo2.OperaionMode) || |
@@ -1265,7 +1251,6 @@ VOID PeerBeacon( | |||
1265 | 1251 | ||
1266 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC - AP changed N OperaionMode to %d\n", pAd->MlmeAux.AddHtInfo.AddHtInfo2.OperaionMode)); | 1252 | DBGPRINT(RT_DEBUG_TRACE, ("SYNC - AP changed N OperaionMode to %d\n", pAd->MlmeAux.AddHtInfo.AddHtInfo2.OperaionMode)); |
1267 | } | 1253 | } |
1268 | #endif // DOT11_N_SUPPORT // | ||
1269 | 1254 | ||
1270 | if (OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_SHORT_PREAMBLE_INUSED) && | 1255 | if (OPSTATUS_TEST_FLAG(pAd, fOP_STATUS_SHORT_PREAMBLE_INUSED) && |
1271 | ERP_IS_USE_BARKER_PREAMBLE(Erp)) | 1256 | ERP_IS_USE_BARKER_PREAMBLE(Erp)) |
@@ -1360,9 +1345,7 @@ VOID PeerProbeReqAction( | |||
1360 | UCHAR Addr2[MAC_ADDR_LEN]; | 1345 | UCHAR Addr2[MAC_ADDR_LEN]; |
1361 | CHAR Ssid[MAX_LEN_OF_SSID]; | 1346 | CHAR Ssid[MAX_LEN_OF_SSID]; |
1362 | UCHAR SsidLen; | 1347 | UCHAR SsidLen; |
1363 | #ifdef DOT11_N_SUPPORT | ||
1364 | UCHAR HtLen, AddHtLen, NewExtLen; | 1348 | UCHAR HtLen, AddHtLen, NewExtLen; |
1365 | #endif // DOT11_N_SUPPORT // | ||
1366 | HEADER_802_11 ProbeRspHdr; | 1349 | HEADER_802_11 ProbeRspHdr; |
1367 | NDIS_STATUS NStatus; | 1350 | NDIS_STATUS NStatus; |
1368 | PUCHAR pOutBuffer = NULL; | 1351 | PUCHAR pOutBuffer = NULL; |
@@ -1435,7 +1418,7 @@ VOID PeerProbeReqAction( | |||
1435 | END_OF_ARGS); | 1418 | END_OF_ARGS); |
1436 | FrameLen += tmp; | 1419 | FrameLen += tmp; |
1437 | } | 1420 | } |
1438 | #ifdef DOT11_N_SUPPORT | 1421 | |
1439 | if (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) | 1422 | if (pAd->CommonCfg.PhyMode >= PHY_11ABGN_MIXED) |
1440 | { | 1423 | { |
1441 | ULONG TmpLen; | 1424 | ULONG TmpLen; |
@@ -1468,7 +1451,7 @@ VOID PeerProbeReqAction( | |||
1468 | } | 1451 | } |
1469 | FrameLen += TmpLen; | 1452 | FrameLen += TmpLen; |
1470 | } | 1453 | } |
1471 | #endif // DOT11_N_SUPPORT // | 1454 | |
1472 | MiniportMMRequest(pAd, 0, pOutBuffer, FrameLen); | 1455 | MiniportMMRequest(pAd, 0, pOutBuffer, FrameLen); |
1473 | MlmeFreeMemory(pAd, pOutBuffer); | 1456 | MlmeFreeMemory(pAd, pOutBuffer); |
1474 | } | 1457 | } |