1 /** \file siteMgrApi.h 2 * \brief site manager module API 3 * 4 * \see siteMgr.c 5 */ 6 /**************************************************************************** 7 **+-----------------------------------------------------------------------+** 8 **| |** 9 **| Copyright(c) 1998 - 2008 Texas Instruments. All rights reserved. |** 10 **| All rights reserved. |** 11 **| |** 12 **| Redistribution and use in source and binary forms, with or without |** 13 **| modification, are permitted provided that the following conditions |** 14 **| are met: |** 15 **| |** 16 **| * Redistributions of source code must retain the above copyright |** 17 **| notice, this list of conditions and the following disclaimer. |** 18 **| * Redistributions in binary form must reproduce the above copyright |** 19 **| notice, this list of conditions and the following disclaimer in |** 20 **| the documentation and/or other materials provided with the |** 21 **| distribution. |** 22 **| * Neither the name Texas Instruments nor the names of its |** 23 **| contributors may be used to endorse or promote products derived |** 24 **| from this software without specific prior written permission. |** 25 **| |** 26 **| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |** 27 **| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |** 28 **| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |** 29 **| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |** 30 **| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |** 31 **| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |** 32 **| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |** 33 **| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |** 34 **| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |** 35 **| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |** 36 **| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |** 37 **| |** 38 **+-----------------------------------------------------------------------+** 39 ****************************************************************************/ 40 41 /***************************************************************************/ 42 /* */ 43 /* MODULE: siteMgrApi.h */ 44 /* PURPOSE: site manager module API */ 45 /* */ 46 /***************************************************************************/ 47 #ifndef __SITE_MGR_API_H__ 48 #define __SITE_MGR_API_H__ 49 50 #include "osTIType.h" 51 #include "paramOut.h" 52 #include "paramIn.h" 53 #include "802_11Defs.h" 54 #include "mlmeApi.h" 55 #include "siteHash.h" 56 #include "ScanCncnApi.h" 57 #include "bssTypes.h" 58 59 60 /* Site manager interface functions prototypes */ 61 62 TI_HANDLE siteMgr_create(TI_HANDLE hOs); 63 64 TI_STATUS siteMgr_config( TI_HANDLE hSiteMgr, 65 TI_HANDLE hConn, 66 TI_HANDLE hSmeSm, 67 TI_HANDLE hCtrlData, 68 TI_HANDLE hRxData, 69 TI_HANDLE hTxData, 70 TI_HANDLE hRsn, 71 TI_HANDLE hAuth, 72 TI_HANDLE hAssoc, 73 TI_HANDLE hHalCtrl, 74 TI_HANDLE hMlmeSm, 75 TI_HANDLE hRegulatoryDomain, 76 TI_HANDLE hMeasurementMgr, 77 TI_HANDLE hApConn, 78 TI_HANDLE hCurrBss, 79 TI_HANDLE hReport, 80 TI_HANDLE hOs , 81 TI_HANDLE hExcMngr, 82 TI_HANDLE hQosMngr, 83 TI_HANDLE thePowerMgrHandle, 84 TI_HANDLE hScr, 85 TI_HANDLE hEvHandler, 86 TI_HANDLE hMacServices, 87 siteMgrInitParams_t *pSiteMgrInitParams); 88 89 TI_STATUS siteMgr_unLoad(TI_HANDLE hSiteMgr); 90 91 TI_STATUS siteMgr_setParam(TI_HANDLE hSiteMgr, 92 paramInfo_t *pParam); 93 94 TI_STATUS siteMgr_getParam(TI_HANDLE hSiteMgr, 95 paramInfo_t *pParam); 96 97 TI_STATUS siteMgr_join(TI_HANDLE hSiteMgr); 98 99 TI_STATUS siteMgr_forceInfraJoin(TI_HANDLE hSiteMgr); 100 TI_STATUS siteMgr_disJoin(TI_HANDLE hSiteMgr); 101 102 TI_STATUS siteMgr_removeSelfSite(TI_HANDLE hSiteMgr); 103 104 TI_STATUS siteMgr_disSelectSite(TI_HANDLE hSiteMgr); 105 106 TI_STATUS systemConfig(siteMgr_t *pSiteMgr); 107 108 TI_STATUS siteMgr_start(TI_HANDLE hSiteMgr); 109 110 TI_STATUS siteMgr_stop(TI_HANDLE hSiteMgr); 111 112 TI_STATUS siteMgr_resetSiteTable(TI_HANDLE hSiteMgr, siteTablesParams_t* pSiteTableParams); 113 114 TI_STATUS siteMgr_removeNotReceivedSites(TI_HANDLE hSiteMgr); 115 116 TI_STATUS siteMgr_updatePrimarySiteFailStatus(TI_HANDLE hSiteMgr, 117 BOOL bRemoveSite); 118 119 TI_STATUS siteMgr_resetPrimarySiteAttemptsNumber(TI_HANDLE hSiteMgr); 120 121 TI_STATUS siteMgr_resetPrevPrimarySiteRssi(TI_HANDLE hSiteMgr); 122 123 TI_STATUS siteMgr_selectSite(TI_HANDLE hSiteMgr); 124 125 siteEntry_t* siteMgr_selectSiteFromTable(TI_HANDLE hSiteMgr); 126 127 void siteMgr_setNotReceivedParameter(TI_HANDLE hSiteMgr, ssid_t* ssid , radioBand_e band); 128 129 void siteMgr_resetAttemptsNumberParameter(TI_HANDLE hSiteMgr); 130 131 void siteMgrControlLnaOperation(TI_HANDLE hSiteMgr, BOOL NextState); 132 133 BOOL siteMgr_isCurrentBand24(TI_HANDLE hSiteMgr); 134 135 BOOL siteMgr_isThereCountryIEforCurrentBand(TI_HANDLE hSiteMgr); 136 137 BOOL siteMgr_isThereValidSSID (TI_HANDLE hSiteMgr); 138 139 TI_STATUS pbccAlgorithm(TI_HANDLE hSiteMgr); 140 141 TI_STATUS siteMgr_assocReport(TI_HANDLE hSiteMgr, UINT16 capabilities, BOOL bCiscoAP); 142 143 void siteMgr_setCurrentTable(TI_HANDLE hSiteMgr, radioBand_e radioBand); 144 145 void siteMgr_updateRates(TI_HANDLE hSiteMgr, BOOL dot11a, BOOL updateToOS); 146 147 void siteMgr_bandParamsConfig(TI_HANDLE hSiteMgr, BOOL updateToOS); 148 149 void siteMgr_ConfigRate(TI_HANDLE hSiteMgr); 150 151 TI_STATUS siteMgr_getWMEParamsSite(TI_HANDLE hSiteMgr,ACParameters_t **pWME_ACParameters_t); 152 153 TI_STATUS siteMgr_setWMEParamsSite(TI_HANDLE hSiteMgr,dot11_WME_PARAM_t *pDot11_WME_PARAM); 154 155 void siteMgr_resetChannelList(TI_HANDLE hSiteMgr); 156 157 siteEntry_t *siteMgr_findSiteEntry(TI_HANDLE hSiteMgrm, macAddress_t *bssid); 158 159 TI_STATUS siteMgr_resetEventStatisticsHistory(TI_HANDLE hSiteMgr); 160 161 void siteMgr_IsERP_Needed(TI_HANDLE hSiteMgr,BOOL *useProtection,BOOL *NonErpPresent,BOOL *barkerPreambleType); 162 163 TI_STATUS siteMgr_updateNewApList (TI_HANDLE hSiteMgr); 164 165 TI_STATUS siteMgr_overwritePrimarySite(TI_HANDLE hSiteMgr, bssEntry_t *newAP, BOOL requiredToStorePrevSite); 166 167 void siteMgr_clearFirstBcnFlag(TI_HANDLE hSiteMgr); 168 169 void siteMgr_setFirstBcnFlag(TI_HANDLE hSiteMgr); 170 171 void siteMgr_checkTxPower(TI_HANDLE hSiteMgr); 172 173 void siteMgr_printPrimarySiteDesc(TI_HANDLE hSiteMgr ); 174 175 void siteMgr_keepAliveSendNullDataTimer(TI_HANDLE hSiteMgr); 176 177 #endif /* __SITE_MGR_API_H__ */ 178