| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689 |
- /*
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- * See http://www.gnu.org/licenses/gpl-2.0.html for more details.
- */
- #ifndef _NIC_CMD_EVENT_H
- #define _NIC_CMD_EVENT_H
- /*******************************************************************************
- * C O M P I L E R F L A G S
- ********************************************************************************
- */
- /*******************************************************************************
- * E X T E R N A L R E F E R E N C E S
- ********************************************************************************
- */
- /*******************************************************************************
- * C O N S T A N T S
- ********************************************************************************
- */
- #define CMD_STATUS_SUCCESS 0
- #define CMD_STATUS_REJECTED 1
- #define CMD_STATUS_UNKNOWN 2
- #define EVENT_HDR_SIZE OFFSET_OF(WIFI_EVENT_T, aucBuffer[0])
- #define MAX_IE_LENGTH (600)
- #define MAX_WSC_IE_LENGTH (400)
- #define MAX_FW_LOG_LENGTH (896)
- /* Action field in structure CMD_CH_PRIVILEGE_T */
- #define CMD_CH_ACTION_REQ 0
- #define CMD_CH_ACTION_ABORT 1
- /* Status field in structure EVENT_CH_PRIVILEGE_T */
- #define EVENT_CH_STATUS_GRANT 0
- #define SCN_PSCAN_SWC_RSSI_WIN_MAX 75
- #define SCN_PSCAN_SWC_MAX_NUM 8
- #define SCN_PSCAN_HOTLIST_REPORT_MAX_NUM 8
- typedef enum _ENUM_CMD_ID_T {
- CMD_ID_TEST_MODE = 1, /* 0x01 (Set) */
- CMD_ID_RESET_REQUEST, /* 0x02 (Set) */
- CMD_ID_BUILD_CONNECTION, /* 0x03 (Set) */
- CMD_ID_SCAN_REQ_V2, /* 0x04 (Set) */
- CMD_ID_NIC_POWER_CTRL, /* 0x05 (Set) */
- CMD_ID_POWER_SAVE_MODE, /* 0x06 (Set) */
- CMD_ID_LINK_ATTRIB, /* 0x07 (Set) */
- CMD_ID_ADD_REMOVE_KEY, /* 0x08 (Set) */
- CMD_ID_DEFAULT_KEY_ID, /* 0x09 (Set) */
- CMD_ID_INFRASTRUCTURE, /* 0x0a (Set) */
- CMD_ID_SET_RX_FILTER, /* 0x0b (Set) */
- CMD_ID_DOWNLOAD_BUF, /* 0x0c (Set) */
- CMD_ID_WIFI_START, /* 0x0d (Set) */
- CMD_ID_CMD_BT_OVER_WIFI, /* 0x0e (Set) */
- CMD_ID_SET_MEDIA_CHANGE_DELAY_TIME, /* 0x0f (Set) */
- CMD_ID_SEND_ADDBA_RSP, /* 0x10 (Set) */
- CMD_ID_WAPI_MODE, /* 0x11 (Set) (obsolete) */
- CMD_ID_WAPI_ASSOC_INFO, /* 0x12 (Set) (obsolete) */
- CMD_ID_SET_DOMAIN_INFO, /* 0x13 (Set) */
- CMD_ID_SET_IP_ADDRESS, /* 0x14 (Set) */
- CMD_ID_BSS_ACTIVATE_CTRL, /* 0x15 (Set) */
- CMD_ID_SET_BSS_INFO, /* 0x16 (Set) */
- CMD_ID_UPDATE_STA_RECORD, /* 0x17 (Set) */
- CMD_ID_REMOVE_STA_RECORD, /* 0x18 (Set) */
- CMD_ID_INDICATE_PM_BSS_CREATED, /* 0x19 (Set) */
- CMD_ID_INDICATE_PM_BSS_CONNECTED, /* 0x1a (Set) */
- CMD_ID_INDICATE_PM_BSS_ABORT, /* 0x1b (Set) */
- CMD_ID_UPDATE_BEACON_CONTENT, /* 0x1c (Set) */
- CMD_ID_SET_BSS_RLM_PARAM, /* 0x1d (Set) */
- CMD_ID_SCAN_REQ, /* 0x1e (Set) */
- CMD_ID_SCAN_CANCEL, /* 0x1f (Set) */
- CMD_ID_CH_PRIVILEGE, /* 0x20 (Set) */
- CMD_ID_UPDATE_WMM_PARMS, /* 0x21 (Set) */
- CMD_ID_SET_WMM_PS_TEST_PARMS, /* 0x22 (Set) */
- CMD_ID_TX_AMPDU, /* 0x23 (Set) */
- CMD_ID_ADDBA_REJECT, /* 0x24 (Set) */
- CMD_ID_SET_PS_PROFILE_ADV, /* 0x25 (Set) */
- CMD_ID_SET_RAW_PATTERN, /* 0x26 (Set) */
- CMD_ID_CONFIG_PATTERN_FUNC, /* 0x27 (Set) */
- CMD_ID_SET_TX_PWR, /* 0x28 (Set) */
- CMD_ID_SET_5G_PWR_OFFSET, /* 0x29 (Set) */
- CMD_ID_SET_PWR_PARAM, /* 0x2A (Set) */
- CMD_ID_P2P_ABORT, /* 0x2B (Set) */
- #if CFG_STRESS_TEST_SUPPORT
- CMD_ID_RANDOM_RX_RESET_EN = 0x2C, /* 0x2C (Set ) */
- CMD_ID_RANDOM_RX_RESET_DE = 0x2D, /* 0x2D (Set ) */
- CMD_ID_SAPP_EN = 0x2E, /* 0x2E (Set ) */
- CMD_ID_SAPP_DE = 0x2F, /* 0x2F (Set ) */
- #endif
- CMD_ID_ROAMING_TRANSIT = 0x30, /* 0x30 (Set) */
- CMD_ID_SET_PHY_PARAM, /* 0x31 (Set) */
- CMD_ID_SET_NOA_PARAM, /* 0x32 (Set) */
- CMD_ID_SET_OPPPS_PARAM, /* 0x33 (Set) */
- CMD_ID_SET_UAPSD_PARAM, /* 0x34 (Set) */
- CMD_ID_SET_SIGMA_STA_SLEEP, /* 0x35 (Set) */
- CMD_ID_SET_EDGE_TXPWR_LIMIT, /* 0x36 (Set) */
- CMD_ID_SET_DEVICE_MODE, /* 0x37 (Set) */
- CMD_ID_SET_TXPWR_CTRL, /* 0x38 (Set) */
- CMD_ID_SET_AUTOPWR_CTRL, /* 0x39 (Set) */
- CMD_ID_SET_WFD_CTRL, /* 0x3A (Set) */
- CMD_ID_SET_5G_EDGE_TXPWR_LIMIT, /* 0x3B (Set) */
- CMD_ID_SET_RSSI_COMPENSATE, /* 0x3C (Set) */
- CMD_ID_SET_BAND_SUPPORT = 0x3D, /* 0x3D (Set) */
- CMD_ID_SET_NLO_REQ, /* 0x3E (Set) */
- CMD_ID_SET_NLO_CANCEL, /* 0x3F (Set) */
- CMD_ID_SET_BATCH_REQ, /* 0x40 (Set) */
- CMD_ID_SET_WOWLAN, /* 0x41 (Set) */ /*CFG_SUPPORT_WOWLAN */
- CMD_ID_GET_PSCAN_CAPABILITY = 0x42, /* 0x42 (Set) */
- CMD_ID_SET_PSCN_ENABLE = 0x43, /* 0x43 (Set) */
- CMD_ID_SET_PSCAN_PARAM = 0x44, /* 0x44 (Set) */
- CMD_ID_SET_PSCN_ADD_HOTLIST_BSSID = 0x45, /* 0x45 (Set) */
- CMD_ID_SET_PSCN_ADD_SW_BSSID = 0x46, /* 0x46 (Set) */
- CMD_ID_SET_PSCN_MAC_ADDR = 0x47, /* 0x47 (Set) */
- CMD_ID_GET_GSCN_SCN_RESULT = 0x48, /* 0x48 (Get) */
- CMD_ID_SET_COUNTRY_POWER_LIMIT = 0x4A, /* 0x4A (Set) */
- CMD_ID_SET_SYSTEM_SUSPEND = 0x60, /* 0x60 (Set) */
- #if CFG_SUPPORT_FCC_DYNAMIC_TX_PWR_ADJUST
- CMD_ID_SET_FCC_TX_PWR_CERT = 0x6F, /* 0x6F (Set) */
- #endif
- #ifdef FW_CFG_SUPPORT
- CMD_ID_GET_SET_CUSTOMER_CFG = 0x70,
- #endif
- CMD_ID_GET_NIC_CAPABILITY = 0x80, /* 0x80 (Query) */
- CMD_ID_GET_LINK_QUALITY, /* 0x81 (Query) */
- CMD_ID_GET_STATISTICS, /* 0x82 (Query) */
- CMD_ID_GET_CONNECTION_STATUS, /* 0x83 (Query) */
- CMD_ID_GET_ASSOC_INFO, /* 0x84 (Query) (obsolete) */
- CMD_ID_GET_STA_STATISTICS = 0x85, /* 0x85 (Query) */
- CMD_ID_GET_DEBUG_CODE = 0x86, /* 0x86 (Query) */
- CMD_ID_GET_LTE_CHN = 0x87, /* 0x87 (Query) */
- CMD_ID_GET_CHN_LOADING = 0x88, /* 0x88 (Query) */
- CMD_ID_GET_STATISTICS_PL = 0x89, /* 0x87 (Query) */
- CMD_ID_BASIC_CONFIG = 0xc1, /* 0xc1 (Set / Query) */
- CMD_ID_ACCESS_REG, /* 0xc2 (Set / Query) */
- CMD_ID_MAC_MCAST_ADDR, /* 0xc3 (Set / Query) */
- CMD_ID_802_11_PMKID, /* 0xc4 (Set / Query) */
- CMD_ID_ACCESS_EEPROM, /* 0xc5 (Set / Query) */
- CMD_ID_SW_DBG_CTRL, /* 0xc6 (Set / Query) */
- #if 1 /* CFG_SUPPORT_ANTI_PIRACY */
- CMD_ID_SEC_CHECK, /* 0xc7 (Set / Query) */
- #endif
- CMD_ID_DUMP_MEM, /* 0xc8 (Query) */
- CMD_ID_CHIP_CONFIG = 0xCA, /* 0xca (Set / Query) */
- #if CFG_SUPPORT_RDD_TEST_MODE
- CMD_ID_SET_RDD_CH = 0xE1,
- #endif
- CMD_ID_SET_NVRAM_SETTINGS = 0xEF,
- CMD_ID_SET_BWCS = 0xF1,
- CMD_ID_SET_ROAMING_INFO = 0xF3,
- #if CFG_SUPPORT_BUILD_DATE_CODE
- CMD_ID_GET_BUILD_DATE_CODE = 0xF8,
- #endif
- CMD_ID_GET_BSS_INFO = 0xF9,
- #if 1 /* CFG_SUPPORT_HOTSPOT_OPTIMIZATION */
- CMD_ID_SET_HOTSPOT_OPTIMIZATION = 0xFA, /* 0xFA (Set) */
- #endif
- CMD_ID_TDLS_CORE = 0xFC,
- CMD_ID_STATS = 0xFD,
- CMD_ID_TX_AR_ERR_CONFIG = 0xFF
- } ENUM_CMD_ID_T, *P_ENUM_CMD_ID_T;
- typedef enum _ENUM_EVENT_ID_T {
- EVENT_ID_CMD_RESULT = 1, /* 0x01 (Query) */
- EVENT_ID_NIC_CAPABILITY, /* 0x02 (Query) */
- EVENT_ID_CONNECTION_STATUS, /* 0x03 (Query / Unsolicited) (obsolete) */
- EVENT_ID_SCAN_RESULT, /* 0x04 (Query / Unsolicited) (obselete) */
- EVENT_ID_LINK_QUALITY, /* 0x05 (Query / Unsolicited) */
- EVENT_ID_STATISTICS, /* 0x06 (Query) */
- EVENT_ID_MIC_ERR_INFO, /* 0x07 (Unsolicited) */
- EVENT_ID_ASSOC_INFO, /* 0x08 (Query - CMD_ID_GET_ASSOC_INFO) */
- EVENT_ID_BASIC_CONFIG, /* 0x09 (Query - CMD_ID_BASIC_CONFIG) */
- EVENT_ID_ACCESS_REG, /* 0x0a (Query - CMD_ID_ACCESS_REG) */
- EVENT_ID_MAC_MCAST_ADDR, /* 0x0b (Query - CMD_ID_MAC_MCAST_ADDR) */
- EVENT_ID_802_11_PMKID, /* 0x0c (Query - CMD_ID_802_11_PMKID) */
- EVENT_ID_ACCESS_EEPROM, /* 0x0d (Query - CMD_ID_ACCESS_EEPROM) */
- EVENT_ID_SLEEPY_NOTIFY, /* 0x0e (Query) */
- EVENT_ID_BT_OVER_WIFI, /* 0x0f (Unsolicited) */
- EVENT_ID_TEST_STATUS, /* 0x10 (Query - CMD_ID_TEST_MODE) */
- EVENT_ID_RX_ADDBA, /* 0x11 (Unsolicited) (obsolete) */
- EVENT_ID_RX_DELBA, /* 0x12 (Unsolicited) (obsolete) */
- EVENT_ID_ACTIVATE_STA_REC_T, /* 0x13 (Unsolicited) */
- EVENT_ID_DEACTIVATE_STA_REC_T, /* 0x14 (Unsolicited) */
- EVENT_ID_SCAN_DONE, /* 0x15 (Unsoiicited) */
- EVENT_ID_RX_FLUSH, /* 0x16 (Unsolicited) */
- EVENT_ID_TX_DONE, /* 0x17 (Unsolicited) */
- EVENT_ID_CH_PRIVILEGE, /* 0x18 (Unsolicited) */
- EVENT_ID_BSS_ABSENCE_PRESENCE = 0x19, /* 0x19 (Unsolicited) */
- EVENT_ID_STA_CHANGE_PS_MODE, /* 0x1A (Unsolicited) */
- EVENT_ID_BSS_BEACON_TIMEOUT, /* 0x1B (Unsolicited) */
- EVENT_ID_UPDATE_NOA_PARAMS, /* 0x1C (Unsolicited) */
- EVENT_ID_AP_OBSS_STATUS, /* 0x1D (Unsolicited) */
- EVENT_ID_STA_UPDATE_FREE_QUOTA, /* 0x1E (Unsolicited) */
- EVENT_ID_SW_DBG_CTRL, /* 0x1F (Query - CMD_ID_SW_DBG_CTRL) */
- EVENT_ID_ROAMING_STATUS, /* 0x20 (Unsolicited) */
- EVENT_ID_STA_AGING_TIMEOUT, /* 0x21 (Unsolicited) */
- #if 1 /* CFG_SUPPORT_ANTI_PIRACY */
- EVENT_ID_SEC_CHECK_RSP, /* 0x22 (Unsolicited) */
- #endif
- EVENT_ID_SEND_DEAUTH, /* 0x23 (Unsolicited) */
- #if CFG_SUPPORT_RDD_TEST_MODE
- EVENT_ID_UPDATE_RDD_STATUS, /* 0x24 (Unsolicited) */
- #endif
- #if CFG_SUPPORT_BCM && CFG_SUPPORT_BCM_BWCS
- EVENT_ID_UPDATE_BWCS_STATUS = 0x25, /* 0x25 (Unsolicited) */
- EVENT_ID_UPDATE_BCM_DEBUG, /* 0x26 (Unsolicited) */
- #endif
- EVENT_ID_RX_ERR,
- EVENT_ID_DUMP_MEM,
- EVENT_ID_STA_STATISTICS = 0x29, /* 0x29 (Query ) */
- EVENT_ID_STA_STATISTICS_UPDATE, /* 0x2A (Unsolicited) */
- EVENT_ID_NLO_DONE = 0x2b,
- EVENT_ID_GSCAN_CAPABILITY = 0x30,
- EVENT_ID_GSCAN_SCAN_COMPLETE = 0x31,
- EVENT_ID_GSCAN_FULL_RESULT = 0x32,
- EVENT_ID_GSCAN_SIGNIFICANT_CHANGE = 0x33,
- EVENT_ID_GSCAN_GEOFENCE_FOUND = 0x34,
- EVENT_ID_GSCAN_SCAN_AVAILABLE = 0x35,
- EVENT_ID_GSCAN_RESULT = 0x36,
- EVENT_ID_BATCH_RESULT = 0x37,
- EVENT_ID_CHECK_REORDER_BUBBLE = 0x39,
- EVENT_ID_TDLS = 0x80,
- EVENT_ID_STATS_ENV = 0x81,
- #if CFG_SUPPORT_BUILD_DATE_CODE
- EVENT_ID_BUILD_DATE_CODE = 0xF8,
- #endif
- EVENT_ID_GET_AIS_BSS_INFO = 0xF9,
- EVENT_ID_DEBUG_CODE = 0xFB,
- EVENT_ID_RFTEST_READY = 0xFC, /* 0xFC */
- EVENT_ID_TX_DONE_STATUS = 0xFD,
- EVENT_ID_FW_LOG_ENV = 0xFE, /* 0xFE, FW real time debug log */
- } ENUM_EVENT_ID_T, *P_ENUM_EVENT_ID_T;
- /*******************************************************************************
- * D A T A T Y P E S
- ********************************************************************************
- */
- #ifndef LINUX
- typedef UINT_8 CMD_STATUS;
- #endif
- #if CFG_SUPPORT_FCC_DYNAMIC_TX_PWR_ADJUST
- /* TX Power Adjust For FCC/CE Certification */
- typedef struct _CMD_FCC_TX_PWR_ADJUST_T {
- UINT_8 fgFccTxPwrAdjust;
- UINT_8 Offset_CCK; /* Offset for CH 11~14 */
- UINT_8 Offset_HT20; /* Offset for CH 11~14 */
- UINT_8 Offset_HT40; /* Offset for CH 11~14 */
- UINT_8 Channel_CCK[2]; /* [0] for start channel, [1] for ending channel */
- UINT_8 Channel_HT20[2]; /* [0] for start channel, [1] for ending channel */
- UINT_8 Channel_HT40[2]; /* [0] for start channel, [1] for ending channel */
- UINT_8 cReserved[2];
- } CMD_FCC_TX_PWR_ADJUST, *P_CMD_FCC_TX_PWR_ADJUST;
- #endif
- typedef struct _EVENT_TX_DONE_STATUS_T {
- UINT_8 ucPacketSeq;
- UINT_8 ucStatus;
- UINT_16 u2SequenceNumber;
- UINT_32 au4Reserved1;
- UINT_32 au4Reserved2;
- UINT_32 au4Reserved3;
- UINT_32 u4PktBufInfo;
- UINT_8 aucPktBuf[200];
- } EVENT_TX_DONE_STATUS_T, *P_EVENT_TX_DONE_STATUS_T;
- /* for Event Packet (via HIF-RX) */
- /* following CM's documentation v0.7 */
- typedef struct _WIFI_CMD_T {
- UINT_16 u2TxByteCount_UserPriority;
- UINT_8 ucEtherTypeOffset;
- UINT_8 ucResource_PktType_CSflags;
- UINT_8 ucCID;
- UINT_8 ucSetQuery;
- UINT_8 ucSeqNum;
- UINT_8 aucReserved2;
- UINT_8 aucBuffer[0];
- } WIFI_CMD_T, *P_WIFI_CMD_T;
- /* for Command Packet (via HIF-TX) */
- /* following CM's documentation v0.7 */
- typedef struct _WIFI_EVENT_T {
- UINT_16 u2PacketLen;
- UINT_16 u2PacketType;
- UINT_8 ucEID;
- UINT_8 ucSeqNum;
- UINT_8 aucReserved2[2];
- UINT_8 aucBuffer[0];
- } WIFI_EVENT_T, *P_WIFI_EVENT_T;
- /* CMD_ID_TEST_MODE */
- typedef struct _CMD_TEST_CTRL_T {
- UINT_8 ucAction;
- UINT_8 aucReserved[3];
- union {
- UINT_32 u4OpMode;
- UINT_32 u4ChannelFreq;
- PARAM_MTK_WIFI_TEST_STRUCT_T rRfATInfo;
- } u;
- } CMD_TEST_CTRL_T, *P_CMD_TEST_CTRL_T;
- /* EVENT_TEST_STATUS */
- typedef struct _PARAM_CUSTOM_RFTEST_TX_STATUS_STRUCT_T {
- UINT_32 u4PktSentStatus;
- UINT_32 u4PktSentCount;
- UINT_16 u2AvgAlc;
- UINT_8 ucCckGainControl;
- UINT_8 ucOfdmGainControl;
- } PARAM_CUSTOM_RFTEST_TX_STATUS_STRUCT_T, *P_PARAM_CUSTOM_RFTEST_TX_STATUS_STRUCT_T;
- typedef struct _PARAM_CUSTOM_RFTEST_RX_STATUS_STRUCT_T {
- UINT_32 u4IntRxOk; /*!< number of packets that Rx ok from interrupt */
- UINT_32 u4IntCrcErr; /*!< number of packets that CRC error from interrupt */
- UINT_32 u4IntShort; /*!< number of packets that is short preamble from interrupt */
- UINT_32 u4IntLong; /*!< number of packets that is long preamble from interrupt */
- UINT_32 u4PauRxPktCount; /*!< number of packets that Rx ok from PAU */
- UINT_32 u4PauCrcErrCount; /*!< number of packets that CRC error from PAU */
- UINT_32 u4PauRxFifoFullCount; /*!< number of packets that is short preamble from PAU */
- UINT_32 u4PauCCACount; /*!< CCA rising edge count */
- } PARAM_CUSTOM_RFTEST_RX_STATUS_STRUCT_T, *P_PARAM_CUSTOM_RFTEST_RX_STATUS_STRUCT_T;
- typedef union _EVENT_TEST_STATUS {
- PARAM_MTK_WIFI_TEST_STRUCT_T rATInfo;
- /* PARAM_CUSTOM_RFTEST_TX_STATUS_STRUCT_T rTxStatus; */
- /* PARAM_CUSTOM_RFTEST_RX_STATUS_STRUCT_T rRxStatus; */
- } EVENT_TEST_STATUS, *P_EVENT_TEST_STATUS;
- /* CMD_BUILD_CONNECTION */
- typedef struct _CMD_BUILD_CONNECTION {
- UINT_8 ucInfraMode;
- UINT_8 ucAuthMode;
- UINT_8 ucEncryptStatus;
- UINT_8 ucSsidLen;
- UINT_8 aucSsid[PARAM_MAX_LEN_SSID];
- UINT_8 aucBssid[PARAM_MAC_ADDR_LEN];
- /* Ad-hoc mode */
- UINT_16 u2BeaconPeriod;
- UINT_16 u2ATIMWindow;
- UINT_8 ucJoinOnly;
- UINT_8 ucReserved;
- UINT_32 u4FreqInKHz;
- /* for faster connection */
- UINT_8 aucScanResult[0];
- } CMD_BUILD_CONNECTION, *P_CMD_BUILD_CONNECTION;
- /* CMD_ADD_REMOVE_KEY */
- typedef struct _CMD_802_11_KEY {
- UINT_8 ucAddRemove;
- UINT_8 ucTxKey;
- UINT_8 ucKeyType;
- UINT_8 ucIsAuthenticator;
- UINT_8 aucPeerAddr[6];
- UINT_8 ucNetType;
- UINT_8 ucAlgorithmId;
- UINT_8 ucKeyId;
- UINT_8 ucKeyLen;
- UINT_8 aucReverved[2];
- UINT_8 aucKeyMaterial[32];
- UINT_8 aucKeyRsc[16];
- } CMD_802_11_KEY, *P_CMD_802_11_KEY;
- /* WPA2 PMKID cache structure */
- typedef struct _PMKID_ENTRY_T {
- PARAM_BSSID_INFO_T rBssidInfo;
- BOOLEAN fgPmkidExist;
- } PMKID_ENTRY_T, *P_PMKID_ENTRY_T;
- typedef struct _CMD_802_11_PMKID {
- ULONG u4BSSIDInfoCount;
- P_PMKID_ENTRY_T arPMKIDInfo[1];
- } CMD_802_11_PMKID, *P_CMD_802_11_PMKID;
- /* CMD_BASIC_CONFIG */
- typedef struct _CMD_CSUM_OFFLOAD {
- UINT_16 u2RxChecksum; /* bit0: IP, bit1: UDP, bit2: TCP */
- UINT_16 u2TxChecksum; /* bit0: IP, bit1: UDP, bit2: TCP */
- } CMD_CSUM_OFFLOAD, *P_CMD_CSUM_OFFLOAD;
- typedef struct _CMD_BASIC_CONFIG {
- PARAM_MAC_ADDRESS rMyMacAddr;
- UINT_8 ucNative80211;
- UINT_8 aucReserved[1];
- CMD_CSUM_OFFLOAD rCsumOffload;
- } CMD_BASIC_CONFIG, *P_CMD_BASIC_CONFIG, EVENT_BASIC_CONFIG, *P_EVENT_BASIC_CONFIG;
- /* CMD_MAC_MCAST_ADDR */
- typedef struct _CMD_MAC_MCAST_ADDR {
- UINT_32 u4NumOfGroupAddr;
- UINT_8 ucNetTypeIndex;
- UINT_8 aucReserved[3];
- PARAM_MAC_ADDRESS arAddress[MAX_NUM_GROUP_ADDR];
- } CMD_MAC_MCAST_ADDR, *P_CMD_MAC_MCAST_ADDR, EVENT_MAC_MCAST_ADDR, *P_EVENT_MAC_MCAST_ADDR;
- /* CMD_ACCESS_EEPROM */
- typedef struct _CMD_ACCESS_EEPROM {
- UINT_16 u2Offset;
- UINT_16 u2Data;
- } CMD_ACCESS_EEPROM, *P_CMD_ACCESS_EEPROM, EVENT_ACCESS_EEPROM, *P_EVENT_ACCESS_EEPROM;
- typedef struct _CMD_CUSTOM_NOA_PARAM_STRUCT_T {
- UINT_32 u4NoaDurationMs;
- UINT_32 u4NoaIntervalMs;
- UINT_32 u4NoaCount;
- } CMD_CUSTOM_NOA_PARAM_STRUCT_T, *P_CMD_CUSTOM_NOA_PARAM_STRUCT_T;
- typedef struct _CMD_CUSTOM_OPPPS_PARAM_STRUCT_T {
- UINT_32 u4CTwindowMs;
- } CMD_CUSTOM_OPPPS_PARAM_STRUCT_T, *P_CMD_CUSTOM_OPPPS_PARAM_STRUCT_T;
- typedef struct _CMD_CUSTOM_UAPSD_PARAM_STRUCT_T {
- UINT_8 fgEnAPSD;
- UINT_8 fgEnAPSD_AcBe;
- UINT_8 fgEnAPSD_AcBk;
- UINT_8 fgEnAPSD_AcVo;
- UINT_8 fgEnAPSD_AcVi;
- UINT_8 ucMaxSpLen;
- UINT_8 aucResv[2];
- } CMD_CUSTOM_UAPSD_PARAM_STRUCT_T, *P_CMD_CUSTOM_UAPSD_PARAM_STRUCT_T;
- /* EVENT_CONNECTION_STATUS */
- typedef struct _EVENT_CONNECTION_STATUS {
- UINT_8 ucMediaStatus;
- UINT_8 ucReasonOfDisconnect;
- UINT_8 ucInfraMode;
- UINT_8 ucSsidLen;
- UINT_8 aucSsid[PARAM_MAX_LEN_SSID];
- UINT_8 aucBssid[PARAM_MAC_ADDR_LEN];
- UINT_8 ucAuthenMode;
- UINT_8 ucEncryptStatus;
- UINT_16 u2BeaconPeriod;
- UINT_16 u2AID;
- UINT_16 u2ATIMWindow;
- UINT_8 ucNetworkType;
- UINT_8 aucReserved[1];
- UINT_32 u4FreqInKHz;
- #if CFG_ENABLE_WIFI_DIRECT
- UINT_8 aucInterfaceAddr[PARAM_MAC_ADDR_LEN];
- #endif
- } EVENT_CONNECTION_STATUS, *P_EVENT_CONNECTION_STATUS;
- /* EVENT_NIC_CAPABILITY */
- typedef struct _EVENT_NIC_CAPABILITY {
- UINT_16 u2ProductID;
- UINT_16 u2FwVersion;
- UINT_16 u2DriverVersion;
- UINT_8 ucHw5GBandDisabled;
- UINT_8 ucEepromUsed;
- UINT_8 ucEfuseValid;
- UINT_8 ucMacAddrValid;
- #if CFG_REPORT_RFBB_VERSION
- UINT_8 ucRfVersion;
- UINT_8 ucPhyVersion;
- #endif
- #if CFG_ENABLE_CAL_LOG
- UINT_8 ucRfCalFail;
- UINT_8 ucBbCalFail;
- #endif
- #define FEATURE_SET_OFFSET_TDLS 0
- #define FEATURE_SET_OFFSET_5G_SUPPORT 1
- UINT_8 ucFeatureSet; /* bit0: TDLS */
- UINT_8 aucReserved[1];
- #if CFG_EMBED_FIRMWARE_BUILD_DATE_CODE
- UINT_8 aucDateCode[16];
- #endif
- } EVENT_NIC_CAPABILITY, *P_EVENT_NIC_CAPABILITY;
- /* modified version of WLAN_BEACON_FRAME_BODY_T for simplier buffering */
- typedef struct _WLAN_BEACON_FRAME_BODY_T_LOCAL {
- /* Beacon frame body */
- UINT_32 au4Timestamp[2]; /* Timestamp */
- UINT_16 u2BeaconInterval; /* Beacon Interval */
- UINT_16 u2CapInfo; /* Capability */
- UINT_8 aucInfoElem[MAX_IE_LENGTH]; /* Various IEs, start from SSID */
- UINT_16 u2IELength; /* This field is *NOT* carried by F/W but caculated by nic_rx */
- } WLAN_BEACON_FRAME_BODY_T_LOCAL, *P_WLAN_BEACON_FRAME_BODY_T_LOCAL;
- /* EVENT_SCAN_RESULT */
- typedef struct _EVENT_SCAN_RESULT_T {
- INT_32 i4RSSI;
- UINT_32 u4LinkQuality;
- UINT_32 u4DSConfig; /* Center frequency */
- UINT_32 u4DomainInfo; /* Require CM opinion */
- UINT_32 u4Reserved;
- UINT_8 ucNetworkType;
- UINT_8 ucOpMode;
- UINT_8 aucBssid[MAC_ADDR_LEN];
- UINT_8 aucRatesEx[PARAM_MAX_LEN_RATES_EX];
- WLAN_BEACON_FRAME_BODY_T_LOCAL rBeaconFrameBody;
- } EVENT_SCAN_RESULT_T, *P_EVENT_SCAN_RESULT_T;
- /* event of tkip mic error */
- typedef struct _EVENT_MIC_ERR_INFO {
- UINT_32 u4Flags;
- } EVENT_MIC_ERR_INFO, *P_EVENT_MIC_ERR_INFO;
- typedef struct _EVENT_PMKID_CANDIDATE_LIST_T {
- UINT_32 u4Version; /*!< Version */
- UINT_32 u4NumCandidates; /*!< How many candidates follow */
- PARAM_PMKID_CANDIDATE_T arCandidateList[1];
- } EVENT_PMKID_CANDIDATE_LIST_T, *P_EVENT_PMKID_CANDIDATE_LIST_T;
- typedef struct _EVENT_CMD_RESULT {
- UINT_8 ucCmdID;
- UINT_8 ucStatus;
- UINT_8 aucReserved[2];
- } EVENT_CMD_RESULT, *P_EVENT_CMD_RESULT;
- /* CMD_ID_ACCESS_REG & EVENT_ID_ACCESS_REG */
- typedef struct _CMD_ACCESS_REG {
- UINT_32 u4Address;
- UINT_32 u4Data;
- } CMD_ACCESS_REG, *P_CMD_ACCESS_REG;
- /* CMD_ID_ACCESS_REG & EVENT_ID_ACCESS_REG */
- #if CFG_AUTO_CHANNEL_SEL_SUPPORT
- typedef struct _CMD_ACCESS_CHN_LOAD {
- UINT_32 u4Address;
- UINT_32 u4Data;
- UINT_16 u2Channel;
- UINT_8 aucReserved[2];
- } CMD_ACCESS_CHN_LOAD, *P_ACCESS_CHN_LOAD;
- #endif
- /* CMD_DUMP_MEMORY */
- typedef struct _CMD_DUMP_MEM {
- UINT_32 u4Address;
- UINT_32 u4Length;
- UINT_32 u4RemainLength;
- UINT_8 ucFragNum;
- } CMD_DUMP_MEM, *P_CMD_DUMP_MEM;
- typedef struct _EVENT_DUMP_MEM_T {
- UINT_32 u4Address;
- UINT_32 u4Length;
- UINT_32 u4RemainLength;
- UINT_8 ucFragNum;
- UINT_8 aucBuffer[1];
- } EVENT_DUMP_MEM_T, *P_EVENT_DUMP_MEM_T;
- typedef struct _CMD_SW_DBG_CTRL_T {
- UINT_32 u4Id;
- UINT_32 u4Data;
- /* Debug Support */
- UINT_32 u4DebugCnt[64];
- } CMD_SW_DBG_CTRL_T, *P_CMD_SW_DBG_CTRL_T;
- /* CMD_ID_LINK_ATTRIB */
- typedef struct _CMD_LINK_ATTRIB {
- INT_8 cRssiTrigger;
- UINT_8 ucDesiredRateLen;
- UINT_16 u2DesiredRate[32];
- UINT_8 ucMediaStreamMode;
- UINT_8 aucReserved[1];
- } CMD_LINK_ATTRIB, *P_CMD_LINK_ATTRIB;
- /* CMD_ID_NIC_POWER_CTRL */
- typedef struct _CMD_NIC_POWER_CTRL {
- UINT_8 ucPowerMode;
- UINT_8 aucReserved[3];
- } CMD_NIC_POWER_CTRL, *P_CMD_NIC_POWER_CTRL;
- /* CMD_ID_POWER_SAVE_MODE */
- typedef struct _CMD_PS_PROFILE_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucPsProfile;
- UINT_8 aucReserved[2];
- } CMD_PS_PROFILE_T, *P_CMD_PS_PROFILE_T;
- /* EVENT_LINK_QUALITY */
- typedef struct _EVENT_LINK_QUALITY {
- INT_8 cRssi;
- INT_8 cLinkQuality;
- UINT_16 u2LinkSpeed;
- UINT_8 ucMediumBusyPercentage;
- } EVENT_LINK_QUALITY, *P_EVENT_LINK_QUALITY;
- #if CFG_SUPPORT_P2P_RSSI_QUERY
- /* EVENT_LINK_QUALITY */
- typedef struct _EVENT_LINK_QUALITY_EX {
- INT_8 cRssi;
- INT_8 cLinkQuality;
- UINT_16 u2LinkSpeed;
- UINT_8 ucMediumBusyPercentage;
- UINT_8 ucIsLQ0Rdy;
- INT_8 cRssiP2P; /* For P2P Network. */
- INT_8 cLinkQualityP2P;
- UINT_16 u2LinkSpeedP2P;
- UINT_8 ucMediumBusyPercentageP2P;
- UINT_8 ucIsLQ1Rdy;
- } EVENT_LINK_QUALITY_EX, *P_EVENT_LINK_QUALITY_EX;
- #endif
- /* EVENT_ID_STATISTICS */
- typedef struct _EVENT_STATISTICS {
- LARGE_INTEGER rTransmittedFragmentCount;
- LARGE_INTEGER rMulticastTransmittedFrameCount;
- LARGE_INTEGER rFailedCount;
- LARGE_INTEGER rRetryCount;
- LARGE_INTEGER rMultipleRetryCount;
- LARGE_INTEGER rRTSSuccessCount;
- LARGE_INTEGER rRTSFailureCount;
- LARGE_INTEGER rACKFailureCount;
- LARGE_INTEGER rFrameDuplicateCount;
- LARGE_INTEGER rReceivedFragmentCount;
- LARGE_INTEGER rMulticastReceivedFrameCount;
- LARGE_INTEGER rFCSErrorCount;
- } EVENT_STATISTICS, *P_EVENT_STATISTICS;
- /* EVENT_ID_FW_SLEEPY_NOTIFY */
- typedef struct _EVENT_SLEEPY_NOTIFY {
- UINT_8 ucSleepyState;
- UINT_8 aucReserved[3];
- } EVENT_SLEEPY_NOTIFY, *P_EVENT_SLEEPY_NOTIFY;
- typedef struct _EVENT_ACTIVATE_STA_REC_T {
- UINT_8 aucMacAddr[6];
- UINT_8 ucStaRecIdx;
- UINT_8 ucNetworkTypeIndex;
- BOOLEAN fgIsQoS;
- BOOLEAN fgIsAP;
- UINT_8 aucReserved[2];
- } EVENT_ACTIVATE_STA_REC_T, *P_EVENT_ACTIVATE_STA_REC_T;
- typedef struct _EVENT_DEACTIVATE_STA_REC_T {
- UINT_8 ucStaRecIdx;
- UINT_8 aucReserved[3];
- } EVENT_DEACTIVATE_STA_REC_T, *P_EVENT_DEACTIVATE_STA_REC_T;
- /* CMD_BT_OVER_WIFI */
- typedef struct _CMD_BT_OVER_WIFI {
- UINT_8 ucAction; /* 0: query, 1: setup, 2: destroy */
- UINT_8 ucChannelNum;
- PARAM_MAC_ADDRESS rPeerAddr;
- UINT_16 u2BeaconInterval;
- UINT_8 ucTimeoutDiscovery;
- UINT_8 ucTimeoutInactivity;
- UINT_8 ucRole;
- UINT_8 PAL_Capabilities;
- UINT_8 cMaxTxPower;
- UINT_8 ucChannelBand;
- UINT_8 ucReserved[1];
- } CMD_BT_OVER_WIFI, *P_CMD_BT_OVER_WIFI;
- /* EVENT_BT_OVER_WIFI */
- typedef struct _EVENT_BT_OVER_WIFI {
- UINT_8 ucLinkStatus;
- UINT_8 ucSelectedChannel;
- INT_8 cRSSI;
- UINT_8 ucReserved[1];
- } EVENT_BT_OVER_WIFI, *P_EVENT_BT_OVER_WIFI;
- /* Same with DOMAIN_SUBBAND_INFO */
- typedef struct _CMD_SUBBAND_INFO {
- UINT_8 ucRegClass;
- UINT_8 ucBand;
- UINT_8 ucChannelSpan;
- UINT_8 ucFirstChannelNum;
- UINT_8 ucNumChannels;
- UINT_8 aucReserved[3];
- } CMD_SUBBAND_INFO, *P_CMD_SUBBAND_INFO;
- /* CMD_SET_DOMAIN_INFO */
- typedef struct _CMD_SET_DOMAIN_INFO_T {
- UINT_16 u2CountryCode;
- UINT_16 u2IsSetPassiveScan; /* 0: set channel domain; 1: set passive scan channel domain */
- CMD_SUBBAND_INFO rSubBand[6];
- UINT_8 uc2G4Bandwidth; /* CONFIG_BW_20_40M or CONFIG_BW_20M */
- UINT_8 uc5GBandwidth; /* CONFIG_BW_20_40M or CONFIG_BW_20M */
- UINT_8 aucReserved[2];
- } CMD_SET_DOMAIN_INFO_T, *P_CMD_SET_DOMAIN_INFO_T;
- #if CFG_SUPPORT_PWR_LIMIT_COUNTRY
- /* CMD_SET_PWR_LIMIT_TABLE */
- typedef struct _CMD_CHANNEL_POWER_LIMIT {
- UINT_8 ucCentralCh;
- INT_8 cPwrLimitCCK;
- INT_8 cPwrLimit20;
- INT_8 cPwrLimit40;
- INT_8 cPwrLimit80;
- INT_8 cPwrLimit160;
- UINT_8 ucFlag;
- UINT_8 aucReserved[1];
- } CMD_CHANNEL_POWER_LIMIT, *P_CMD_CHANNEL_POWER_LIMIT;
- typedef struct _CMD_SET_COUNTRY_CHANNEL_POWER_LIMIT_T {
- UINT_16 u2CountryCode;
- UINT_8 ucCountryFlag;
- UINT_8 ucNum;
- UINT_8 aucReserved[4];
- CMD_CHANNEL_POWER_LIMIT rChannelPowerLimit[1];
- } CMD_SET_COUNTRY_CHANNEL_POWER_LIMIT_T, *P_CMD_SET_COUNTRY_CHANNEL_POWER_LIMIT_T;
- #endif
- /* CMD_SET_IP_ADDRESS */
- typedef struct _IPV4_NETWORK_ADDRESS {
- UINT_8 aucIpAddr[4];
- } IPV4_NETWORK_ADDRESS, *P_IPV4_NETWORK_ADDRESS;
- typedef struct _CMD_SET_NETWORK_ADDRESS_LIST {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucAddressCount;
- UINT_8 ucReserved[2];
- IPV4_NETWORK_ADDRESS arNetAddress[1];
- } CMD_SET_NETWORK_ADDRESS_LIST, *P_CMD_SET_NETWORK_ADDRESS_LIST;
- typedef struct _PATTERN_DESCRIPTION {
- UINT_8 fgCheckBcA1;
- UINT_8 fgCheckMcA1;
- UINT_8 ePatternHeader;
- UINT_8 fgAndOp;
- UINT_8 fgNotOp;
- UINT_8 ucPatternMask;
- UINT_16 ucPatternOffset;
- UINT_8 aucPattern[8];
- } PATTERN_DESCRIPTION, *P_PATTERN_DESCRIPTION;
- typedef struct _CMD_RAW_PATTERN_CONFIGURATION_T {
- PATTERN_DESCRIPTION arPatternDesc[4];
- } CMD_RAW_PATTERN_CONFIGURATION_T, *P_CMD_RAW_PATTERN_CONFIGURATION_T;
- typedef struct _CMD_PATTERN_FUNC_CONFIG {
- BOOLEAN fgBcA1En;
- BOOLEAN fgMcA1En;
- BOOLEAN fgBcA1MatchDrop;
- BOOLEAN fgMcA1MatchDrop;
- } CMD_PATTERN_FUNC_CONFIG, *P_CMD_PATTERN_FUNC_CONFIG;
- typedef struct _EVENT_TX_DONE_T {
- UINT_8 ucPacketSeq;
- UINT_8 ucStatus;
- UINT_16 u2SequenceNumber;
- UINT_32 au4Reserved1;
- UINT_32 au4Reserved2;
- UINT_32 au4Reserved3;
- } EVENT_TX_DONE_T, *P_EVENT_TX_DONE_T;
- typedef struct _CMD_BSS_ACTIVATE_CTRL {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucActive;
- UINT_8 aucReserved[2];
- } CMD_BSS_ACTIVATE_CTRL, *P_CMD_BSS_ACTIVATE_CTRL;
- typedef struct _CMD_SET_BSS_RLM_PARAM_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucRfBand;
- UINT_8 ucPrimaryChannel;
- UINT_8 ucRfSco;
- UINT_8 ucErpProtectMode;
- UINT_8 ucHtProtectMode;
- UINT_8 ucGfOperationMode;
- UINT_8 ucTxRifsMode;
- UINT_16 u2HtOpInfo3;
- UINT_16 u2HtOpInfo2;
- UINT_8 ucHtOpInfo1;
- UINT_8 ucUseShortPreamble;
- UINT_8 ucUseShortSlotTime;
- UINT_8 ucCheckId; /* Fixed value: 0x72 */
- } CMD_SET_BSS_RLM_PARAM_T, *P_CMD_SET_BSS_RLM_PARAM_T;
- typedef struct _CMD_SET_BSS_INFO {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucConnectionState;
- UINT_8 ucCurrentOPMode;
- UINT_8 ucSSIDLen;
- UINT_8 aucSSID[32];
- UINT_8 aucBSSID[6];
- UINT_8 ucIsQBSS;
- UINT_8 ucReserved1;
- UINT_16 u2OperationalRateSet;
- UINT_16 u2BSSBasicRateSet;
- UINT_8 ucStaRecIdxOfAP;
- UINT_8 ucReserved2;
- UINT_8 ucReserved3;
- UINT_8 ucNonHTBasicPhyType; /* For Slot Time and CWmin */
- UINT_8 ucAuthMode;
- UINT_8 ucEncStatus;
- UINT_8 ucPhyTypeSet;
- UINT_8 aucOwnMac[6];
- UINT_8 fgWapiMode;
- UINT_8 fgIsApMode;
- UINT_8 fgHiddenSsidMode;
- CMD_SET_BSS_RLM_PARAM_T rBssRlmParam;
- } CMD_SET_BSS_INFO, *P_CMD_SET_BSS_INFO;
- typedef struct _CMD_UPDATE_STA_RECORD_T {
- UINT_8 ucIndex;
- UINT_8 ucStaType;
- UINT_8 aucMacAddr[MAC_ADDR_LEN];
- UINT_16 u2AssocId;
- UINT_16 u2ListenInterval;
- UINT_8 ucNetTypeIndex;
- UINT_8 ucDesiredPhyTypeSet;
- UINT_16 u2DesiredNonHTRateSet;
- UINT_16 u2BSSBasicRateSet;
- UINT_8 ucIsQoS;
- UINT_8 ucIsUapsdSupported;
- UINT_8 ucStaState;
- UINT_8 ucMcsSet;
- UINT_8 ucSupMcs32;
- UINT_8 ucAmpduParam;
- UINT_16 u2HtCapInfo;
- UINT_16 u2HtExtendedCap;
- UINT_32 u4TxBeamformingCap;
- UINT_8 ucAselCap;
- UINT_8 ucRCPI;
- UINT_8 ucNeedResp;
- UINT_8 ucUapsdAc; /* b0~3: Trigger enabled, b4~7: Delivery enabled */
- UINT_8 ucUapsdSp; /* 0: all, 1: max 2, 2: max 4, 3: max 6 */
- UINT_8 aucReserved[3];
- /* TBD */
- } CMD_UPDATE_STA_RECORD_T, *P_CMD_UPDATE_STA_RECORD_T;
- typedef struct _CMD_REMOVE_STA_RECORD_T {
- UINT_8 ucIndex;
- UINT_8 ucReserved;
- UINT_8 aucMacAddr[MAC_ADDR_LEN];
- } CMD_REMOVE_STA_RECORD_T, *P_CMD_REMOVE_STA_RECORD_T;
- typedef struct _CMD_INDICATE_PM_BSS_CREATED_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucDtimPeriod;
- UINT_16 u2BeaconInterval;
- UINT_16 u2AtimWindow;
- UINT_8 aucReserved[2];
- } CMD_INDICATE_PM_BSS_CREATED, *P_CMD_INDICATE_PM_BSS_CREATED;
- typedef struct _CMD_INDICATE_PM_BSS_CONNECTED_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucDtimPeriod;
- UINT_16 u2AssocId;
- UINT_16 u2BeaconInterval;
- UINT_16 u2AtimWindow;
- UINT_8 fgIsUapsdConnection;
- UINT_8 ucBmpDeliveryAC;
- UINT_8 ucBmpTriggerAC;
- UINT_8 aucReserved[1];
- } CMD_INDICATE_PM_BSS_CONNECTED, *P_CMD_INDICATE_PM_BSS_CONNECTED;
- typedef struct _CMD_INDICATE_PM_BSS_ABORT {
- UINT_8 ucNetTypeIndex;
- UINT_8 aucReserved[3];
- } CMD_INDICATE_PM_BSS_ABORT, *P_CMD_INDICATE_PM_BSS_ABORT;
- typedef struct _CMD_BEACON_TEMPLATE_UPDATE {
- UINT_8 ucUpdateMethod; /* 0: update randomly,
- * 1: update all,
- * 2: delete all (1 and 2 will update directly without search)
- */
- UINT_8 ucNetTypeIndex;
- UINT_8 aucReserved[2];
- UINT_16 u2Capability;
- UINT_16 u2IELen;
- UINT_8 aucIE[MAX_IE_LENGTH];
- } CMD_BEACON_TEMPLATE_UPDATE, *P_CMD_BEACON_TEMPLATE_UPDATE;
- typedef struct _CMD_SET_WMM_PS_TEST_STRUCT_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 bmfgApsdEnAc; /* b0~3: trigger-en AC0~3. b4~7: delivery-en AC0~3 */
- UINT_8 ucIsEnterPsAtOnce; /* enter PS immediately without 5 second guard after connected */
- UINT_8 ucIsDisableUcTrigger; /* not to trigger UC on beacon TIM is matched (under U-APSD) */
- } CMD_SET_WMM_PS_TEST_STRUCT_T, *P_CMD_SET_WMM_PS_TEST_STRUCT_T;
- /* Definition for CHANNEL_INFO.ucBand:
- * 0: Reserved
- * 1: BAND_2G4
- * 2: BAND_5G
- * Others: Reserved
- */
- typedef struct _CHANNEL_INFO_T {
- UINT_8 ucBand;
- UINT_8 ucChannelNum;
- } CHANNEL_INFO_T, *P_CHANNEL_INFO_T;
- typedef struct _CMD_SCAN_REQ_EXT_CH_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetworkType;
- UINT_8 ucScanType;
- UINT_8 ucSSIDType; /* BIT(0) wildcard / BIT(1) P2P-wildcard / BIT(2) specific */
- UINT_8 ucSSIDLength;
- UINT_8 aucReserved[1];
- UINT_16 u2ChannelMinDwellTime;
- UINT_8 aucSSID[32];
- UINT_16 u2ChannelDwellTime; /* For P2P */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- CHANNEL_INFO_T arChannelList[MAXIMUM_OPERATION_CHANNEL_LIST];
- UINT_16 u2IELen;
- UINT_8 aucIE[MAX_IE_LENGTH];
- } CMD_SCAN_REQ_EXT_CH, *P_CMD_SCAN_REQ_EXT_CH;
- typedef struct _CMD_SCAN_REQ_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetworkType;
- UINT_8 ucScanType;
- UINT_8 ucSSIDType; /* BIT(0) wildcard / BIT(1) P2P-wildcard / BIT(2) specific */
- UINT_8 ucSSIDLength;
- UINT_8 aucReserved[1];
- UINT_16 u2ChannelMinDwellTime;
- UINT_8 aucSSID[32];
- UINT_16 u2ChannelDwellTime; /* For P2P */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- CHANNEL_INFO_T arChannelList[32];
- UINT_16 u2IELen;
- UINT_8 aucIE[MAX_IE_LENGTH];
- } CMD_SCAN_REQ, *P_CMD_SCAN_REQ;
- typedef struct _CMD_SCAN_REQ_V2_EXT_CH_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetworkType;
- UINT_8 ucScanType;
- UINT_8 ucSSIDType;
- PARAM_SSID_T arSSID[4];
- UINT_16 u2ProbeDelayTime;
- UINT_16 u2ChannelDwellTime; /* For P2P */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- CHANNEL_INFO_T arChannelList[MAXIMUM_OPERATION_CHANNEL_LIST];
- UINT_16 u2IELen;
- UINT_8 aucIE[MAX_IE_LENGTH];
- } CMD_SCAN_REQ_V2_EXT_CH, *P_CMD_SCAN_REQ_V2_EXT_CH;
- typedef struct _CMD_SCAN_REQ_V2_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetworkType;
- UINT_8 ucScanType;
- UINT_8 ucSSIDType;
- PARAM_SSID_T arSSID[4];
- UINT_16 u2ProbeDelayTime;
- UINT_16 u2ChannelDwellTime; /* For P2P */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- CHANNEL_INFO_T arChannelList[32];
- UINT_16 u2IELen;
- UINT_8 aucIE[MAX_IE_LENGTH];
- } CMD_SCAN_REQ_V2, *P_CMD_SCAN_REQ_V2;
- typedef struct _CMD_SCAN_CANCEL_T {
- UINT_8 ucSeqNum;
- UINT_8 ucIsExtChannel; /* For P2P channel extension. */
- UINT_8 aucReserved[2];
- } CMD_SCAN_CANCEL, *P_CMD_SCAN_CANCEL;
- typedef struct _EVENT_SCAN_DONE_T {
- UINT_8 ucSeqNum;
- UINT_8 ucSparseChannelValid;
- CHANNEL_INFO_T rSparseChannel;
- } EVENT_SCAN_DONE, *P_EVENT_SCAN_DONE;
- #if CFG_SUPPORT_GET_CH_ENV
- typedef struct _CH_ENV_T {
- UINT_8 ucChNum;
- UINT_8 ucApNum;
- } CH_ENV_T, *P_CH_ENV_T;
- #endif
- #if 0 /* CFG_SUPPORT_BATCH_SCAN */
- typedef struct _CMD_BATCH_REQ_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetTypeIndex;
- UINT_8 ucCmd; /* Start/ Stop */
- UINT_8 ucMScan; /* an integer number of scans per batch */
- UINT_8 ucBestn; /* an integer number of the max AP to remember per scan */
- UINT_8 ucRtt; /* an integer number of highest-strength AP for which we'd
- like approximate distance reported */
- UINT_8 ucChannel; /* channels */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- UINT_8 aucReserved[3];
- UINT_32 u4Scanfreq; /* an integer number of seconds between scans */
- CHANNEL_INFO_T arChannelList[32]; /* channels */
- } CMD_BATCH_REQ_T, *P_CMD_BATCH_REQ_T;
- typedef struct _EVENT_BATCH_RESULT_ENTRY_T {
- UINT_8 aucBssid[MAC_ADDR_LEN];
- UINT_8 aucSSID[ELEM_MAX_LEN_SSID];
- UINT_8 ucSSIDLen;
- INT_8 cRssi;
- UINT_32 ucFreq;
- UINT_32 u4Age;
- UINT_32 u4Dist;
- UINT_32 u4Distsd;
- } EVENT_BATCH_RESULT_ENTRY_T, *P_EVENT_BATCH_RESULT_ENTRY_T;
- typedef struct _EVENT_BATCH_RESULT_T {
- UINT_8 ucScanCount;
- UINT_8 aucReserved[3];
- EVENT_BATCH_RESULT_ENTRY_T arBatchResult[12]; /* Must be the same with SCN_BATCH_STORE_MAX_NUM */
- } EVENT_BATCH_RESULT_T, *P_EVENT_BATCH_RESULT_T;
- #endif
- typedef struct _CMD_CH_PRIVILEGE_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucTokenID;
- UINT_8 ucAction;
- UINT_8 ucPrimaryChannel;
- UINT_8 ucRfSco;
- UINT_8 ucRfBand;
- UINT_8 ucReqType;
- UINT_8 ucReserved;
- UINT_32 u4MaxInterval; /* In unit of ms */
- UINT_8 aucBSSID[6];
- UINT_8 aucReserved[2];
- } CMD_CH_PRIVILEGE_T, *P_CMD_CH_PRIVILEGE_T;
- typedef struct _CMD_TX_PWR_T {
- INT_8 cTxPwr2G4Cck; /* signed, in unit of 0.5dBm */
- #if defined(MT6620)
- INT_8 acReserved[3];
- #elif defined(MT6628)
- INT_8 cTxPwr2G4Dsss; /* signed, in unit of 0.5dBm */
- INT_8 acReserved[2];
- #else
- #error "No valid definition!"
- #endif
- INT_8 cTxPwr2G4OFDM_BPSK;
- INT_8 cTxPwr2G4OFDM_QPSK;
- INT_8 cTxPwr2G4OFDM_16QAM;
- INT_8 cTxPwr2G4OFDM_Reserved;
- INT_8 cTxPwr2G4OFDM_48Mbps;
- INT_8 cTxPwr2G4OFDM_54Mbps;
- INT_8 cTxPwr2G4HT20_BPSK;
- INT_8 cTxPwr2G4HT20_QPSK;
- INT_8 cTxPwr2G4HT20_16QAM;
- INT_8 cTxPwr2G4HT20_MCS5;
- INT_8 cTxPwr2G4HT20_MCS6;
- INT_8 cTxPwr2G4HT20_MCS7;
- INT_8 cTxPwr2G4HT40_BPSK;
- INT_8 cTxPwr2G4HT40_QPSK;
- INT_8 cTxPwr2G4HT40_16QAM;
- INT_8 cTxPwr2G4HT40_MCS5;
- INT_8 cTxPwr2G4HT40_MCS6;
- INT_8 cTxPwr2G4HT40_MCS7;
- INT_8 cTxPwr5GOFDM_BPSK;
- INT_8 cTxPwr5GOFDM_QPSK;
- INT_8 cTxPwr5GOFDM_16QAM;
- INT_8 cTxPwr5GOFDM_Reserved;
- INT_8 cTxPwr5GOFDM_48Mbps;
- INT_8 cTxPwr5GOFDM_54Mbps;
- INT_8 cTxPwr5GHT20_BPSK;
- INT_8 cTxPwr5GHT20_QPSK;
- INT_8 cTxPwr5GHT20_16QAM;
- INT_8 cTxPwr5GHT20_MCS5;
- INT_8 cTxPwr5GHT20_MCS6;
- INT_8 cTxPwr5GHT20_MCS7;
- INT_8 cTxPwr5GHT40_BPSK;
- INT_8 cTxPwr5GHT40_QPSK;
- INT_8 cTxPwr5GHT40_16QAM;
- INT_8 cTxPwr5GHT40_MCS5;
- INT_8 cTxPwr5GHT40_MCS6;
- INT_8 cTxPwr5GHT40_MCS7;
- } CMD_TX_PWR_T, *P_CMD_TX_PWR_T;
- typedef struct _CMD_5G_PWR_OFFSET_T {
- INT_8 cOffsetBand0; /* 4.915-4.980G */
- INT_8 cOffsetBand1; /* 5.000-5.080G */
- INT_8 cOffsetBand2; /* 5.160-5.180G */
- INT_8 cOffsetBand3; /* 5.200-5.280G */
- INT_8 cOffsetBand4; /* 5.300-5.340G */
- INT_8 cOffsetBand5; /* 5.500-5.580G */
- INT_8 cOffsetBand6; /* 5.600-5.680G */
- INT_8 cOffsetBand7; /* 5.700-5.825G */
- } CMD_5G_PWR_OFFSET_T, *P_CMD_5G_PWR_OFFSET_T;
- typedef struct _CMD_PWR_PARAM_T {
- UINT_32 au4Data[28];
- UINT_32 u4RefValue1;
- UINT_32 u4RefValue2;
- } CMD_PWR_PARAM_T, *P_CMD_PWR_PARAM_T;
- typedef struct _CMD_PHY_PARAM_T {
- UINT_8 aucData[144]; /* eFuse content */
- } CMD_PHY_PARAM_T, *P_CMD_PHY_PARAM_T;
- typedef struct _CMD_AUTO_POWER_PARAM_T {
- UINT_8 ucType; /* 0: Disable 1: Enalbe 0x10: Change parameters */
- UINT_8 ucNetTypeIndex;
- UINT_8 aucReserved[2];
- UINT_8 aucLevelRcpiTh[3];
- UINT_8 aucReserved2[1];
- INT_8 aicLevelPowerOffset[3]; /* signed, in unit of 0.5dBm */
- UINT_8 aucReserved3[1];
- UINT_8 aucReserved4[8];
- } CMD_AUTO_POWER_PARAM_T, *P_CMD_AUTO_POWER_PARAM_T;
- typedef struct _EVENT_CH_PRIVILEGE_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucTokenID;
- UINT_8 ucStatus;
- UINT_8 ucPrimaryChannel;
- UINT_8 ucRfSco;
- UINT_8 ucRfBand;
- UINT_8 ucReqType;
- UINT_8 ucReserved;
- UINT_32 u4GrantInterval; /* In unit of ms */
- } EVENT_CH_PRIVILEGE_T, *P_EVENT_CH_PRIVILEGE_T;
- typedef enum _ENUM_BEACON_TIMEOUT_TYPE_T {
- BEACON_TIMEOUT_LOST_BEACON = 0,
- BEACON_TIMEOUT_AGE,
- BEACON_TIMEOUT_CONNECT,
- BEACON_TIMEOUT_BEACON_INTERVAL,
- BEACON_TIMEOUT_ABORT,
- BEACON_TIMEOUT_TX_ERROR,
- BEACON_TIMEOUT_TYPE_NUM
- } ENUM_BEACON_TIMEOUT_TYPE_T, *P_ENUM_BEACON_TIMEOUT_TYPE_T;
- typedef struct _EVENT_BSS_BEACON_TIMEOUT_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucReason; /* ENUM_BEACON_TIMEOUT_TYPE_T */
- UINT_8 aucReserved[2];
- } EVENT_BSS_BEACON_TIMEOUT_T, *P_EVENT_BSS_BEACON_TIMEOUT_T;
- typedef struct _EVENT_STA_AGING_TIMEOUT_T {
- UINT_8 ucStaRecIdx;
- UINT_8 aucReserved[3];
- } EVENT_STA_AGING_TIMEOUT_T, *P_EVENT_STA_AGING_TIMEOUT_T;
- typedef struct _EVENT_NOA_TIMING_T {
- UINT_8 fgIsInUse; /* Indicate if this entry is in use or not */
- UINT_8 ucCount; /* Count */
- UINT_8 aucReserved[2];
- UINT_32 u4Duration; /* Duration */
- UINT_32 u4Interval; /* Interval */
- UINT_32 u4StartTime; /* Start Time */
- } EVENT_NOA_TIMING_T, *P_EVENT_NOA_TIMING_T;
- typedef struct _EVENT_UPDATE_NOA_PARAMS_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 aucReserved[2];
- UINT_8 fgEnableOppPS;
- UINT_16 u2CTWindow;
- UINT_8 ucNoAIndex;
- UINT_8 ucNoATimingCount; /* Number of NoA Timing */
- EVENT_NOA_TIMING_T arEventNoaTiming[8 /*P2P_MAXIMUM_NOA_COUNT */];
- } EVENT_UPDATE_NOA_PARAMS_T, *P_EVENT_UPDATE_NOA_PARAMS_T;
- typedef struct _EVENT_AP_OBSS_STATUS_T {
- UINT_8 ucNetTypeIndex;
- UINT_8 ucObssErpProtectMode;
- UINT_8 ucObssHtProtectMode;
- UINT_8 ucObssGfOperationMode;
- UINT_8 ucObssRifsOperationMode;
- UINT_8 ucObssBeaconForcedTo20M;
- UINT_8 aucReserved[2];
- } EVENT_AP_OBSS_STATUS_T, *P_EVENT_AP_OBSS_STATUS_T;
- typedef struct _CMD_EDGE_TXPWR_LIMIT_T {
- INT_8 cBandEdgeMaxPwrCCK;
- INT_8 cBandEdgeMaxPwrOFDM20;
- INT_8 cBandEdgeMaxPwrOFDM40;
- INT_8 cBandEdgeCert;
- } CMD_EDGE_TXPWR_LIMIT_T, *P_CMD_EDGE_TXPWR_LIMIT_T;
- typedef struct _CMD_RSSI_COMPENSATE_T {
- UINT_8 uc2GRssiCompensation;
- UINT_8 uc5GRssiCompensation;
- UINT_8 ucRssiCompensationValidbit;
- UINT_8 cReserved;
- } CMD_RSSI_COMPENSATE_T, *P_CMD_RSSI_COMPENSATE_T;
- typedef struct _CMD_BAND_SUPPORT_T {
- UINT_8 uc5GBandSupport;
- UINT_8 cReserved[3];
- } CMD_BAND_SUPPORT_T, *P_CMD_BAND_SUPPORT_T;
- typedef struct _CMD_TX_PWR_CE_T {
- INT_8 cTxPwrCckLmt; /* signed, in unit of 0.5dBm */
- INT_8 cTxPwrOfdmLmt; /* signed, in unit of 0.5dBm */
- INT_8 cTxPwrHt20Lmt;
- INT_8 cTxPwrHt40Lmt;
- } CMD_TX_PWR_CE_T, *P_CMD_TX_PWR_CE_T;
- typedef struct _CMD_SET_DEVICE_MODE_T {
- UINT_16 u2ChipID;
- UINT_16 u2Mode;
- } CMD_SET_DEVICE_MODE_T, *P_CMD_SET_DEVICE_MODE_T;
- #if CFG_SUPPORT_RDD_TEST_MODE
- typedef struct _CMD_RDD_CH_T {
- UINT_8 ucRddTestMode;
- UINT_8 ucRddShutCh;
- UINT_8 ucRddStartCh;
- UINT_8 ucRddStopCh;
- UINT_8 ucRddDfs;
- UINT_8 ucReserved;
- UINT_8 ucReserved1;
- UINT_8 ucReserved2;
- } CMD_RDD_CH_T, *P_CMD_RDD_CH_T;
- typedef struct _EVENT_RDD_STATUS_T {
- UINT_8 ucRddStatus;
- UINT_8 aucReserved[3];
- } EVENT_RDD_STATUS_T, *P_EVENT_RDD_STATUS_T;
- #endif
- typedef struct _EVENT_AIS_BSS_INFO_T {
- ENUM_PARAM_MEDIA_STATE_T eConnectionState; /* Connected Flag used in AIS_NORMAL_TR */
- ENUM_OP_MODE_T eCurrentOPMode; /* Current Operation Mode - Infra/IBSS */
- BOOLEAN fgIsNetActive; /* TRUE if this network has been actived */
- UINT_8 ucReserved[3];
- } EVENT_AIS_BSS_INFO_T, *P_EVENT_AIS_BSS_INFO_T;
- typedef struct _CMD_SET_TXPWR_CTRL_T {
- INT_8 c2GLegacyStaPwrOffset; /* Unit: 0.5dBm, default: 0 */
- INT_8 c2GHotspotPwrOffset;
- INT_8 c2GP2pPwrOffset;
- INT_8 c2GBowPwrOffset;
- INT_8 c5GLegacyStaPwrOffset; /* Unit: 0.5dBm, default: 0 */
- INT_8 c5GHotspotPwrOffset;
- INT_8 c5GP2pPwrOffset;
- INT_8 c5GBowPwrOffset;
- UINT_8 ucConcurrencePolicy; /* TX power policy when concurrence
- in the same channel
- 0: Highest power has priority
- 1: Lowest power has priority */
- INT_8 acReserved1[3]; /* Must be zero */
- /* Power limit by channel for all data rates */
- INT_8 acTxPwrLimit2G[14]; /* Channel 1~14, Unit: 0.5dBm */
- INT_8 acTxPwrLimit5G[4]; /* UNII 1~4 */
- INT_8 acReserved2[2]; /* Must be zero */
- } CMD_SET_TXPWR_CTRL_T, *P_CMD_SET_TXPWR_CTRL_T;
- #if CFG_SUPPORT_BUILD_DATE_CODE
- typedef struct _CMD_GET_BUILD_DATE_CODE {
- UINT_8 aucReserved[4];
- } CMD_GET_BUILD_DATE_CODE, *P_CMD_GET_BUILD_DATE_CODE;
- typedef struct _EVENT_BUILD_DATE_CODE {
- UINT_8 aucDateCode[16];
- } EVENT_BUILD_DATE_CODE, *P_EVENT_BUILD_DATE_CODE;
- #endif
- typedef struct _CMD_GET_STA_STATISTICS_T {
- UINT_8 ucIndex;
- UINT_8 ucFlags;
- UINT_8 ucReadClear;
- UINT_8 aucReserved0[1];
- UINT_8 aucMacAddr[MAC_ADDR_LEN];
- UINT_8 aucReserved1[2];
- UINT_8 aucReserved2[16];
- } CMD_GET_STA_STATISTICS_T, *P_CMD_GET_STA_STATISTICS_T;
- /* CFG_SUPPORT_WFD */
- typedef struct _EVENT_STA_STATISTICS_T {
- /* Event header */
- /* UINT_16 u2Length; */
- /* UINT_16 u2Reserved1; *//* Must be filled with 0x0001 (EVENT Packet) */
- /* UINT_8 ucEID; */
- /* UINT_8 ucSeqNum; */
- /* UINT_8 aucReserved2[2]; */
- /* Event Body */
- UINT_8 ucVersion;
- UINT_8 aucReserved1[3];
- UINT_32 u4Flags; /* Bit0: valid */
- UINT_8 ucStaRecIdx;
- UINT_8 ucNetworkTypeIndex;
- UINT_8 ucWTEntry;
- UINT_8 aucReserved4[1];
- UINT_8 ucMacAddr[MAC_ADDR_LEN];
- UINT_8 ucPer; /* base: 128 */
- UINT_8 ucRcpi;
- UINT_32 u4PhyMode; /* SGI BW */
- UINT_16 u2LinkSpeed; /* unit is 0.5 Mbits */
- UINT_8 ucLinkQuality;
- UINT_8 ucLinkReserved;
- UINT_32 u4TxCount;
- UINT_32 u4TxFailCount;
- UINT_32 u4TxLifeTimeoutCount;
- UINT_32 u4TxDoneAirTime;
- UINT_8 aucReserved[64];
- } EVENT_STA_STATISTICS_T, *P_EVENT_STA_STATISTICS_T;
- #if CFG_SUPPORT_HOTSPOT_OPTIMIZATION
- typedef struct _CMD_HOTSPOT_OPTIMIZATION_CONFIG {
- UINT_32 fgHotspotOptimizationEn;
- UINT_32 u4Level;
- } CMD_HOTSPOT_OPTIMIZATION_CONFIG, *P_HOTSPOT_OPTIMIZATION_CONFIG;
- #endif
- #if CFG_AUTO_CHANNEL_SEL_SUPPORT
- /* 4 Auto Channel Selection */
- typedef struct _CMD_GET_CHN_LOAD_T {
- UINT_8 ucIndex;
- UINT_8 ucFlags;
- UINT_8 ucReadClear;
- UINT_8 aucReserved0[1];
- UINT_8 ucChannel;
- UINT_16 u2ChannelLoad;
- UINT_8 aucReserved1[1];
- UINT_8 aucReserved2[16];
- } CMD_GET_CHN_LOAD_T, *P_CMD_GET_CHN_LOAD_T;
- /* 4 Auto Channel Selection */
- typedef struct _EVENT_CHN_LOAD_T {
- /* Event Body */
- UINT_8 ucVersion;
- UINT_8 aucReserved1[3];
- UINT_32 u4Flags; /* Bit0: valid */
- UINT_8 ucChannel;
- UINT_16 u2ChannelLoad;
- UINT_8 aucReserved4[1];
- UINT_8 aucReserved[64];
- } EVENT_CHN_LOAD_T, *P_EVENT_CHN_LOAD_T;
- typedef struct _CMD_GET_LTE_SAFE_CHN_T {
- UINT_8 ucIndex;
- UINT_8 ucFlags;
- UINT_8 aucReserved0[2];
- UINT_8 aucReserved2[16];
- } CMD_GET_LTE_SAFE_CHN_T, *P_CMD_GET_LTE_SAFE_CHN_T;
- typedef struct _EVENT_LTE_MODE_T {
- /* Event Body */
- UINT_8 ucVersion;
- UINT_8 aucReserved1[3];
- UINT_32 u4Flags; /* Bit0: valid */
- LTE_SAFE_CH_INFO_T rLteSafeChn;
- UINT_8 aucReserved4[3];
- UINT_8 aucReserved[4];
- } EVENT_LTE_MODE_T, *P_EVENT_LTE_MODE_T;
- #endif
- typedef struct _CMD_ROAMING_INFO_T {
- UINT_32 fgIsFastRoamingApplied;
- UINT_32 Reserved[9];
- } CMD_ROAMING_INFO_T;
- typedef struct _CMD_WFD_DEBUG_MODE_INFO_T {
- UINT_8 ucDebugMode;
- UINT_16 u2PeriodInteval;
- UINT_8 Reserved;
- } CMD_WFD_DEBUG_MODE_INFO_T, *P_CMD_WFD_DEBUG_MODE_INFO_T;
- typedef struct _EVENT_FW_LOG_T {
- UINT_8 fileName[64];
- UINT_32 lineNo;
- UINT_32 WifiUpTime;
- UINT_8 log[MAX_FW_LOG_LENGTH]; /* total size is aucBuffer in WIFI_EVENT_T */
- } EVENT_FW_LOG_T, *P_EVENT_FW_LOG_T;
- typedef enum _ENUM_NLO_CIPHER_ALGORITHM {
- NLO_CIPHER_ALGO_NONE = 0x00,
- NLO_CIPHER_ALGO_WEP40 = 0x01,
- NLO_CIPHER_ALGO_TKIP = 0x02,
- NLO_CIPHER_ALGO_CCMP = 0x04,
- NLO_CIPHER_ALGO_WEP104 = 0x05,
- NLO_CIPHER_ALGO_WPA_USE_GROUP = 0x100,
- NLO_CIPHER_ALGO_RSN_USE_GROUP = 0x100,
- NLO_CIPHER_ALGO_WEP = 0x101,
- } ENUM_NLO_CIPHER_ALGORITHM, *P_ENUM_NLO_CIPHER_ALGORITHM;
- typedef enum _ENUM_NLO_AUTH_ALGORITHM {
- NLO_AUTH_ALGO_80211_OPEN = 1,
- NLO_AUTH_ALGO_80211_SHARED_KEY = 2,
- NLO_AUTH_ALGO_WPA = 3,
- NLO_AUTH_ALGO_WPA_PSK = 4,
- NLO_AUTH_ALGO_WPA_NONE = 5,
- NLO_AUTH_ALGO_RSNA = 6,
- NLO_AUTH_ALGO_RSNA_PSK = 7,
- } ENUM_NLO_AUTH_ALGORITHM, *P_ENUM_NLO_AUTH_ALGORITHM;
- typedef struct _NLO_NETWORK {
- UINT_8 ucNumChannelHint[4];
- UINT_8 ucSSIDLength;
- UINT_8 ucCipherAlgo;
- UINT_16 u2AuthAlgo;
- UINT_8 aucSSID[32];
- } NLO_NETWORK, *P_NLO_NETWORK;
- typedef struct _CMD_NLO_REQ {
- UINT_8 ucSeqNum;
- UINT_8 ucBssIndex;
- UINT_8 ucNetworkType;
- UINT_8 fgStopAfterIndication;
- UINT_8 ucFastScanIteration;
- UINT_16 u2FastScanPeriod;
- UINT_16 u2SlowScanPeriod;
- UINT_8 ucEntryNum;
- UINT_8 ucReserved;
- UINT_16 u2IELen;
- NLO_NETWORK arNetworkList[16];
- UINT_8 aucIE[0];
- UINT_8 ucScanType;
- } CMD_NLO_REQ, *P_CMD_NLO_REQ;
- typedef struct _CMD_NLO_CANCEL_T {
- UINT_8 ucSeqNum;
- UINT_8 aucReserved[3];
- } CMD_NLO_CANCEL, *P_CMD_NLO_CANCEL;
- typedef struct _EVENT_NLO_DONE_T {
- UINT_8 ucSeqNum;
- UINT_8 ucStatus;
- UINT_8 aucReserved[2];
- } EVENT_NLO_DONE_T, *P_EVENT_NLO_DONE_T;
- typedef struct _EVENT_GSCAN_CAPABILITY_T {
- UINT_8 ucVersion;
- UINT_8 aucReserved1[3];
- UINT_32 u4MaxScanCacheSize;
- UINT_32 u4MaxScanBuckets;
- UINT_32 u4MaxApCachePerScan;
- UINT_32 u4MaxRssiSampleSize;
- UINT_32 u4MaxScanReportingThreshold;
- UINT_32 u4MaxHotlistAps;
- UINT_32 u4MaxSignificantWifiChangeAps;
- UINT_32 au4Reserved[4];
- } EVENT_GSCAN_CAPABILITY_T, *P_EVENT_GSCAN_CAPABILITY_T;
- typedef struct _EVENT_GSCAN_SCAN_AVAILABLE_T {
- UINT_16 u2Num;
- UINT_8 aucReserved[2];
- } EVENT_GSCAN_SCAN_AVAILABLE_T, *P_EVENT_GSCAN_SCAN_AVAILABLE_T;
- typedef struct _EVENT_GSCAN_SCAN_COMPLETE_T {
- UINT_8 ucScanState;
- UINT_8 aucReserved[3];
- } EVENT_GSCAN_SCAN_COMPLETE_T, *P_EVENT_GSCAN_SCAN_COMPLETE_T;
- typedef struct WIFI_GSCAN_RESULT {
- UINT_64 u8Ts; /* Time of discovery */
- UINT_8 arSsid[ELEM_MAX_LEN_SSID + 1]; /* null terminated */
- UINT_8 arMacAddr[6]; /* BSSID */
- UINT_32 u4Channel; /* channel frequency in MHz */
- INT_32 i4Rssi; /* in db */
- UINT_64 u8Rtt; /* in nanoseconds */
- UINT_64 u8RttSd; /* standard deviation in rtt */
- UINT_16 u2BeaconPeriod; /* units are Kusec */
- UINT_16 u2Capability; /* Capability information */
- UINT_32 u4IeLength; /* byte length of Information Elements */
- UINT_8 ucIeData[1]; /* IE data to follow */
- } WIFI_GSCAN_RESULT_T, *P_WIFI_GSCAN_RESULT_T;
- typedef struct _EVENT_GSCAN_RESULT_T {
- UINT_8 ucVersion;
- UINT_8 aucReserved[3];
- UINT_16 u2ScanId;
- UINT_16 u2ScanFlags;
- UINT_16 u2NumOfResults;
- WIFI_GSCAN_RESULT_T rResult[1];
- } EVENT_GSCAN_RESULT_T, *P_EVENT_GSCAN_RESULT_T;
- typedef struct _EVENT_GSCAN_FULL_RESULT_T {
- UINT_8 ucVersion;
- UINT_8 aucReserved[3];
- WIFI_GSCAN_RESULT_T rResult;
- } EVENT_GSCAN_FULL_RESULT_T, *P_EVENT_GSCAN_FULL_RESULT_T;
- typedef struct GSCAN_SWC_NET {
- UINT_16 u2Flags;
- UINT_16 u2Channel;
- UINT_8 arBssid[6];
- INT_8 aicRssi[SCN_PSCAN_SWC_RSSI_WIN_MAX];
- } GSCAN_SWC_NET_T, P_GSCAN_SWC_NET_T;
- typedef struct _EVENT_GSCAN_SIGNIFICANT_CHANGE_T {
- UINT_8 ucVersion;
- UINT_8 aucReserved[3];
- GSCAN_SWC_NET_T arNet[SCN_PSCAN_SWC_MAX_NUM];
- } EVENT_GSCAN_SIGNIFICANT_CHANGE_T, *P_EVENT_GSCAN_SIGNIFICANT_CHANGE_T;
- typedef struct _EVENT_GSCAN_GEOFENCE_FOUND_T {
- UINT_8 ucVersion;
- UINT_8 aucReserved[3];
- WIFI_GSCAN_RESULT_T rResult[SCN_PSCAN_HOTLIST_REPORT_MAX_NUM];
- } EVENT_GSCAN_GEOFENCE_FOUND_T, *P_EVENT_GSCAN_GEOFENCE_FOUND_T;
- #if CFG_SUPPORT_BATCH_SCAN
- #if 0 /* !CFG_SUPPORT_GSCN */
- typedef struct _CMD_BATCH_REQ_T {
- UINT_8 ucSeqNum;
- UINT_8 ucNetTypeIndex;
- UINT_8 ucCmd; /* Start/ Stop */
- UINT_8 ucMScan; /* an integer number of scans per batch */
- UINT_8 ucBestn; /* an integer number of the max AP to remember per scan */
- UINT_8 ucRtt; /* an integer number of highest-strength AP for which
- we'd like approximate distance reported */
- UINT_8 ucChannel; /* channels */
- UINT_8 ucChannelType;
- UINT_8 ucChannelListNum;
- UINT_8 aucReserved[3];
- UINT_32 u4Scanfreq; /* an integer number of seconds between scans */
- CHANNEL_INFO_T arChannelList[32]; /* channels */
- } CMD_BATCH_REQ_T, *P_CMD_BATCH_REQ_T;
- #endif
- typedef struct _EVENT_BATCH_RESULT_ENTRY_T {
- UINT_8 aucBssid[MAC_ADDR_LEN];
- UINT_8 aucSSID[ELEM_MAX_LEN_SSID];
- UINT_8 ucSSIDLen;
- INT_8 cRssi;
- UINT_32 ucFreq;
- UINT_32 u4Age;
- UINT_32 u4Dist;
- UINT_32 u4Distsd;
- } EVENT_BATCH_RESULT_ENTRY_T, *P_EVENT_BATCH_RESULT_ENTRY_T;
- typedef struct _EVENT_BATCH_RESULT_T {
- UINT_8 ucScanCount;
- UINT_8 aucReserved[3];
- EVENT_BATCH_RESULT_ENTRY_T arBatchResult[12]; /* Must be the same with SCN_BATCH_STORE_MAX_NUM */
- } EVENT_BATCH_RESULT_T, *P_EVENT_BATCH_RESULT_T;
- #endif
- typedef struct _CMD_RLM_INFO_T {
- UINT_32 u4Version;
- UINT_32 fgIsErrRatioEnhanceApplied;
- UINT_8 ucErrRatio2LimitMinRate;
- /*
- 0:1M, 1:2M, 2:5.5M, 3:11M, 6:6M, 7:9M, 8:12M, 9:18M, 10:24M, 11:36M, 12:48M, 13:54M
- */
- UINT_8 ucMinLegacyRateIdx;
- INT_8 cMinRssiThreshold;
- BOOLEAN fgIsRtsApplied;
- UINT_8 ucRecoverTime;
- UINT_32 u4Reserved[0];
- } CMD_RLM_INFO_T;
- typedef struct _WIFI_SYSTEM_SUSPEND_CMD_T {
- BOOLEAN fgIsSystemSuspend;
- UINT_8 reserved[3];
- } WIFI_SYSTEM_SUSPEND_CMD_T, *P_WIFI_SYSTEM_SUSPEND_CMD_T;
- /*******************************************************************************
- * P U B L I C D A T A
- ********************************************************************************
- */
- /*******************************************************************************
- * P R I V A T E D A T A
- ********************************************************************************
- */
- /*******************************************************************************
- * M A C R O S
- ********************************************************************************
- */
- /*******************************************************************************
- * F U N C T I O N D E C L A R A T I O N S
- ********************************************************************************
- */
- VOID nicCmdEventQueryMcrRead(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryMemDump(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQuerySwCtrlRead(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRfTestATInfo(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventSetCommon(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventSetDisassociate(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventSetIpAddress(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryLinkQuality(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryLinkSpeed(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryStatistics(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventEnterRfTest(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventLeaveRfTest(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryAddress(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryMcastAddr(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryEepromRead(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventSetMediaStreamMode(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- /* Statistics responder */
- VOID nicCmdEventQueryXmitOk(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRecvOk(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryXmitError(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRecvError(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRecvNoBuffer(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRecvCrcError(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryRecvErrorAlignment(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryXmitOneCollision(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryXmitMoreCollisions(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryXmitMaxCollisions(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- /* for timeout check */
- VOID nicOidCmdTimeoutCommon(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo);
- VOID nicCmdTimeoutCommon(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo);
- VOID nicOidCmdEnterRFTestTimeout(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo);
- #if CFG_SUPPORT_BUILD_DATE_CODE
- VOID nicCmdEventBuildDateCode(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #endif
- VOID nicCmdEventQueryStaStatistics(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #if CFG_AUTO_CHANNEL_SEL_SUPPORT
- /* 4 Auto Channel Selection */
- VOID nicCmdEventQueryChannelLoad(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- VOID nicCmdEventQueryLTESafeChn(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #endif
- #if CFG_SUPPORT_BATCH_SCAN
- VOID nicCmdEventBatchScanResult(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #endif
- VOID nicCmdEventGetBSSInfo(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #ifdef FW_CFG_SUPPORT
- VOID nicCmdEventQueryCfgRead(IN P_ADAPTER_T prAdapter, IN P_CMD_INFO_T prCmdInfo, IN PUINT_8 pucEventBuf);
- #endif
- /*******************************************************************************
- * F U N C T I O N S
- ********************************************************************************
- */
- #endif /* _NIC_CMD_EVENT_H */
|