Home | History | Annotate | Download | only in Sta_Management

Lines Matching refs:pSiteMgr

131                                                             TRACE2( pSiteMgr->hReport, REPORT_SEVERITY_ERROR, \
137 os_memoryCopy(pSiteMgr->hOs, \
163 #define UPDATE_LOCAL_TIME_STAMP(pSiteMgr, pSite, pFrameInfo) pSite->localTimeStamp = os_timeStampMs(pSiteMgr->hOs)
182 os_memoryCopy(pSiteMgr->hOs, (void *)pSite->pRsnIe[index].rsnIeData, (void *)pRsnIe->rsnIeData, pRsnIe->hdr[1]);\
189 #define UPDATE_BEACON_TIMESTAMP(pSiteMgr, pSite, pFrameInfo) os_memoryCopy(pSiteMgr->hOs, pSite->tsfTimeStamp, (void *)pFrameInfo->content.iePacket.timestamp, TIME_STAMP_LEN)
198 static void release_module(siteMgr_t *pSiteMgr, TI_UINT32 initVec);
200 static void updateSiteInfo(siteMgr_t *pSiteMgr, mlmeFrameInfo_t *pFrameInfo, siteEntry_t *pSite, TI_UINT8 rxChannel);
202 static void updateRates(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo);
204 static void updateBeaconQosParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo);
206 static void updateProbeQosParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo);
208 static void updateWSCParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo);
210 static void updatePreamble(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo);
212 static void getPrimarySiteDesc(siteMgr_t *pSiteMgr, OS_802_11_BSSID *pPrimarySiteDesc, TI_BOOL supplyExtendedInfo);
214 static TI_STATUS getPrimaryBssid(siteMgr_t *pSiteMgr, OS_802_11_BSSID_EX *primaryBssid, TI_UINT32 *pLength);
216 static ERate translateRateMaskToValue(siteMgr_t *pSiteMgr, TI_UINT32 rateMask);
218 static void getSupportedRateSet(siteMgr_t *pSiteMgr, TRates *pRatesSet);
220 static TI_STATUS setSupportedRateSet(siteMgr_t *pSiteMgr, TRates *pRatesSet);
224 static int parseWscMethodFromIE (siteMgr_t *pSiteMgr, dot11_WSC_t *WSCParams, TIWLN_SIMPLE_CONFIG_MODE *pSelectedMethod);
226 static TI_UINT16 incrementTxSessionCount(siteMgr_t *pSiteMgr);
239 void siteMgr_setTemporaryTxPower(siteMgr_t* pSiteMgr, TI_BOOL bActivateTempFix)
243 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_setTemporaryTxPower is = \n");
248 regulatoryDomain_setParam(pSiteMgr->hRegulatoryDomain,&param);
254 /*static void UPDATE_RSN_IE (siteMgr_t* pSiteMgr, siteEntry_t *pSite, dot11_RSN_t *pRsnIe, TI_UINT8 rsnIeLen)
262 os_memoryCopy(pSiteMgr->hOs, pSite->pRsnIe[index].rsnIeData, pRsnIe->rsnIeData, pRsnIe->hdr[1]);
287 siteMgr_t *pSiteMgr;
292 pSiteMgr = os_memoryAlloc(hOs, sizeof(siteMgr_t));
293 if (pSiteMgr == NULL)
298 os_memoryZero(hOs, pSiteMgr, sizeof(siteMgr_t));
302 pSiteMgr->pDesiredParams = os_memoryAlloc(hOs, sizeof(siteMgrInitParams_t));
303 if (pSiteMgr->pDesiredParams == NULL)
305 release_module(pSiteMgr, initVec);
311 pSiteMgr->pSitesMgmtParams = os_memoryAlloc(hOs, sizeof(sitesMgmtParams_t));
312 if (pSiteMgr->pSitesMgmtParams == NULL)
314 release_module(pSiteMgr, initVec);
320 pSiteMgr->hOs = hOs;
322 return(pSiteMgr);
343 siteMgr_t *pSiteMgr
346 pSiteMgr->hConn = pStadHandles->hConn;
347 pSiteMgr->hSmeSm = pStadHandles->hSme;
348 pSiteMgr->hTWD = pStadHandles->hTWD;
349 pSiteMgr->hCtrlData = pStadHandles->hCtrlData;
350 pSiteMgr->hRxData = pStadHandles->hRxData;
351 pSiteMgr->hTxCtrl = pStadHandles->hTxCtrl;
352 pSiteMgr->hRsn = pStadHandles->hRsn;
353 pSiteMgr->hAuth = pStadHandles->hAuth;
354 pSiteMgr->hAssoc = pStadHandles->hAssoc;
355 pSiteMgr->hRegulatoryDomain = pStadHandles->hRegulatoryDomain;
356 pSiteMgr->hMeasurementMgr = pStadHandles->hMeasurementMgr;
357 pSiteMgr->hReport = pStadHandles->hReport;
358 pSiteMgr->hOs = pStadHandles->hOs;
359 pSiteMgr->hMlmeSm = pStadHandles->hMlmeSm;
360 pSiteMgr->hAssoc = pStadHandles->hAssoc;
361 pSiteMgr->hReport = pStadHandles->hReport;
362 pSiteMgr->hXCCMngr = pStadHandles->hXCCMngr;
363 pSiteMgr->hApConn = pStadHandles->hAPConnection;
364 pSiteMgr->hCurrBss = pStadHandles->hCurrBss;
365 pSiteMgr->hQosMngr = pStadHandles->hQosMngr;
366 pSiteMgr->hPowerMgr = pStadHandles->hPowerMgr;
367 pSiteMgr->hScr = pStadHandles->hSCR;
368 pSiteMgr->hEvHandler = pStadHandles->hEvHandler;
369 pSiteMgr->hStaCap = pStadHandles->hStaCap;
376 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
383 pSiteMgr->siteMgrTxPowerCheckTime = 0;
384 pSiteMgr->siteMgrWSCCurrMode = TIWLN_SIMPLE_CONFIG_OFF;
385 pSiteMgr->includeWSCinProbeReq = pSiteMgrInitParams->includeWSCinProbeReq;
388 os_memoryCopy(pSiteMgr->hOs, pSiteMgr->pDesiredParams, pSiteMgrInitParams, sizeof(siteMgrInitParams_t));
391 pSiteMgr->beaconFilterParams.desiredState = pSiteMgrInitParams->beaconFilterParams.desiredState;
393 pSiteMgr->beaconFilterParams.numOfStored = pSiteMgrInitParams->beaconFilterParams.numOfStored;
396 pSiteMgr->pSitesMgmtParams->dot11A_sitesTables.maxNumOfSites = MAX_SITES_A_BAND;
397 siteMgr_resetSiteTable(pSiteMgr,(siteTablesParams_t *)&pSiteMgr->pSitesMgmtParams->dot11A_sitesTables);
398 pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables.maxNumOfSites = MAX_SITES_BG_BAND;
399 siteMgr_resetSiteTable(pSiteMgr,&pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables);
402 timestamp = os_timeStampMs(pSiteMgr->hOs);
403 os_memoryCopy(pSiteMgr->hOs, (void *)&(pSiteMgr->ibssBssid[0]), &timestamp, sizeof(TI_UINT32));
405 timestamp = os_timeStampMs(pSiteMgr->hOs);
406 os_memoryCopy(pSiteMgr->hOs, (void *)&(pSiteMgr->ibssBssid[2]), &timestamp, sizeof(TI_UINT32));
409 status = ctrlData_getParamBssid(pSiteMgr->hCtrlData, CTRL_DATA_MAC_ADDRESS, saBssid);
412 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE ,"\n ERROR !!! : siteMgr_config - Error in getting MAC address\n" );
416 pSiteMgr->ibssBssid[0] = 0x02;
417 pSiteMgr->ibssBssid[1] = saBssid[1];
418 pSiteMgr->ibssBssid[2] = saBssid[2];
420 pSiteMgr->pDesiredParams->siteMgrSupportedBand = RADIO_BAND_DUAL;
422 pSiteMgr->beaconSentCount = 0;
423 pSiteMgr->pDesiredParams->siteMgrDesiredAtimWindow = 0;
424 pSiteMgr->txSessionCount = MIN_TX_SESSION_COUNT;
426 if(pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_DUAL_MODE)
428 if(pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_DUAL)
430 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
431 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
432 slotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
433 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
435 else if(pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_2_4_GHZ)
437 pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode = DOT11_G_MODE;
438 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
439 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
440 slotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
441 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
445 pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode = DOT11_A_MODE;
446 pSiteMgr->siteMgrOperationalMode = DOT11_A_MODE;
447 pSiteMgr->radioBand = RADIO_BAND_5_0_GHZ;
449 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = (siteTablesParams_t *)&pSiteMgr->pSitesMgmtParams->dot11A_sitesTables;
452 else if(pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_G_MODE)
454 slotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
455 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
456 if((pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_DUAL) ||
457 (pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_2_4_GHZ))
459 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
460 pSiteMgr->siteMgrOperationalMode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
464 { TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE ,"\nERROR !!!.....The radio doesn't support the desired dot11 mode !!! \n");
469 else if(pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_B_MODE)
472 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
473 if((pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_DUAL) ||
474 (pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_2_4_GHZ))
476 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
477 pSiteMgr->siteMgrOperationalMode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
481 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE ,"\nERROR !!!.....The radio doesn't support the desired dot11 mode !!! \n");
489 pSiteMgr->radioBand = RADIO_BAND_5_0_GHZ;
490 if((pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_DUAL) ||
491 (pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_5_0_GHZ))
493 pSiteMgr->siteMgrOperationalMode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
494 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = (siteTablesParams_t *)&pSiteMgr->pSitesMgmtParams->dot11A_sitesTables;
498 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE ,"\nERROR !!!.....The radio doesn't support the desired dot11 mode !!! \n");
505 TWD_SetRadioBand(pSiteMgr->hTWD, pSiteMgr->radioBand);
506 TWD_CfgSlotTime (pSiteMgr->hTWD, slotTime);
509 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INIT, " SiteMgr - numOfElements = %d IETableSize = %d\n" , pSiteMgrInitParams->beaconFilterParams.numOfElements, pSiteMgrInitParams->beaconFilterParams.IETableSize);
511 TWD_CfgBeaconFilterTable (pSiteMgr->hTWD,
517 TWD_CfgBeaconFilterOpt (pSiteMgr->hTWD, pSiteMgrInitParams->beaconFilterParams.desiredState, pSiteMgr->beaconFilterParams.numOfStored);
519 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite = NULL;
522 os_memoryZero(pSiteMgr->hOs,&pSiteMgr->siteMgrWSCProbeReqParams,sizeof(DOT11_WSC_PROBE_REQ_MAX_LENGTH));
525 currBSS_RegisterTriggerEvent(pSiteMgr->hCurrBss, TWD_OWN_EVENT_RSSI_SNR_TRIGGER_2, (TI_UINT8)0,(void*)siteMgr_TxPowerHighThreshold,hSiteMgr);
526 currBSS_RegisterTriggerEvent(pSiteMgr->hCurrBss, TWD_OWN_EVENT_RSSI_SNR_TRIGGER_3, (TI_UINT8)0,(void*)siteMgr_TxPowerLowThreshold, hSiteMgr);
529 tTriggerCfg.threshold = (0 - pSiteMgr->pDesiredParams->TxPowerRssiThresh);
536 TWD_CfgRssiSnrTrigger (pSiteMgr->hTWD, &tTriggerCfg);
539 tTriggerCfg.threshold = (0 - pSiteMgr->pDesiredParams->TxPowerRssiRestoreThresh);
546 TWD_CfgRssiSnrTrigger (pSiteMgr->hTWD, &tTriggerCfg);
548 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INIT, ".....Site manager configured successfully\n");
572 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
574 if (!pSiteMgr)
578 release_module(pSiteMgr, initVec);
603 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
604 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
609 PowerMgr_t *pPowerMgr = (PowerMgr_t*)pSiteMgr->hPowerMgr;
619 if(pConfig->channel == pSiteMgr->pDesiredParams->siteMgrFreq2ChannelTable[channel])
630 if((pSiteMgr->pDesiredParams->siteMgrDesiredChannel != pConfig->Union.channel) ||
631 (pSiteMgr->pDesiredParams->siteMgrDesiredAtimWindow != pConfig->ATIMWindow))
633 pSiteMgr->pDesiredParams->siteMgrDesiredChannel = (TI_UINT8)pConfig->Union.channel;
634 pSiteMgr->pDesiredParams->siteMgrDesiredBeaconInterval = (TI_UINT16)pConfig->BeaconPeriod;
635 pSiteMgr->pDesiredParams->siteMgrDesiredAtimWindow = pConfig->ATIMWindow;
644 if (pSiteMgr->pDesiredParams->siteMgrDesiredChannel != pParam->content.siteMgrDesiredChannel)
645 pSiteMgr->pDesiredParams->siteMgrDesiredChannel = (TI_UINT8)pParam->content.siteMgrDesiredChannel;
649 MAC_COPY (pSiteMgr->pDesiredParams->siteMgrDesiredBSSID, pParam->content.siteMgrDesiredBSSID);
654 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "\nSet new SSID= (len=%d) \n", pParam->content.siteMgrDesiredSSID.len);
659 os_memoryCopy(pSiteMgr->hOs, &pSiteMgr->pDesiredParams->siteMgrDesiredSSID, &pParam->content.siteMgrDesiredSSID, sizeof(TSsid));
662 if ( MAX_SSID_LEN > pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len )
664 pSiteMgr->pDesiredParams->siteMgrDesiredSSID.str[pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len] = '\0';
668 pSiteMgr->ibssBssid[MAC_ADDR_LEN - 1] ++;
670 if (OS_802_11_SSID_JUNK (pSiteMgr->pDesiredParams->siteMgrDesiredSSID.str, pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len))
672 rsn_removedDefKeys(pSiteMgr->hRsn);
680 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "\nSet BssType = %d\n", pParam->content.siteMgrDesiredBSSType);
684 if (pSiteMgr->pDesiredParams->siteMgrDesiredBSSType != pParam->content.siteMgrDesiredBSSType)
686 pSiteMgr->pDesiredParams->siteMgrDesiredBSSType = pParam->content.siteMgrDesiredBSSType;
689 if(pSiteMgr->pDesiredParams->siteMgrDesiredBSSType != BSS_INDEPENDENT)
692 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
693 pSiteMgr);
697 if(pSiteMgr->pDesiredParams->siteMgrDesiredBSSType == BSS_INDEPENDENT)
699 pSiteMgr->ibssBssid[MAC_ADDR_LEN - 1] ++;
703 if (pSiteMgr->pDesiredParams->siteMgrWiFiAdhoc == TI_TRUE)
705 if(pSiteMgr->pDesiredParams->siteMgrExternalConfiguration == TI_FALSE)
717 pSiteMgr->siteMgrWSCCurrMode = pParam->content.siteMgrWSCMode.WSCMode;
718 pSiteMgr->uWscIeSize = pParam->content.siteMgrWSCMode.uWscIeSize;
720 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Setting SimpleConfig Mode to %d, IE Size = %d\n", pSiteMgr->siteMgrWSCCurrMode, pSiteMgr->uWscIeSize);
723 if(pSiteMgr->siteMgrWSCCurrMode != TIWLN_SIMPLE_CONFIG_OFF)
725 os_memoryCopy(pSiteMgr->hOs, &pSiteMgr->siteMgrWSCProbeReqParams, &pParam->content.siteMgrWSCMode.probeReqWSCIE, pSiteMgr->uWscIeSize);
729 rsn_setParam(pSiteMgr->hRsn, &param);
738 powerMgr_setParam(pSiteMgr->hPowerMgr,&param);
744 rsn_setParam(pSiteMgr->hRsn, &param);
752 powerMgr_setParam(pSiteMgr->hPowerMgr,&param);
760 sme_SetParam (pSiteMgr->hSmeSm, &param);
769 if (pSiteMgr->pDesiredParams->siteMgrDesiredModulationType != pParam->content.siteMgrDesiredModulationType)
771 pSiteMgr->pDesiredParams->siteMgrDesiredModulationType = pParam->content.siteMgrDesiredModulationType;
774 sme_Restart (pSiteMgr->hSmeSm);
792 if (pSiteMgr->pDesiredParams->siteMgrDesiredBeaconInterval != pParam->content.siteMgrDesiredBeaconInterval)
793 pSiteMgr->pDesiredParams->siteMgrDesiredBeaconInterval = pParam->content.siteMgrDesiredBeaconInterval;
801 if (pSiteMgr->pDesiredParams->siteMgrDesiredPreambleType != pParam->content.siteMgrDesiredPreambleType)
803 pSiteMgr->pDesiredParams->siteMgrDesiredPreambleType = pParam->content.siteMgrDesiredPreambleType;
808 return setSupportedRateSet(pSiteMgr, &(pParam->content.siteMgrDesiredSupportedRateSet));
814 if(pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode != pParam->content.siteMgrDot11Mode)
816 pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode = pParam->content.siteMgrDot11Mode;
819 if(pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_DUAL_MODE)
821 if(pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_DUAL)
823 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
825 else if(pSiteMgr->pDesiredParams->siteMgrSupportedBand == RADIO_BAND_2_4_GHZ)
827 pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode = DOT11_G_MODE;
828 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
832 pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode = DOT11_G_MODE;
833 pSiteMgr->siteMgrOperationalMode = DOT11_A_MODE;
838 pSiteMgr->siteMgrOperationalMode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
841 pSiteMgr->prevRadioBand = pSiteMgr->radioBand;
842 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
844 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = (siteTablesParams_t *)&pSiteMgr->pSitesMgmtParams->dot11A_sitesTables;
845 pSiteMgr->radioBand = RADIO_BAND_5_0_GHZ;
848 else if(pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE)
850 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
851 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
852 slotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
856 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
857 pSiteMgr->radioBand = RADIO_BAND_2_4_GHZ;
861 if(pSiteMgr->prevRadioBand != pSiteMgr->radioBand)
862 siteMgr_bandParamsConfig(pSiteMgr, TI_TRUE);
865 TWD_SetRadioBand(pSiteMgr->hTWD, pSiteMgr->radioBand);
866 TWD_CfgSlotTime (pSiteMgr->hTWD, slotTime);
869 if(pSiteMgr->pDesiredParams->siteMgrDesiredBSSType == BSS_INDEPENDENT)
871 pSiteMgr->ibssBssid[MAC_ADDR_LEN - 1] ++;
874 /*siteMgr_resetAllSiteTables(pSiteMgr); */
875 sme_Restart (pSiteMgr->hSmeSm);
885 pSiteMgr->siteMgrOperationalMode = pParam->content.siteMgrDot11OperationalMode;
894 pSiteMgr->prevRadioBand = pSiteMgr->radioBand;
895 pSiteMgr->radioBand = pParam->content.siteMgrRadioBand;
896 if(pSiteMgr->prevRadioBand != pSiteMgr->radioBand)
897 siteMgr_bandParamsConfig(pSiteMgr, TI_FALSE);
906 if (pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime != pParam->content.siteMgrSlotTime)
908 if (pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE)
910 pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime = pParam->content.siteMgrSlotTime;
912 TWD_CfgSlotTime (pSiteMgr->hTWD, pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime);
914 TWD_CfgSlotTime (pSiteMgr->hTWD, pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime);
923 if (pSiteMgr->beaconFilterParams.desiredState == pParam->content.siteMgrDesiredBeaconFilterState)
925 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Beacon Filter already \n");
930 pSiteMgr->beaconFilterParams.desiredState = pParam->content.siteMgrDesiredBeaconFilterState;
932 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "New Beacon Filter State is: \n");
935 TWD_CfgBeaconFilterOpt (pSiteMgr->hTWD, pSiteMgr->beaconFilterParams.desiredState, pSiteMgr->beaconFilterParams.numOfStored);
965 TWD_SetRateMngDebug(pSiteMgr->hTWD,&pParam ->content.RateMng);
982 buildArpRspTemplate(pSiteMgr, &templateStruct, staIp);
983 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
991 TWD_CfgArpIpAddrTable(pSiteMgr->hTWD, staIp , filterType, IP_VER_4);
997 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Set param, Params is not supported, %d\n", pParam->paramType);
1006 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1008 if (pSiteMgr == NULL)
1013 *wscParam = pSiteMgr->siteMgrWSCCurrMode;
1035 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1036 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
1041 if(pSiteMgr == NULL)
1051 pParam->content.pSiteMgrConfiguration->ATIMWindow = pSiteMgr->pDesiredParams->siteMgrDesiredAtimWindow;
1052 pParam->content.pSiteMgrConfiguration->BeaconPeriod = pSiteMgr->pDesiredParams->siteMgrDesiredBeaconInterval;
1054 Chan2Freq(pSiteMgr->pDesiredParams->siteMgrDesiredChannel);
1055 /*pSiteMgr->pDesiredParams->siteMgrFreq2ChannelTable[pSiteMgr->pDesiredParams->siteMgrDesiredChannel];*/
1059 pParam->content.siteMgrDesiredChannel = pSiteMgr->pDesiredParams->siteMgrDesiredChannel;
1063 pParam->content.siteMgrWSCMode.WSCMode = pSiteMgr->siteMgrWSCCurrMode;
1065 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Retrieving the SimpleConfig Mode (%d) \n", pSiteMgr->siteMgrWSCCurrMode);
1069 getSupportedRateSet(pSiteMgr, &(pParam->content.siteMgrDesiredSupportedRateSet));
1073 pParam->content.siteMgrDesiredModulationType = pSiteMgr->pDesiredParams->siteMgrDesiredModulationType;
1077 pParam->content.siteMgrDesiredBeaconInterval = pSiteMgr->pDesiredParams->siteMgrDesiredBeaconInterval;
1081 pParam->content.siteMgrDesiredPreambleType = pSiteMgr->pDesiredParams->siteMgrDesiredPreambleType;
1164 os_memoryZero(pSiteMgr->hOs, (void *)pParam->content.siteMgrCurrentSSID.str, MAX_SSID_LEN);
1169 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "siteMgr_getParam: ssid length is zero, while primarySite is selected \n");
1170 os_memoryCopy(pSiteMgr->hOs, &pParam->content.siteMgrCurrentSSID, &pPrimarySite->ssid, sizeof(TSsid));
1177 pParam->content.siteMgrCurrentBSSType = pSiteMgr->pDesiredParams->siteMgrDesiredBSSType;
1178 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Trying to get current BSS Type while no site is selected\n");
1195 pParam->content.siteMgrCurrentRateMask.basicRateMask = pSiteMgr->pDesiredParams->siteMgrMatchedBasicRateMask;
1196 pParam->content.siteMgrCurrentRateMask.supportedRateMask = pSiteMgr->pDesiredParams->siteMgrMatchedSuppRateMask;
1197 TRACE4(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "SITE_MGR: bitmapBasicPrimary= 0x%X,bitMapBasicDesired = 0x%X,bitMapSuppPrimary = 0x%X, bitMapSuppDesired = 0x%X\n", pPrimarySite->rateMask.basicRateMask,pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask, pPrimarySite->rateMask.supportedRateMask,pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask);
1206 pParam->content.siteMgrCurrentModulationType = pSiteMgr->chosenModulation;
1210 pParam->content.siteMgrSlotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
1215 if(pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE)
1218 pParam->content.siteMgrSlotTime = pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime;
1222 else if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
1249 if ( NULL != pSiteMgr )
1251 pParam->content.siteMgrDesiredBeaconFilterState = pSiteMgr->beaconFilterParams.desiredState;
1255 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "pSite = NULL ! No info available");
1261 getPrimarySiteDesc(pSiteMgr, pParam->content.pSiteMgrPrimarySiteDesc, TI_FALSE);
1265 getPrimarySiteDesc(pSiteMgr, (OS_802_11_BSSID *)pParam->content.pSiteMgrSelectedSiteInfo,TI_TRUE);
1269 status = getPrimaryBssid(pSiteMgr, (OS_802_11_BSSID_EX *)pParam->content.pSiteMgrSelectedSiteInfo, &pParam->paramLength);
1275 rxData_getParam(pSiteMgr->hRxData, pParam);
1278 TWD_GetParam (pSiteMgr->hTWD, &tTwdParam);
1286 auth_getParam(pSiteMgr->hAuth, pParam);
1289 mlme_getParam(pSiteMgr->hMlmeSm, pParam);
1292 assoc_getParam(pSiteMgr->hAssoc, pParam);
1293 pParam->content.siteMgrTiWlanCounters.BeaconsXmit = pSiteMgr->beaconSentCount;
1298 TFwInfo *pFwInfo = TWD_GetFWInfo (pSiteMgr->hTWD);
1299 os_memoryCopy(pSiteMgr->hOs,
1308 ERate rate = txCtrlParams_GetTxRate (pSiteMgr->hTxCtrl);
1316 rxData_getParam (pSiteMgr->hRxData, pParam);
1323 pParam->content.siteMgrDot11Mode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
1329 pParam->content.siteMgrDot11Mode = pSiteMgr->siteMgrOperationalMode;
1333 pParam->content.siteMgrDot11Mode = pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode;
1339 pParam->content.siteMgrDot11OperationalMode = pSiteMgr->siteMgrOperationalMode;
1343 pParam->content.siteMgrRadioBand = pSiteMgr->radioBand;
1377 if (pSiteMgr->pSitesMgmtParams->pPrevPrimarySite==NULL)
1381 MAC_COPY (pParam->content.siteMgrDesiredBSSID, pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->bssid);
1385 if (pSiteMgr->pSitesMgmtParams->pPrevPrimarySite==NULL)
1390 if ( pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.len > MAX_SSID_LEN )
1392 TRACE2( pSiteMgr->hReport, REPORT_SEVERITY_ERROR,
1393 "siteMgr_getParam. pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.len=%d exceeds the limit %d\n",
1394 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.len, MAX_SSID_LEN);
1398 pParam->content.siteMgrDesiredSSID.len = pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.len;
1399 os_memoryCopy(pSiteMgr->hOs,
1401 (void *)pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.str,
1402 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->ssid.len);
1406 if (pSiteMgr->pSitesMgmtParams->pPrevPrimarySite==NULL)
1410 pParam->content.siteMgrDesiredChannel = pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->channel;
1420 (TI_UINT8*)(&(pSiteMgr->pSitesMgmtParams->pCurrentSiteTable->siteTable[siteEntryIndex]));
1424 pParam->content.siteMgrNumberOfSites = pSiteMgr->pSitesMgmtParams->pCurrentSiteTable->numOfSites;
1428 os_memoryCopy(pSiteMgr->hOs, pParam->content.siteMgrCurrentTsfTimeStamp,
1429 pSiteMgr->pSitesMgmtParams->pPrimarySite->tsfTimeStamp,
1438 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Not connected to an AP...\n");
1476 return cmdBld_ItrRateParams (pSiteMgr->hTWD,
1483 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Get param, Params is not supported, 0x%x\n", pParam->paramType);
1513 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1521 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
1526 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Join BSS, Primary Site is NULL\n");
1531 systemConfig(pSiteMgr);
1544 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
1560 joinParams.basicRateSet = (TI_UINT16)pSiteMgr->pDesiredParams->siteMgrMatchedBasicRateMask;
1563 ctrlData_getParamPreamble(pSiteMgr->hCtrlData, &curPreamble); /* CTRL_DATA_CURRENT_PREAMBLE_TYPE_PARAM */
1565 TWD_CfgPreamble (pSiteMgr->hTWD, curPreamble);
1573 buildProbeRspTemplate(pSiteMgr, &templateStruct);
1574 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1580 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1586 buildNullTemplate(pSiteMgr, &templateStruct);
1587 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1592 buildPsPollTemplate(pSiteMgr, &templateStruct);
1593 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1599 buildQosNullDataTemplate(pSiteMgr, &templateStruct, 0);
1600 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1605 buildDisconnTemplate(pSiteMgr, &templateStruct);
1606 TWD_CmdTemplate (pSiteMgr->hTWD, &templateStruct, NULL, NULL);
1610 siteMgr_setTemporaryTxPower(pSiteMgr, TI_FALSE);
1613 joinParams.txSessionCount = incrementTxSessionCount(pSiteMgr);
1635 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1636 siteTablesParams_t *currTable = pSiteMgr->pSitesMgmtParams->pCurrentSiteTable;
1638 if(pSiteMgr->pSitesMgmtParams->pPrimarySite == NULL)
1640 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_WARNING, "Remove self site Failure, pointer is NULL\n\n");
1644 if(pSiteMgr->pSitesMgmtParams->pPrimarySite->siteType != SITE_SELF)
1646 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Remove self site Failure, site is not self\n\n");
1650 removeSiteEntry(pSiteMgr, currTable, pSiteMgr->pSitesMgmtParams->pPrimarySite);
1651 pSiteMgr->pSitesMgmtParams->pPrimarySite = NULL;
1666 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1670 pSite = findAndInsertSiteEntry(pSiteMgr, (TMacAddr*)&our_bssid, band);
1673 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "siteMgr_IbssMerge, cannot find our site table entry, our_bssid: %X-%X-%X-%X-%X-%X\n", (our_bssid)[0], (our_bssid)[1], (our_bssid)[2], (our_bssid)[3], (our_bssid)[4], (our_bssid)[5]);
1677 updateSiteInfo(pSiteMgr, pFrameInfo, pSite, rxChannel);
1680 pSiteMgr->pSitesMgmtParams->pPrimarySite = pSite;
1690 conn_ibssMerge(pSiteMgr->hConn);
1733 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1741 /*if (isChannelSupprted(pSiteMgr->hRegulatoryDomain , rxChannel) == TI_FALSE)
1743 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_WARNING, "Channel ERROR - try to register a site that its channel (=%d) isn't in the regulatory domain.\n\ registration ABORTED!!!", rxChannel);
1748 pSite = findAndInsertSiteEntry(pSiteMgr, bssid, band);
1754 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Site Update failure, table is full, bssid: %X-%X-%X-%X-%X-%X\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1758 updateSiteInfo(pSiteMgr, pFrameInfo, pSite, rxChannel);
1763 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "PRIMARY site updated, bssid: %X-%X-%X-%X-%X-%X\n\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1764 if (pSiteMgr->pSitesMgmtParams->pPrimarySite == NULL)
1766 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "siteMgr_updateSite: Primary Site Is NULL\n");
1776 (pSiteMgr->chosenModulation == DRV_MODULATION_PBCC) &&
1778 (pSiteMgr->currentDataModulation != pSite->beaconModulation))
1780 pSiteMgr->currentDataModulation = pSite->beaconModulation;
1781 pbccAlgorithm(pSiteMgr);
1786 if((pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE) &&
1792 TWD_CfgSlotTime (pSiteMgr->hTWD, pSite->currentSlotTime);
1797 if((pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE) && (pSite->bssType == BSS_INFRASTRUCTURE))
1801 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
1806 if((pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE) &&
1808 (pSiteMgr->pDesiredParams->siteMgrDesiredPreambleType != PREAMBLE_LONG))
1819 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
1823 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
1828 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "REGULAR site added, bssid: %X-%X-%X-%X-%X-%X\n\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1833 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "SELF ----> PRIMARY site , bssid: %X-%X-%X-%X-%X-%X\n\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1834 conn_ibssStaJoined(pSiteMgr->hConn);
1838 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "REGULAR site updated, bssid: %X-%X-%X-%X-%X-%X\n\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1842 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Setting site type failure, bssid: %X-%X-%X-%X-%X-%X\n\n", (*bssid)[0], (*bssid)[1], (*bssid)[2], (*bssid)[3], (*bssid)[4], (*bssid)[5]);
1864 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1867 if(pSiteMgr->pSitesMgmtParams->pPrimarySite)
1868 pSiteMgr->pSitesMgmtParams->pPrimarySite->localTimeStamp = os_timeStampMs(pSiteMgr->hOs);
1913 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1914 siteTablesParams_t *currTable = pSiteMgr->pSitesMgmtParams->pCurrentSiteTable;
1916 if (pSiteMgr->pSitesMgmtParams->pPrimarySite == NULL)
1919 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, " SITE MGR: bRemoveSite = %d \n", bRemoveSite);
1923 removeSiteEntry(pSiteMgr, currTable, pSiteMgr->pSitesMgmtParams->pPrimarySite);
1924 pSiteMgr->pSitesMgmtParams->pPrimarySite = NULL;
1928 pSiteMgr->pSitesMgmtParams->pPrimarySite->failStatus = STATUS_UNSPECIFIED;
1950 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
1952 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
1972 TI_STATUS removeEldestSite(siteMgr_t *pSiteMgr)
1975 siteEntry_t *pEldestSite = NULL, *pSiteTable = pSiteMgr->pSitesMgmtParams->pCurrentSiteTable->siteTable;
1976 siteTablesParams_t *currTable = pSiteMgr->pSitesMgmtParams->pCurrentSiteTable;
1977 TI_UINT32 currentTimsStamp = os_timeStampMs(pSiteMgr->hOs);
1989 removeSiteEntry(pSiteMgr, currTable, pEldestSite);
2030 INPUT: pSiteMgr - site mgr handle.
2038 static void release_module(siteMgr_t *pSiteMgr, TI_UINT32 initVec)
2040 if ( (initVec & (1 << MGMT_PARAMS_INIT_BIT)) && pSiteMgr->pSitesMgmtParams)
2041 os_memoryFree(pSiteMgr->hOs, pSiteMgr->pSitesMgmtParams, sizeof(sitesMgmtParams_t));
2043 if ( (initVec & (1 << DESIRED_PARAMS_INIT_BIT)) && pSiteMgr->pDesiredParams)
2044 os_memoryFree(pSiteMgr->hOs, pSiteMgr->pDesiredParams, sizeof(siteMgrInitParams_t));
2047 os_memoryFree(pSiteMgr->hOs, pSiteMgr, sizeof(siteMgr_t));
2078 INPUT: pSiteMgr - site mgr handle.
2087 static void updateSiteInfo(siteMgr_t *pSiteMgr, mlmeFrameInfo_t *pFrameInfo, siteEntry_t *pSite, TI_UINT8 rxChannel)
2111 else if (pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len > 0)
2115 if (os_memoryCompare (pSiteMgr->hOs,
2116 (TI_UINT8 *)pSiteMgr->pDesiredParams->siteMgrDesiredSSID.str,
2118 pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len)==0)
2126 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateSiteInfo BEACON, pSsid=NULL\n");
2139 updatePreamble(pSiteMgr, pSite, pFrameInfo);
2144 if(pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE)
2151 siteMgr_UpdatHtParams ((TI_HANDLE)pSiteMgr, pSite, pFrameInfo);
2153 updateRates(pSiteMgr, pSite, pFrameInfo);
2158 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateSiteInfo, wrong CHANNELS:rxChannel=%d,currChannel=%d\n", rxChannel, pFrameInfo->content.iePacket.pDSParamsSet->currChannel);
2174 updateBeaconQosParams(pSiteMgr, pSite, pFrameInfo);
2185 regulatoryDomain_setParam(pSiteMgr->hRegulatoryDomain,&param);
2189 updateWSCParams(pSiteMgr, pSite, pFrameInfo);
2191 UPDATE_LOCAL_TIME_STAMP(pSiteMgr, pSite, pFrameInfo);
2204 if (pSiteMgr->pSitesMgmtParams->pPrimarySite == NULL)
2206 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateSiteInfo: Primary Site Is NULL\n");
2229 regulatoryDomain_setParam(pSiteMgr->hRegulatoryDomain, &param);
2238 regulatoryDomain_getParam(pSiteMgr->hRegulatoryDomain,&param);
2244 regulatoryDomain_setParam(pSiteMgr->hRegulatoryDomain,&param);
2255 StaCap_IsHtEnable (pSiteMgr->hStaCap, &b11nEnable);
2258 qosMngr_GetWmeEnableFlag (pSiteMgr->hQosMngr, &bWmeEnable);
2262 TWD_CfgSetFwHtInformation (pSiteMgr->hTWD, &pSite->tHtInformation);
2277 UPDATE_BEACON_TIMESTAMP(pSiteMgr, pSite, pFrameInfo);
2281 TWD_UpdateDtimTbtt (pSiteMgr->hTWD, pSite->dtimPeriod, pSite->beaconInterval);
2296 pSiteMgr->pDesiredParams->siteMgrDesiredSSID.len > 0)
2298 if (os_memoryCompare (pSiteMgr->hOs,
2299 (TI_UINT8*)pSiteMgr->pDesiredParams->siteMgrDesiredSSID.str,
2309 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateSiteInfo PROBE_RESP, pSsid=NULL\n");
2322 if(pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE)
2327 updatePreamble(pSiteMgr, pSite, pFrameInfo);
2332 siteMgr_UpdatHtParams ((TI_HANDLE)pSiteMgr, pSite, pFrameInfo);
2334 updateRates(pSiteMgr, pSite, pFrameInfo);
2339 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateSiteInfo, wrong CHANNELS:rxChannel=%d,currChannel=%d\n", rxChannel, pFrameInfo->content.iePacket.pDSParamsSet->currChannel);
2352 updateProbeQosParams(pSiteMgr, pSite, pFrameInfo);
2363 regulatoryDomain_setParam(pSiteMgr->hRegulatoryDomain,&param);
2367 updateWSCParams(pSiteMgr, pSite, pFrameInfo);
2369 UPDATE_LOCAL_TIME_STAMP(pSiteMgr, pSite, pFrameInfo);
2388 UPDATE_BEACON_TIMESTAMP(pSiteMgr, pSite, pFrameInfo);
2393 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Site Update failure, un known frame sub type %d\n\n", pFrameInfo->subType);
2403 INPUT: pSiteMgr - site mgr handle.
2412 static void updatePreamble(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo)
2424 INPUT: pSiteMgr - site mgr handle.
2434 static void updateBeaconQosParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo)
2450 qosMngr_updateIEinfo(pSiteMgr->hQosMngr,(TI_UINT8 *)(pFrameInfo->content.iePacket.WMEParams), QOS_WME);
2453 os_memoryCopy(pSiteMgr->hOs, &pSite->WMEParameters, &(pFrameInfo->content.iePacket.WMEParams->WME_ACParameteres), sizeof( dot11_ACParameters_t));
2455 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "$$$$$$ QOS_WME parameters were updates according to beacon, cntSeq = %d\n",pSite->lastWMEParameterCnt);
2470 INPUT: pSiteMgr - site mgr handle.
2479 static void updateProbeQosParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo)
2495 qosMngr_updateIEinfo(pSiteMgr->hQosMngr,(TI_UINT8 *)(pFrameInfo->content.iePacket.WMEParams),QOS_WME);
2498 os_memoryCopy(pSiteMgr->hOs, &pSite->WMEParameters, &(pFrameInfo->content.iePacket.WMEParams->WME_ACParameteres), sizeof( dot11_ACParameters_t));
2500 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "$$$$$$ QOS_WME parameters were updates according to probe response, cntSeq = %d\n",pSite->lastWMEParameterCnt);
2526 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
2532 os_memoryCopy (pSiteMgr->hOs, &pSite->tHtCapabilities,
2536 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION , "$$$$$$ HT capabilites parameters were updates.\n");
2547 if (os_memoryCompare (pSiteMgr->hOs,
2554 os_memoryCopy (pSiteMgr->hOs, &pSite->tHtInformation, pFrameInfo->content.iePacket.pHtInformation, sizeof(Tdot11HtInformationUnparse));
2555 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION , "$$$$$$ HT Information parameters were updates.\n");
2574 INPUT: pSiteMgr - site mgr handle.
2583 static void updateWSCParams(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo)
2585 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "updateWSCParams called (BSSID: %X-%X-%X-%X-%X-%X)\n",pSite->bssid[0], pSite->bssid[1], pSite->bssid[2], pSite->bssid[3], pSite->bssid[4], pSite->bssid[5]);
2590 parseWscMethodFromIE (pSiteMgr, pFrameInfo->content.iePacket.WSCParams, &pSite->WSCSiteMode);
2592 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "pSite->WSCSiteMode = %d\n",pSite->WSCSiteMode);
2601 static int parseWscMethodFromIE (siteMgr_t *pSiteMgr, dot11_WSC_t *WSCParams, TIWLN_SIMPLE_CONFIG_MODE *pSelectedMethod)
2611 os_memoryCopy (pSiteMgr->hOs, (void *)&tlvPtrType, (void *)tlvPtr, 2);
2619 os_memoryCopy (pSiteMgr->hOs, (void *)&selectedMethod, (void *)tlvPtr, 2);
2626 os_memoryCopy (pSiteMgr->hOs, (void *)&tlvPtrLen, (void *)tlvPtr, 2);
2658 INPUT: pSiteMgr - site mgr handle.
2667 static void updateRates(siteMgr_t *pSiteMgr, siteEntry_t *pSite, mlmeFrameInfo_t *pFrameInfo)
2676 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "updateRates, pRates=NULL, beacon & probeResp are: \n");
2692 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "1- maxBasicRate = 0x%X, maxActiveRate = 0x%X \n", maxBasicRate,maxActiveRate);
2710 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Network To Host Rate failure, no active network rate\n");
2719 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_WARNING, "Network To Host Rate failure, no basic network rate");
2769 if(pSiteMgrpSiteMgr->currentDataModulation != DRV_MODULATION_OFDM)
2773 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
2781 INPUT: pSiteMgr - site mgr handle.
2788 static TI_STATUS getPrimaryBssid(siteMgr_t *pSiteMgr, OS_802_11_BSSID_EX *primaryBssid, TI_UINT32 *pLength)
2790 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
2801 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "getPrimaryBssid. primaryBssid ptr is NULL\n");
2809 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "getPrimaryBssid, pPrimarySite is NULL \n");
2816 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "getPrimaryBssid, insufficient length, required length=%d, pLength=%d \n", length, *pLength);
2822 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Entering getPrimaryBssid, length = %d\n", *pLength);
2832 os_memoryZero(pSiteMgr->hOs, primaryBssid->Ssid.Ssid, MAX_SSID_LEN);
2837 os_memoryCopy (pSiteMgr->hOs,
2851 os_memoryZero(pSiteMgr->hOs, (void *)primaryBssid->SupportedRates, sizeof(OS_802_11_RATES_EX));
2887 os_memoryCopy(pSiteMgr->hOs, (void *)pFixedIes->TimeStamp, (void *)&pPrimarySite->tsfTimeStamp, TIME_STAMP_LEN);
2894 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Copy all variable beaconLength=%d, IELength=%d\n", pPrimarySite->beaconLength, primaryBssid->IELength);
2895 TRACE_INFO_HEX(pSiteMgr->hReport, pPrimarySite->beaconBuffer, pPrimarySite->beaconLength);
2899 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_ERROR,
2905 os_memoryCopy(pSiteMgr->hOs, pVarIes, pPrimarySite->beaconBuffer, pPrimarySite->beaconLength);
2912 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "BSSID MAC = %x-%x-%x-%x-%x-%x\n", primaryBssid->MacAddress[0], primaryBssid->MacAddress[1], primaryBssid->MacAddress[2], primaryBssid->MacAddress[3], primaryBssid->MacAddress[4], primaryBssid->MacAddress[5]);
2915 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "primaryBssid is\n");
2916 TRACE_INFO_HEX(pSiteMgr->hReport, (TI_UINT8*)primaryBssid, primaryBssid->Length);
2919 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Exiting getBssidList, length =%d, IELength=%d \n", primaryBssid->Length, primaryBssid->IELength);
2932 INPUT: pSiteMgr - site mgr handle.
2943 siteMgr_t *pSiteMgr = (siteMgr_t*) hSiteMgr;
2945 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
2948 * TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE, "-- SSID = %s \n",pPrimarySite->ssid.str);
2950 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_CONSOLE,"-- BSSID = %02x-%02x-%02x-%02x-%02x-%02x\n",
2967 INPUT: pSiteMgr - site mgr handle.
2976 static void getPrimarySiteDesc(siteMgr_t *pSiteMgr, OS_802_11_BSSID *pPrimarySiteDesc, TI_BOOL supplyExtendedInfo)
2978 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
2993 os_memoryZero(pSiteMgr->hOs, pPrimarySiteDesc, sizeof(OS_802_11_BSSID));
2997 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "getPrimarySiteDesc - enter\n");
3015 TRACE2( pSiteMgr->hReport, REPORT_SEVERITY_ERROR,
3022 os_memoryCopy (pSiteMgr->hOs,
3049 os_memoryZero(pSiteMgr->hOs, (void *)pPrimarySiteDesc->SupportedRates, sizeof(OS_802_11_RATES));
3051 os_memoryZero(pSiteMgr->hOs, (void *)pExPrimarySiteDesc->SupportedRates, sizeof(OS_802_11_RATES_EX));
3060 os_memoryCopy(pSiteMgr->hOs, (void *)pPrimarySiteDesc->SupportedRates, (void *)SupportedRates, sizeof(OS_802_11_RATES));
3062 os_memoryCopy(pSiteMgr->hOs, (void *)pExPrimarySiteDesc->SupportedRates, (void *)SupportedRates, sizeof(OS_802_11_RATES_EX));
3071 os_memoryCopy(pSiteMgr->hOs, (void *)pFixedIes->TimeStamp, (void *)&pPrimarySite->tsfTimeStamp, TIME_STAMP_LEN);
3081 os_memoryCopy (pSiteMgr->hOs,
3095 os_memoryCopy(pSiteMgr->hOs, (void *)pVarIes->data, (void *)pPrimarySite->pRsnIe[index].rsnIeData, pPrimarySite->pRsnIe[index].hdr[1]);
3097 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "RSN IE ID=%d, Length=%x\n", pVarIes->ElementID, pVarIes->Length);
3099 TRACE_INFO_HEX(pSiteMgr->hReport, (TI_UINT8 *)pVarIes->data,pVarIes->Length);
3106 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "BSSID MAC = %x-%x-%x-%x-%x-%x\n", pExPrimarySiteDesc->MacAddress[0], pExPrimarySiteDesc->MacAddress[1], pExPrimarySiteDesc->MacAddress[2], pExPrimarySiteDesc->MacAddress[3], pExPrimarySiteDesc->MacAddress[4], pExPrimarySiteDesc->MacAddress[5]);
3108 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "pExPrimarySiteDesc length before alignment = %d\n", pExPrimarySiteDesc->Length);
3116 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "pExPrimarySiteDesc length after alignment = %d\n", pExPrimarySiteDesc->Length);
3129 INPUT: pSiteMgr - site mgr handle.
3137 static ERate translateRateMaskToValue(siteMgr_t *pSiteMgr, TI_UINT32 rateMask)
3182 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_WARNING, "Translate rate mask to value, mask is 0x%X\n", rateMask);
3183 if(pSiteMgr->siteMgrOperationalMode != DOT11_A_MODE)
3196 INPUT: pSiteMgr - site mgr handle.
3203 static void getSupportedRateSet(siteMgr_t *pSiteMgr, TRates *pRatesSet)
3208 rate_DrvBitmapToNetStr (pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask,
3209 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask,
3227 INPUT: pSiteMgr - site mgr handle.
3235 static TI_STATUS setSupportedRateSet(siteMgr_t *pSiteMgr, TRates *pRatesSet)
3249 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
3262 TRACE2( pSiteMgr->hReport, REPORT_SEVERITY_ERROR,
3281 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Rates set must contain the basic set! Failing\n");
3289 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
3293 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Notice, the driver configured in 11a mode, but CCK rate appears\n");
3297 else if(pSiteMgr->siteMgrOperationalMode == DOT11_B_MODE)
3301 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Notice, the driver configured in 11b mode, but OFDM rate appears\n");
3315 if (pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxBasic > pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxActive)
3317 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "Notice, the rates configuration is invalid, basic rate is bigger than supported, Max Basic: %d Max Supported: %d\n", pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxBasic, pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxActive);
3321 pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxActive = maxActiveRate;
3322 pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxBasic = maxBasicRate;
3326 pSiteMgr->pDesiredParams->siteMgrDesiredModulationType = DRV_MODULATION_PBCC;
3328 pSiteMgr->pDesiredParams->siteMgrDesiredModulationType = DRV_MODULATION_CCK;
3330 pSiteMgr->pDesiredParams->siteMgrDesiredModulationType = DRV_MODULATION_OFDM;
3336 if((pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask != basicBitMap) ||
3337 (pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask != suppBitMap))
3339 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask = suppBitMap;
3340 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask = basicBitMap;
3341 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask = basicBitMap;
3342 pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask = suppBitMap;
3344 pSiteMgr->pDesiredParams->siteMgrMatchedBasicRateMask = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask;
3345 pSiteMgr->pDesiredParams->siteMgrMatchedSuppRateMask = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask;
3347 sme_Restart (pSiteMgr->hSmeSm);
3372 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3374 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3379 supportedRateMask = (rate_GetDrvBitmapForDefaultSupporteSet() & pSiteMgr->pDesiredParams->siteMgrMatchedSuppRateMask) ;
3381 supportedRateMask = pSiteMgr->pDesiredParams->siteMgrMatchedSuppRateMask ;
3386 if(pSiteMgr->currentDataModulation != DRV_MODULATION_PBCC &&
3387 pSiteMgr->currentDataModulation != DRV_MODULATION_OFDM)
3389 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
3392 ctrlData_setParam(pSiteMgr->hCtrlData, &param);
3415 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3416 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3425 pSiteMgr->siteMgrTxPowerEnabled = ( !bCiscoAP ) && ( pSiteMgr->pDesiredParams->TxPowerControlOn );
3427 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, ": Tx Power Control adjustment is %d\n", pSiteMgr->siteMgrTxPowerEnabled);
3448 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3449 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3463 os_memoryCopy(pSiteMgr->hOs,&pPrimarySite->WMEParameters,&pDot11_WME_PARAM->WME_ACParameteres,sizeof(dot11_ACParameters_t));
3465 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "$$$$$$ QOS_WME parameters were updates according to association response, cntSeq = %d\n",pPrimarySite->lastWMEParameterCnt);
3487 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3488 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3517 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3520 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = &pSiteMgr->pSitesMgmtParams->dot11BG_sitesTables;
3522 pSiteMgr->pSitesMgmtParams->pCurrentSiteTable = (siteTablesParams_t *)&pSiteMgr->pSitesMgmtParams->dot11A_sitesTables;
3543 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3545 localSuppRateMask = pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask;
3546 localBasicRateMask = pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask;
3551 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask = localBasicRateMask;
3552 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask = localSuppRateMask;
3555 pSiteMgr->pDesiredParams->siteMgrMatchedBasicRateMask = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask;
3556 pSiteMgr->pDesiredParams->siteMgrMatchedSuppRateMask = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask;
3561 TI_UINT32 uSupportedRates = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask;
3565 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask &= uSupportedRates;
3568 pSiteMgr->pDesiredParams->siteMgrDesiredModulationType =
3571 pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxBasic = translateRateMaskToValue(pSiteMgr, pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask);
3572 pSiteMgr->pDesiredParams->siteMgrDesiredRatePair.maxActive = translateRateMaskToValue(pSiteMgr, pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask);
3576 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3580 commonSupportedRateMask = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask;
3586 maxRate = translateRateMaskToValue(pSiteMgr, commonSupportedRateMask);
3590 EvHandlerSendEvent(pSiteMgr->hEvHandler, IPC_EVENT_LINK_SPEED, (TI_UINT8 *)&statusData,sizeof(TI_UINT32));
3608 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3615 TRACE2(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_SelectRateMatch: basic or active rate are invalid. maxBasic=%d,maxActive=%d \n", pCurrentSite->maxBasicRate ,pCurrentSite->maxActiveRate);
3621 TRACE1(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_SelectRateMatch: basic rate is too high. maxBasic=%d\n", pCurrentSite->maxBasicRate);
3626 siteMgr_updateRates(pSiteMgr, TI_FALSE, TI_TRUE);
3628 siteMgr_updateRates(pSiteMgr, TI_TRUE, TI_TRUE);
3630 StaTotalRates = pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask |
3631 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask;
3637 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_SelectRateMatch: Basic or Supported Rates Doesn't Match \n");
3659 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3662 if(pSiteMgr->siteMgrOperationalMode == DOT11_A_MODE)
3668 if (pSiteMgr->pDesiredParams->siteMgrWiFiAdhoc == TI_TRUE)
3670 if (pSiteMgr->pDesiredParams->siteMgrExternalConfiguration == TI_FALSE)
3680 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3684 OperationMode = pSiteMgr->siteMgrOperationalMode;
3689 TRACE2( pSiteMgr->hReport, REPORT_SEVERITY_ERROR,
3705 if(pSiteMgr->pDesiredParams->siteMgrDesiredChannel == SPECIAL_BG_CHANNEL)
3707 if(pSiteMgr->pDesiredParams->siteMgrRegstryBasicRate[OperationMode] > BASIC_RATE_SET_1_2_5_5_11)
3708 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRate[OperationMode] = BASIC_RATE_SET_1_2_5_5_11;
3711 if(pSiteMgr->pDesiredParams->siteMgrRegstrySuppRate[OperationMode] > SUPPORTED_RATE_SET_1_2_5_5_11)
3712 pSiteMgr->pDesiredParams->siteMgrRegstrySuppRate[OperationMode] = SUPPORTED_RATE_SET_1_2_5_5_11;
3716 if (pSiteMgr->pDesiredParams->siteMgrDesiredBSSType == BSS_INFRASTRUCTURE)
3727 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask =
3728 rate_BasicToDrvBitmap ((EBasicRateSet)(pSiteMgr->pDesiredParams->siteMgrRegstryBasicRate[OperationMode]), dot11a);
3730 pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask =
3731 rate_SupportedToDrvBitmap ((EBasicRateSet)(pSiteMgr->pDesiredParams->siteMgrRegstrySuppRate[OperationMode]), dot11a);
3733 siteMgr_updateRates(pSiteMgr, dot11a, TI_TRUE);
3736 if (pSiteMgr->pDesiredParams->siteMgrWiFiAdhoc == TI_TRUE)
3738 if (pSiteMgr->pDesiredParams->siteMgrExternalConfiguration == TI_FALSE)
3747 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3751 if( ((pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_A_MODE) ||
3752 (pSiteMgr->pDesiredParams->siteMgrDesiredDot11Mode == DOT11_DUAL_MODE)) &&
3753 !pSiteMgr->pDesiredParams->siteMgrWiFiAdhoc && pSiteMgr->pDesiredParams->siteMgrDesiredBSSType == BSS_INDEPENDENT)
3757 if(pSiteMgr->pDesiredParams->siteMgrDesiredBSSType == BSS_INDEPENDENT)
3759 pSiteMgr->siteMgrOperationalMode = DOT11_B_MODE;
3760 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask = rate_BasicToDrvBitmap (BASIC_RATE_SET_1_2_5_5_11, TI_FALSE);
3761 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask = rate_SupportedToDrvBitmap (SUPPORTED_RATE_SET_1_2_5_5_11, TI_FALSE);
3762 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask = rate_BasicToDrvBitmap (BASIC_RATE_SET_1_2_5_5_11, TI_FALSE);
3763 pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask = rate_SupportedToDrvBitmap (SUPPORTED_RATE_SET_1_2_5_5_11, TI_FALSE);
3764 pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime = PHY_SLOT_TIME_LONG;
3766 TWD_SetRadioBand(pSiteMgr->hTWD, RADIO_BAND_2_4_GHZ);
3767 TWD_CfgSlotTime (pSiteMgr->hTWD, PHY_SLOT_TIME_LONG);
3772 if(pSiteMgr->radioBand == RADIO_BAND_2_4_GHZ)
3773 pSiteMgr->siteMgrOperationalMode = DOT11_G_MODE;
3775 pSiteMgr->siteMgrOperationalMode = DOT11_A_MODE;
3776 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.basicRateMask = rate_BasicToDrvBitmap (BASIC_RATE_SET_1_2_5_5_11, TI_FALSE);
3777 pSiteMgr->pDesiredParams->siteMgrCurrentDesiredRateMask.supportedRateMask = rate_SupportedToDrvBitmap (SUPPORTED_RATE_SET_ALL, TI_FALSE);
3778 pSiteMgr->pDesiredParams->siteMgrRegstryBasicRateMask = rate_BasicToDrvBitmap (BASIC_RATE_SET_1_2_5_5_11, TI_FALSE);
3779 pSiteMgr->pDesiredParams->siteMgrRegstrySuppRateMask = rate_SupportedToDrvBitmap (SUPPORTED_RATE_SET_ALL, TI_FALSE);
3781 pSiteMgr->pDesiredParams->siteMgrDesiredSlotTime = PHY_SLOT_TIME_LONG;
3783 TWD_CfgSlotTime (pSiteMgr->hTWD, PHY_SLOT_TIME_LONG);
3791 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3793 if (pSiteMgr == NULL)
3798 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION , "siteMgr_saveProbeRespBuffer called\n");
3805 pSite = findSiteEntry(pSiteMgr, bssid);
3811 os_memoryCopy(pSiteMgr->hOs, pSite->probeRespBuffer, pProbeRespBuffer, length);
3814 TRACE17(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_saveProbeRespBuffer: BSSID=%x-%x-%x-%x-%x-%x, TSF=%x-%x-%x-%x-%x-%x-%x-%x, \n ts=%d, rssi=%d\n channel = %d \n", pSite->bssid[0], pSite->bssid[1], pSite->bssid[2], pSite->bssid[3], pSite->bssid[4], pSite->bssid[5], pSite->tsfTimeStamp[0], pSite->tsfTimeStamp[1], pSite->tsfTimeStamp[2], pSite->tsfTimeStamp[3], pSite->tsfTimeStamp[4], pSite->tsfTimeStamp[5], pSite->tsfTimeStamp[6], pSite->tsfTimeStamp[7], os_timeStampMs(pSiteMgr->hOs), pSite->rssi, pSite->channel);
3822 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3824 if (pSiteMgr==NULL)
3829 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION , "siteMgr_saveBeaconBuffer called\n");
3836 pSite = findSiteEntry(pSiteMgr, bssid);
3842 os_memoryCopy(pSiteMgr->hOs, pSite->beaconBuffer, pBeaconBuffer, length);
3845 /*if (pSiteMgr->pSitesMgmtParams->pPrimarySite!=NULL)
3847 if (!os_memoryCompare(pSiteMgr->hOs, pSiteMgr->pSitesMgmtParams->pPrimarySite->ssid.ssidString, pSite->ssid.ssidString, pSiteMgr->pSitesMgmtParams->pPrimarySite->ssid.len))
3849 TRACE16(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_saveBeaconBuffer: BSSID=%x-%x-%x-%x-%x-%x, TSF=%x-%x-%x-%x-%x-%x-%x-%x, \n ts=%d, rssi=%d \n", pSite->bssid[0], pSite->bssid[1], pSite->bssid[2], pSite->bssid[3], pSite->bssid[4], pSite->bssid[5], pSite->tsfTimeStamp[0], pSite->tsfTimeStamp[1], pSite->tsfTimeStamp[2], pSite->tsfTimeStamp[3], pSite->tsfTimeStamp[4], pSite->tsfTimeStamp[5], pSite->tsfTimeStamp[6], pSite->tsfTimeStamp[7], pSite->osTimeStamp, pSite->rssi);
3858 TRACE9(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_saveBeaconBuffer: BSSID=%x-%x-%x-%x-%x-%x, SSID=, \n ts=%d, rssi=%d\n channel = %d \n", pSite->bssid[0], pSite->bssid[1], pSite->bssid[2], pSite->bssid[3], pSite->bssid[4], pSite->bssid[5], pSite->osTimeStamp, pSite->rssi, pSite->channel);
3866 siteMgr_t *pSiteMgr = (siteMgr_t*)hSiteMgr;
3868 siteEntry_t *pPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3875 ctrlData_getParam(pSiteMgr->hCtrlData, &param);
3878 if (pSiteMgr->pDesiredParams->siteMgrWiFiAdhoc == TI_TRUE)
3887 if(pSiteMgr->siteMgrOperationalMode == DOT11_G_MODE || pSiteMgr->siteMgrOperationalMode == DOT11_DUAL_MODE)
3926 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3934 os_memoryCopy(pSiteMgr->hOs, (void *)&newAP.lastRxTSF, (void *)pCandidate->tsfTimeStamp , TIME_STAMP_LEN);
3958 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "siteMgr_CopyToPrimarySite: try to update primary site without updated prob_res\beacon\n\n");
3965 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_ERROR, "siteMgr_CopyToPrimarySite: pBufferBody is NULL !\n");
3988 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
3991 if (pSiteMgr->pSitesMgmtParams->pPrimarySite != NULL)
3993 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_disSelectSite REMOVE Primary ssid=, bssid= 0x%x-0x%x-0x%x-0x%x-0x%x-0x%x\n\n", pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[0], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[1], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[2], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[3], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[4], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[5] );
3995 pSiteMgr->pSitesMgmtParams->pPrimarySite->siteType = SITE_REGULAR;
3996 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
3997 pSiteMgr->pSitesMgmtParams->pPrimarySite = NULL;
4025 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
4027 mlmeIEParsingParams_t *ieListParseParams = mlmeParser_getParseIEsBuffer(pSiteMgr->hMlmeSm);
4029 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_overwritePrimarySite: new site bssid= 0x%x-0x%x-0x%x-0x%x-0x%x-0x%x\n\n", newAP->BSSID[0], newAP->BSSID[1], newAP->BSSID[2], newAP->BSSID[3], newAP->BSSID[4], newAP->BSSID[5]);
4034 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_overwritePrimarySite: required to store prev prim site \n");
4036 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite = pSiteMgr->pSitesMgmtParams->pPrimarySite;
4037 pSiteMgr->pSitesMgmtParams->pPrevPrimarySite->siteType = SITE_REGULAR;
4041 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_overwritePrimarySite: not required to store prev prim site \n");
4042 if (pSiteMgr->pSitesMgmtParams->pPrimarySite != NULL)
4044 TRACE6(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "Removing Primary ssid=, bssid= 0x%x-0x%x-0x%x-0x%x-0x%x-0x%x\n\n", pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[0], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[1], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[2], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[3], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[4], pSiteMgr->pSitesMgmtParams->pPrimarySite->bssid[5] );
4046 pSiteMgr->pSitesMgmtParams->pPrimarySite->siteType = SITE_REGULAR;
4047 pSiteMgr->pSitesMgmtParams->pPrimarySite->beaconRecv = TI_FALSE;
4049 pSiteMgr->pSitesMgmtParams->pPrimarySite = NULL;
4053 TRACE0(pSiteMgr->hReport, REPORT_SEVERITY_INFORMATION, "siteMgr_overwritePrimarySite: primary site is NULL \n");
4060 newApEntry = findAndInsertSiteEntry(pSiteMgr, &(newAP->BSSID), newAP->band);
4065 os_memoryZero(pSiteMgr->hOs, ieListParseParams, sizeof(mlmeIEParsingParams_t));
4075 os_memoryCopy(pSiteMgr->hOs, &newApEntry->ssid, &pSiteMgr->pDesiredParams->siteMgrDesiredSSID, sizeof(TSsid));
4094 os_memoryCopy(pSiteMgr->hOs, (void *)ieListParseParams->frame.content.iePacket.timestamp, (void *)&newAP->lastRxTSF, TIME_STAMP_LEN);
4098 if (mlmeParser_parseIEs(pSiteMgr->hMlmeSm, newAP->pBuffer, newAP->bufferLength, ieListParseParams) != TI_OK)
4108 pSiteMgr->pSitesMgmtParams->pPrimarySite = newApEntry;
4130 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
4148 TWD_SetRadioBand (pSiteMgr->hTWD, radioBand);
4160 INPUT: pSiteMgr - site mgr handle.
4167 static TI_UINT16 incrementTxSessionCount(siteMgr_t *pSiteMgr)
4169 pSiteMgr->txSessionCount++;
4170 if(pSiteMgr->txSessionCount > MAX_TX_SESSION_COUNT)
4171 pSiteMgr->txSessionCount = MIN_TX_SESSION_COUNT;
4173 txCtrlParams_updateTxSessionCount(pSiteMgr->hTxCtrl, pSiteMgr->txSessionCount);
4175 return pSiteMgr->txSessionCount;
4250 siteMgr_t *pSiteMgr = (siteMgr_t *)hSiteMgr;
4252 if (pSiteMgr->siteMgrTxPowerEnabled)
4257 siteMgr_setTemporaryTxPower (pSiteMgr, TI_TRUE) ;
4262 siteMgr_setTemporaryTxPower (pSiteMgr, TI_FALSE);