diff options
Diffstat (limited to 'wilink_6_1/Test/ScanMngrDbg.c')
-rw-r--r-- | wilink_6_1/Test/ScanMngrDbg.c | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/wilink_6_1/Test/ScanMngrDbg.c b/wilink_6_1/Test/ScanMngrDbg.c new file mode 100644 index 0000000..ddf1b13 --- /dev/null +++ b/wilink_6_1/Test/ScanMngrDbg.c @@ -0,0 +1,166 @@ +/* + * ScanMngrDbg.c + * + * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * * Neither the name Texas Instruments nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** \file ScanMngrDbg.c + * \brief This file include the scan manager debug module implementation + * \ + * \date 29-March-2005 + */ + +#include "tidef.h" +#include "report.h" +#include "paramOut.h" +#include "scanMngr.h" +#include "ScanMngrDbg.h" +#include "siteMgrApi.h" +#include "DataCtrl_Api.h" + + +/** + * \\n + * \date 29-March-2005\n + * \brief Main scan manager debug function + * + * Function Scope \e Public.\n + * \param hScanMngr - handle to the scan manager object.\n + * \param funcType - the specific debug function.\n + * \param pParam - parameters for the debug function.\n + * \param hSiteMgr - handle to th esite manager object.\n + * \param hCtrlData - handle to the data ctrl object.\n + */ +void scanMngrDebugFunction( TI_HANDLE hScanMngr, TI_UINT32 funcType, void *pParam, TI_HANDLE hSiteMgr, TI_HANDLE hCtrlData ) +{ + switch (funcType) + { + case DBG_SCAN_MNGR_PRINT_HELP: + printScanMngrDbgFunctions(); + break; + + case DBG_SCAN_MNGR_START_CONT_SCAN: + startContScan( hScanMngr, hSiteMgr, hCtrlData ); + break; + + case DBG_SCAN_MNGR_STOP_CONT_SCAN: + scanMngr_stopContScan( hScanMngr ); + break; + + case DBG_SCAN_MNGR_START_IMMED_SCAN: + scanMngr_startImmediateScan( hScanMngr, (1 == *((TI_INT32*)pParam) ? TI_TRUE : TI_FALSE) ); + break; + + case DBG_SCAN_MNGR_STOP_IMMED_SCAN: + scanMngr_stopImmediateScan( hScanMngr ); + break; + + case DBG_SCAN_MNGR_PRINT_TRACK_LIST: + scanMngrDebugPrintBSSList( hScanMngr ); + break; + + case DBG_SCAN_MNGR_PRINT_STATS: + scanMngr_statsPrint( hScanMngr ); + break; + + case DBG_SCAN_MNGR_RESET_STATS: + scanMngr_statsReset( hScanMngr ); + break; + + case DBG_SCAN_MNGR_PIRNT_NEIGHBOR_APS: + scanMngrDebugPrintNeighborAPList( hScanMngr ); + break; + + case DBG_SCAN_MNGR_PRINT_POLICY: + scanMngrTracePrintScanPolicy( &(((scanMngr_t*)hScanMngr)->scanPolicy) ); + break; + + case DBG_SCAN_MNGR_PRINT_OBJECT: + scanMngrDebugPrintObject( hScanMngr ); + break; + + default: + WLAN_OS_REPORT(("Invalid function type in scan manager debug function: %d\n", funcType)); + break; + } +} + +/** + * \\n + * \date 29-March-2005\n + * \brief Prints scan manager debug menu + * + * Function Scope \e Public.\n + */ +void printScanMngrDbgFunctions(void) +{ + WLAN_OS_REPORT((" Scan Manager Debug Functions \n")); + WLAN_OS_REPORT(("---------------------------------------\n")); + WLAN_OS_REPORT(("1500 - Print the scan manager Debug Help\n")); + WLAN_OS_REPORT(("1501 - Start continuous scan\n")); + WLAN_OS_REPORT(("1502 - Stop continuous scan\n")); + WLAN_OS_REPORT(("1503 - Start immediate scan\n")); + WLAN_OS_REPORT(("1504 - Stop immediate scan\n")); + WLAN_OS_REPORT(("1505 - Print tracking list\n")); + WLAN_OS_REPORT(("1506 - Print statistics\n")); + WLAN_OS_REPORT(("1507 - Reset statistics\n")); + WLAN_OS_REPORT(("1508 - Print neighbor APs list\n")); + WLAN_OS_REPORT(("1509 - Print Scan Policy\n")); + WLAN_OS_REPORT(("1510 - Print scan manager object\n")); +} + +/** + * \\n + * \date 29-March-2005\n + * \brief Starts continuous scan process.\n + * + * Function Scope \e Public.\n + * \param hScanMngr - handle to the scan manager object.\n + * \param hSiteMgr - handle to the site manager object.\n\ + * \param hCtrlData - handle to the data ctrl object.\n + */ +void startContScan( TI_HANDLE hScanMngr, TI_HANDLE hSiteMgr, TI_HANDLE hCtrlData ) +{ + paramInfo_t param; + ERadioBand radioBand; + + /* get current band */ + param.paramType = SITE_MGR_RADIO_BAND_PARAM; + siteMgr_getParam( hSiteMgr, ¶m ); + radioBand = param.content.siteMgrRadioBand; + + /* get current BSSID */ + param.paramType = CTRL_DATA_CURRENT_BSSID_PARAM; + ctrlData_getParam( hCtrlData, ¶m ); + + /* start continuous scan */ + scanMngr_startContScan( hScanMngr, &(param.content.ctrlDataCurrentBSSID), radioBand ); +} + |