From a615fb1650af6e111053506f1b764b28a5b4631d Mon Sep 17 00:00:00 2001 From: Dmitry Shmidt Date: Thu, 28 Jan 2010 13:44:01 -0800 Subject: wl1271: Initial M4 drop based on WiLink_Driver_6.1.0.0.115 Signed-off-by: Dmitry Shmidt --- wl1271/stad/src/Sta_Management/ScanCncnSm.h | 146 ++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 wl1271/stad/src/Sta_Management/ScanCncnSm.h (limited to 'wl1271/stad/src/Sta_Management/ScanCncnSm.h') diff --git a/wl1271/stad/src/Sta_Management/ScanCncnSm.h b/wl1271/stad/src/Sta_Management/ScanCncnSm.h new file mode 100644 index 00000000..6bc9a3c2 --- /dev/null +++ b/wl1271/stad/src/Sta_Management/ScanCncnSm.h @@ -0,0 +1,146 @@ +/* + * ScanCncnSm.h + * + * 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 ScanCncnSm.h + * \brief Scan concentrator state machine declarations + * + * \see ScanCncnSm.c + */ + + +#ifndef __SCAN_CNCN_SM_H__ +#define __SCAN_CNCN_SM_H__ + +#include "osTIType.h" +#include "TWDriver.h" +#include "ScanCncn.h" + +typedef void (*TScanPrivateSMFunction)(TI_HANDLE hScanCncn); + +typedef union +{ + TPeriodicScanParams tPeriodicScanParams; + TScanParams tOneShotScanParams; +}UScanParams; + +typedef struct +{ + TI_HANDLE hOS; + TI_HANDLE hReport; + TI_HANDLE hSCR; + TI_HANDLE hTWD; + TI_HANDLE hApConn; + TI_HANDLE hMlme; + TI_HANDLE hGenSM; + TI_HANDLE hScanCncn; + TI_BOOL bScanCompletePending; /* TRUE if scan complete event is received + before all results, for periodic scan */ + TI_BOOL bInRequest; + TI_BOOL bSendNullDataOnStop; /* indicates whether NULL data frame is to be sent wehn + stopping scan to return to previous PS mode */ + TScanPrivateSMFunction fScrRequest; + TScanPrivateSMFunction fScrRelease; + TScanPrivateSMFunction fStartScan; + TScanPrivateSMFunction fStopScan; + TScanPrivateSMFunction fRecovery; + + /* Scan complete callbacks */ + TScanResultCB tScanResultCB; + TI_HANDLE hScanResultCBObj; + + UScanParams uScanParams; + EScanCncnResultStatus eScanResult; + TI_INT8 *pScanSmName; + TI_UINT16 uSPSScanResult; + TI_UINT32 uResultCounter; + TI_UINT32 uResultExpectedNumber; + TI_BOOL bScanRejectedOn2_4; +} TScanCncnClient; + +typedef enum +{ + SCAN_CNCN_SM_STATE_IDLE = 0, + SCAN_CNCN_SM_STATE_SCR_WAIT, + SCAN_CNCN_SM_STATE_SCANNING, + SCAN_CNCN_SM_STATE_STOPPING, + SCAN_CNCN_SM_NUMBER_OF_STATES +} EScanCncnSmStates; + +typedef enum +{ + SCAN_CNCN_SM_EVENT_START = 0, + SCAN_CNCN_SM_EVENT_RUN, + SCAN_CNCN_SM_EVENT_SCAN_COMPLETE, + SCAN_CNCN_SM_EVENT_STOP, + SCAN_CNCN_SM_EVENT_ABORT, + SCAN_CNCN_SM_EVENT_RECOVERY, + SCAN_CNCN_SM_EVENT_REJECT, + SCAN_CNCN_SM_NUMBER_OF_EVENTS +} EScanCncnSmEvents; + +TI_HANDLE scanCncnSm_Create (TI_HANDLE hOS); +void scanCncnSm_Init (TI_HANDLE hScanCncnClient, TI_HANDLE hReport, TI_HANDLE hTWD, + TI_HANDLE hSCR, TI_HANDLE hApConn, TI_HANDLE hMlme, + TI_HANDLE hScanCncn, TScanPrivateSMFunction fScrRequest, + TScanPrivateSMFunction fScrRelease, TScanPrivateSMFunction fStartScan, + TScanPrivateSMFunction fStopScan, TScanPrivateSMFunction fRecovery, + TI_INT8* pScanSmName); +void scanCncnSm_Destroy (TI_HANDLE hScanCncnClient); +void scanCncnSmApp1Shot_ScrRequest (TI_HANDLE hScanCncnClient); +void scanCncnSmApp1Shot_ScrRelease (TI_HANDLE hScanCncnClient); +void scanCncnSmApp1Shot_StartScan (TI_HANDLE hScanCncnClient); +void scanCncnSmApp1Shot_StopScan (TI_HANDLE hScanCncnClient); +void scanCncnSmApp1Shot_Recovery (TI_HANDLE hScanCncnClient); +void scanCncnSmAppP_ScrRequest (TI_HANDLE hScanCncnClient); +void scanCncnSmAppP_ScrRelease (TI_HANDLE hScanCncnClient); +void scanCncnSmAppP_StartScan (TI_HANDLE hScanCncnClient); +void scanCncnSmAppP_StopScan (TI_HANDLE hScanCncnClient); +void scanCncnSmAppP_Recovery (TI_HANDLE hScanCncnClient); +void scanCncnSmDrvP_ScrRequest (TI_HANDLE hScanCncnClient); +void scanCncnSmDrvP_ScrRelease (TI_HANDLE hScanCncnClient); +void scanCncnSmDrvP_StartScan (TI_HANDLE hScanCncnClient); +void scanCncnSmDrvP_StopScan (TI_HANDLE hScanCncnClient); +void scanCncnSmDrvP_Recovery (TI_HANDLE hScanCncnClient); +void scanCncnSmCont1Shot_ScrRequest (TI_HANDLE hScanCncnClient); +void scanCncnSmCont1Shot_ScrRelease (TI_HANDLE hScanCncnClient); +void scanCncnSmCont1Shot_StartScan (TI_HANDLE hScanCncnClient); +void scanCncnSmCont1Shot_StopScan (TI_HANDLE hScanCncnClient); +void scanCncnSmCont1Shot_Recovery (TI_HANDLE hScanCncnClient); +void scanCncnSmImmed1Shot_ScrRequest (TI_HANDLE hScanCncnClient); +void scanCncnSmImmed1Shot_ScrRelease (TI_HANDLE hScanCncnClient); +void scanCncnSmImmed1Shot_StartScan (TI_HANDLE hScanCncnClient); +void scanCncnSmImmed1Shot_StopScan (TI_HANDLE hScanCncnClient); +void scanCncnSmImmed1Shot_Recovery (TI_HANDLE hScanCncnClient); + +#endif /* __SCAN_CNCN_SM_H__ */ + -- cgit v1.2.3