/* * 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 ); }