2 ** $Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/mgmt/aa_fsm.h#1 $
6 \brief Declaration of functions and finite state machine for SAA/AAA Module.
8 Declaration of functions and finite state machine for SAA/AAA Module.
17 * [MT6620 Wi-Fi][Driver] Reduce join failure count limit to 2 for faster re-join for other BSS
18 * 1. short join failure count limit to 2
19 * 2. treat join timeout as kind of join failure as well
23 * [WPD00003833] [MT6620 and MT5931] Driver migration - move to new repository.
26 * [WPD00003833][MT6620 and MT5931] Driver migration
27 * refine TX-DONE callback.
30 * [WPD00003833][MT6620 and MT5931] Driver migration
32 * 2) add ucTxSeqNum for tracking frames which needs TX-DONE awareness
33 * 3) add configuration options for CNM_MEM and RSN modules
34 * 4) add data path for management frames
35 * 5) eliminate rPacketInfo of MSDU_INFO_T
38 * [WPD00003833][MT6620 and MT5931] Driver migration
39 * add buildable & linkable ais_fsm.c
41 * related reference are still waiting to be resolved
44 * [WPD00003833][MT6620 and MT5931] Driver migration
45 * add aa_fsm.h, ais_fsm.h, bss.h, mib.h and scan.h.
47 * 03 10 2010 kevin.huang
48 * [BORA00000654][WIFISYS][New Feature] CNM Module - Ch Manager Support
50 * Add Channel Manager for arbitration of JOIN and SCAN Req
52 * 02 04 2010 kevin.huang
53 * [BORA00000603][WIFISYS] [New Feature] AAA Module Support
54 * Add AAA Module Support, Revise Net Type to Net Type Index for array lookup
56 * 01 11 2010 kevin.huang
57 * [BORA00000018]Integrate WIFI part into BORA for the 1st time
58 * Add Deauth and Disassoc Handler
60 * Nov 24 2009 mtk01461
61 * [BORA00000018] Integrate WIFI part into BORA for the 1st time
62 * Revise MGMT Handler with Retain Status
64 * Nov 23 2009 mtk01461
65 * [BORA00000018] Integrate WIFI part into BORA for the 1st time
73 /*******************************************************************************
74 * C O M P I L E R F L A G S
75 ********************************************************************************
78 /*******************************************************************************
79 * E X T E R N A L R E F E R E N C E S
80 ********************************************************************************
83 /*******************************************************************************
85 ********************************************************************************
87 /* Retry interval for retransmiting authentication-request MMPDU. */
88 #define TX_AUTHENTICATION_RETRY_TIMEOUT_TU 100 // TU.
90 /* Retry interval for retransmiting association-request MMPDU. */
91 #define TX_ASSOCIATION_RETRY_TIMEOUT_TU 100 // TU.
93 /* Wait for a response to a transmitted authentication-request MMPDU. */
94 #define DOT11_AUTHENTICATION_RESPONSE_TIMEOUT_TU 512 // TU.
96 /* Wait for a response to a transmitted association-request MMPDU. */
97 #define DOT11_ASSOCIATION_RESPONSE_TIMEOUT_TU 512 // TU.
99 /* The maximum time to wait for JOIN process complete. */
100 #define JOIN_FAILURE_TIMEOUT_BEACON_INTERVAL 20 // Beacon Interval, 20 * 100TU = 2 sec.
102 /* Retry interval for next JOIN request. */
103 #define JOIN_RETRY_INTERVAL_SEC 10 // Seconds
105 /* Maximum Retry Count for accept a JOIN request. */
106 #define JOIN_MAX_RETRY_FAILURE_COUNT 2 // Times
108 /*******************************************************************************
110 ********************************************************************************
112 typedef enum _ENUM_AA_STATE_T {
114 SAA_STATE_SEND_AUTH1,
115 SAA_STATE_WAIT_AUTH2,
116 SAA_STATE_SEND_AUTH3,
117 SAA_STATE_WAIT_AUTH4,
118 SAA_STATE_SEND_ASSOC1,
119 SAA_STATE_WAIT_ASSOC2,
120 AAA_STATE_SEND_AUTH2,
121 AAA_STATE_SEND_AUTH4, // We may not use, because P2P GO didn't support WEP and 11r
122 AAA_STATE_SEND_ASSOC2,
123 AA_STATE_RESOURCE, // A state for debugging the case of out of msg buffer.
127 /*******************************************************************************
128 * P U B L I C D A T A
129 ********************************************************************************
132 /*******************************************************************************
133 * P R I V A T E D A T A
134 ********************************************************************************
137 /*******************************************************************************
139 ********************************************************************************
142 /*******************************************************************************
143 * F U N C T I O N D E C L A R A T I O N S
144 ********************************************************************************
146 /*----------------------------------------------------------------------------*/
147 /* Routines in saa_fsm.c */
148 /*----------------------------------------------------------------------------*/
151 IN P_ADAPTER_T prAdapter,
152 IN P_STA_RECORD_T prStaRec,
153 IN ENUM_AA_STATE_T eNextState,
154 IN P_SW_RFB_T prRetainedSwRfb
158 saaFsmSendEventJoinComplete (
159 IN P_ADAPTER_T prAdapter,
160 WLAN_STATUS rJoinStatus,
161 P_STA_RECORD_T prStaRec,
166 saaFsmRunEventStart (
167 IN P_ADAPTER_T prAdapter,
168 IN P_MSG_HDR_T prMsgHdr
172 saaFsmRunEventTxDone (
173 IN P_ADAPTER_T prAdapter,
174 IN P_MSDU_INFO_T prMsduInfo,
175 IN ENUM_TX_RESULT_CODE_T rTxDoneStatus
179 saaFsmRunEventTxReqTimeOut (
180 IN P_ADAPTER_T prAdapter,
181 IN P_STA_RECORD_T prStaRec
185 saaFsmRunEventRxRespTimeOut (
186 IN P_ADAPTER_T prAdapter,
187 IN P_STA_RECORD_T prStaRec
191 saaFsmRunEventRxAuth (
192 IN P_ADAPTER_T prAdapter,
193 IN P_SW_RFB_T prSwRfb
197 saaFsmRunEventRxAssoc (
198 IN P_ADAPTER_T prAdapter,
199 IN P_SW_RFB_T prSwRfb
203 saaFsmRunEventRxDeauth (
204 IN P_ADAPTER_T prAdapter,
205 IN P_SW_RFB_T prSwRfb
209 saaFsmRunEventRxDisassoc (
210 IN P_ADAPTER_T prAdapter,
211 IN P_SW_RFB_T prSwRfb
215 saaFsmRunEventAbort (
216 IN P_ADAPTER_T prAdapter,
217 IN P_MSG_HDR_T prMsgHdr
220 /*----------------------------------------------------------------------------*/
221 /* Routines in aaa_fsm.c */
222 /*----------------------------------------------------------------------------*/
224 aaaFsmRunEventRxAuth (
225 IN P_ADAPTER_T prAdapter,
226 IN P_SW_RFB_T prSwRfb
230 aaaFsmRunEventRxAssoc (
231 IN P_ADAPTER_T prAdapter,
232 IN P_SW_RFB_T prSwRfb
236 aaaFsmRunEventTxDone (
237 IN P_ADAPTER_T prAdapter,
238 IN P_MSDU_INFO_T prMsduInfo,
239 IN ENUM_TX_RESULT_CODE_T rTxDoneStatus
242 /*******************************************************************************
244 ********************************************************************************
247 #endif /* _AA_FSM_H */