2 ** $Id: //Department/DaVinci/BRANCHES/MT6620_WIFI_DRIVER_V2_3/include/typedef.h#1 $
6 \brief Declaration of data type and return values of internal protocol stack.
8 In this file we declare the data type and return values which will be exported
17 * 07 18 2011 chinghwa.yu
18 * [WCXRP00000063] Update BCM CoEx design and settings[WCXRP00000612] [MT6620 Wi-Fi] [FW] CSD update SWRDD algorithm
19 * Add CMD/Event for RDD and BWCS.
22 * [WCXRP00000327] [MT6620 Wi-Fi][Driver] Improve HEC WHQA 6972 workaround coverage in driver side
23 * host driver not to set FW-own when there is still pending interrupts
25 * 09 03 2010 kevin.huang
27 * Refine #include sequence and solve recursive/nested #include issue
29 * 08 16 2010 kevin.huang
31 * Refine AAA functions
33 * 07 19 2010 jeffrey.chang
35 * Linux port modification
39 * [WPD00003833] [MT6620 and MT5931] Driver migration - move to new repository.
42 * [WPD00003833][MT6620 and MT5931] Driver migration
46 * [WPD00003841][LITE Driver] Migrate RLM/CNM to host driver
47 * Provide cnmMgtPktAlloc() and alloc/free function of msg/buf
50 * [WPD00003833][MT6620 and MT5931] Driver migration
52 * 2) add ucTxSeqNum for tracking frames which needs TX-DONE awareness
53 * 3) add configuration options for CNM_MEM and RSN modules
54 * 4) add data path for management frames
55 * 5) eliminate rPacketInfo of MSDU_INFO_T
58 * [WPD00003833][MT6620 and MT5931] Driver migration
59 * add necessary changes to driver data paths.
62 * [WPD00003833][MT6620 and MT5931] Driver migration
63 * add definitions for module migration.
66 * [WPD00003833][MT6620 and MT5931] Driver migration
67 * add aa_fsm.h, ais_fsm.h, bss.h, mib.h and scan.h.
69 * 06 06 2010 kevin.huang
70 * [WPD00003832][MT6620 5931] Create driver base
71 * [MT6620 5931] Create driver base
74 * [WPD00001943]Create WiFi test driver framework on WinXP
75 * move timer callback to glue layer.
78 * [WPD00003831][MT6620 Wi-Fi] Add framework for Wi-Fi Direct support
79 * add cfg80211 interface, which is to replace WE, for further extension
81 * 03 24 2010 jeffrey.chang
82 * [WPD00003826]Initial import for Linux port
83 * initial import for Linux port
86 * [WPD00001943]Create WiFi test driver framework on WinXP
87 * add Ethernet destination address information in packet info for TX
90 * [WPD00001943]Create WiFi test driver framework on WinXP
91 * add new API: wlanProcessQueuedPackets()
92 ** \main\maintrunk.MT6620WiFiDriver_Prj\6 2009-03-23 21:41:37 GMT mtk01461
93 ** Update PACKET_INFO_INIT for TX Path
94 ** \main\maintrunk.MT6620WiFiDriver_Prj\5 2009-03-23 00:30:17 GMT mtk01461
95 ** Add parameter in PACKET_INFO_T for HIF Loopback
96 ** \main\maintrunk.MT6620WiFiDriver_Prj\4 2009-03-18 20:25:22 GMT mtk01461
98 ** \main\maintrunk.MT6620WiFiDriver_Prj\3 2009-03-16 09:08:28 GMT mtk01461
100 ** \main\maintrunk.MT6620WiFiDriver_Prj\2 2009-03-10 20:11:54 GMT mtk01426
108 /*******************************************************************************
109 * C O M P I L E R F L A G S
110 ********************************************************************************
113 /*******************************************************************************
114 * E X T E R N A L R E F E R E N C E S
115 ********************************************************************************
118 /*******************************************************************************
120 ********************************************************************************
123 /* ieee80211.h of linux has duplicated definitions */
124 #if defined(WLAN_STATUS_SUCCESS)
125 #undef WLAN_STATUS_SUCCESS
128 #define WLAN_STATUS_SUCCESS ((WLAN_STATUS) 0x00000000L)
129 #define WLAN_STATUS_PENDING ((WLAN_STATUS) 0x00000103L)
130 #define WLAN_STATUS_NOT_ACCEPTED ((WLAN_STATUS) 0x00010003L)
132 #define WLAN_STATUS_MEDIA_CONNECT ((WLAN_STATUS) 0x4001000BL)
133 #define WLAN_STATUS_MEDIA_DISCONNECT ((WLAN_STATUS) 0x4001000CL)
134 #define WLAN_STATUS_MEDIA_SPECIFIC_INDICATION ((WLAN_STATUS) 0x40010012L)
136 #define WLAN_STATUS_SCAN_COMPLETE ((WLAN_STATUS) 0x60010001L)
137 #define WLAN_STATUS_MSDU_OK ((WLAN_STATUS) 0x60010002L)
139 /* TODO(Kevin): double check if 0x60010001 & 0x60010002 is proprietary */
140 #define WLAN_STATUS_ROAM_OUT_FIND_BEST ((WLAN_STATUS) 0x60010101L)
141 #define WLAN_STATUS_ROAM_DISCOVERY ((WLAN_STATUS) 0x60010102L)
143 #define WLAN_STATUS_FAILURE ((WLAN_STATUS) 0xC0000001L)
144 #define WLAN_STATUS_RESOURCES ((WLAN_STATUS) 0xC000009AL)
145 #define WLAN_STATUS_NOT_SUPPORTED ((WLAN_STATUS) 0xC00000BBL)
147 #define WLAN_STATUS_MULTICAST_FULL ((WLAN_STATUS) 0xC0010009L)
148 #define WLAN_STATUS_INVALID_PACKET ((WLAN_STATUS) 0xC001000FL)
149 #define WLAN_STATUS_ADAPTER_NOT_READY ((WLAN_STATUS) 0xC0010011L)
150 #define WLAN_STATUS_NOT_INDICATING ((WLAN_STATUS) 0xC0010013L)
151 #define WLAN_STATUS_INVALID_LENGTH ((WLAN_STATUS) 0xC0010014L)
152 #define WLAN_STATUS_INVALID_DATA ((WLAN_STATUS) 0xC0010015L)
153 #define WLAN_STATUS_BUFFER_TOO_SHORT ((WLAN_STATUS) 0xC0010016L)
155 #define WLAN_STATUS_BWCS_UPDATE ((WLAN_STATUS) 0xC0010017L)
157 /* NIC status flags */
158 #define ADAPTER_FLAG_HW_ERR 0x00400000
161 #define TL_IPV4 0x0008
162 #define TL_IPV6 0xDD86
165 /*******************************************************************************
167 ********************************************************************************
169 /* Type definition for GLUE_INFO structure */
170 typedef struct _GLUE_INFO_T GLUE_INFO_T, *P_GLUE_INFO_T;
172 /* Type definition for WLAN STATUS */
173 typedef UINT_32 WLAN_STATUS, *P_WLAN_STATUS;
175 /* Type definition for ADAPTER structure */
176 typedef struct _ADAPTER_T ADAPTER_T, *P_ADAPTER_T;
178 /* Type definition for MESSAGE HEADER structure */
179 typedef struct _MSG_HDR_T MSG_HDR_T, *P_MSG_HDR_T;
181 /* Type definition for Pointer to OS Native Packet */
182 typedef void *P_NATIVE_PACKET;
184 /* Type definition for STA_RECORD_T structure to handle the connectivity and packet reception
185 * for a particular STA.
187 typedef struct _STA_RECORD_T STA_RECORD_T, *P_STA_RECORD_T, **PP_STA_RECORD_T;
189 /* CMD_INFO_T is used by Glue Layer to send a cluster of Command(OID) information to
190 * the TX Path to reduce the parameters of a function call.
192 typedef struct _CMD_INFO_T CMD_INFO_T, *P_CMD_INFO_T;
194 /* Following typedef should be removed later, because Glue Layer should not
195 * be aware of following data type.
197 typedef struct _SW_RFB_T SW_RFB_T, *P_SW_RFB_T, **PP_SW_RFB_T;
199 typedef struct _MSDU_INFO_T MSDU_INFO_T, *P_MSDU_INFO_T;
201 typedef struct _REG_ENTRY_T REG_ENTRY_T, *P_REG_ENTRY_T;
203 /* IST handler definition */
204 typedef VOID (*IST_EVENT_FUNCTION)(P_ADAPTER_T);
206 /* Type definition for function pointer of timer handler */
207 typedef VOID (*PFN_TIMER_CALLBACK)(IN P_GLUE_INFO_T);
210 /*******************************************************************************
211 * P U B L I C D A T A
212 ********************************************************************************
215 /*******************************************************************************
216 * P R I V A T E D A T A
217 ********************************************************************************
220 /*******************************************************************************
222 ********************************************************************************
225 /*******************************************************************************
226 * F U N C T I O N D E C L A R A T I O N S
227 ********************************************************************************
230 /*******************************************************************************
232 ********************************************************************************
234 #endif /* _TYPEDEF_H */