1 #ifndef _HALMAC_FW_INFO_H_
2 #define _HALMAC_FW_INFO_H_
4 #define H2C_FORMAT_VERSION 4
6 #define H2C_ACK_HDR_CONTENT_LENGTH 8
7 #define CFG_PARAMETER_ACK_CONTENT_LENGTH 16
8 #define SCAN_STATUS_RPT_CONTENT_LENGTH 4
9 #define C2H_DBG_HEADER_LENGTH 4
10 #define C2H_DBG_CONTENT_MAX_LENGTH 228
12 #define C2H_DBG_CONTENT_SEQ_OFFSET 1
14 /* Rename from FW SysHalCom_Debug_RAM.h */
15 #define FW_REG_H2CPKT_DONE_SEQ 0x1C8
16 #define FW_REG_WoW_REASON 0x1C7
19 typedef enum _HALMAC_DATA_TYPE {
20 HALMAC_DATA_TYPE_MAC_REG = 0x00,
21 HALMAC_DATA_TYPE_BB_REG = 0x01,
22 HALMAC_DATA_TYPE_RADIO_A = 0x02,
23 HALMAC_DATA_TYPE_RADIO_B = 0x03,
24 HALMAC_DATA_TYPE_RADIO_C = 0x04,
25 HALMAC_DATA_TYPE_RADIO_D = 0x05,
27 HALMAC_DATA_TYPE_DRV_DEFINE_0 = 0x80,
28 HALMAC_DATA_TYPE_DRV_DEFINE_1 = 0x81,
29 HALMAC_DATA_TYPE_DRV_DEFINE_2 = 0x82,
30 HALMAC_DATA_TYPE_DRV_DEFINE_3 = 0x83,
31 HALMAC_DATA_TYPE_UNDEFINE = 0x7FFFFFFF,
34 typedef enum _HALMAC_PACKET_ID {
35 HALMAC_PACKET_PROBE_REQ = 0x00,
36 HALMAC_PACKET_SYNC_BCN = 0x01,
37 HALMAC_PACKET_DISCOVERY_BCN = 0x02,
39 HALMAC_PACKET_UNDEFINE = 0x7FFFFFFF,
42 /* Channel Switch Action ID */
43 typedef enum _HALMAC_CS_ACTION_ID {
44 HALMAC_CS_ACTION_NONE = 0x00,
45 HALMAC_CS_ACTIVE_SCAN = 0x01,
46 HALMAC_CS_NAN_NONMASTER_DW = 0x02,
47 HALMAC_CS_NAN_NONMASTER_NONDW = 0x03,
48 HALMAC_CS_NAN_MASTER_NONDW = 0x04,
49 HALMAC_CS_NAN_MASTER_DW = 0x05,
51 HALMAC_CS_ACTION_UNDEFINE = 0x7FFFFFFF,
52 } HALMAC_CS_ACTION_ID;
54 /* Channel Switch Extra Action ID */
55 typedef enum _HALMAC_CS_EXTRA_ACTION_ID {
56 HALMAC_CS_EXTRA_ACTION_NONE = 0x00,
57 HALMAC_CS_EXTRA_UPDATE_PROBE = 0x01,
58 HALMAC_CS_EXTRA_UPDATE_BEACON = 0x02,
61 HALMAC_CS_EXTRA_ACTION_UNDEFINE = 0x7FFFFFFF,
62 } HALMAC_CS_EXTRA_ACTION_ID;
64 typedef enum _HALMAC_H2C_RETURN_CODE {
65 HALMAC_H2C_RETURN_SUCCESS = 0x00,
66 HALMAC_H2C_RETURN_CFG_ERR_LEN = 0x01,
67 HALMAC_H2C_RETURN_CFG_ERR_CMD = 0x02,
69 HALMAC_H2C_RETURN_EFUSE_ERR_DUMP = 0x03,
71 HALMAC_H2C_RETURN_DATAPACK_ERR_FULL = 0x04, /* DMEM buffer full */
72 HALMAC_H2C_RETURN_DATAPACK_ERR_ID = 0x05, /* Invalid pack id */
74 HALMAC_H2C_RETURN_RUN_ERR_EMPTY = 0x06, /* No data in dedicated buffer */
75 HALMAC_H2C_RETURN_RUN_ERR_LEN = 0x07,
76 HALMAC_H2C_RETURN_RUN_ERR_CMD = 0x08,
77 HALMAC_H2C_RETURN_RUN_ERR_ID = 0x09, /* Invalid pack id */
79 HALMAC_H2C_RETURN_PACKET_ERR_FULL = 0x0A, /* DMEM buffer full */
80 HALMAC_H2C_RETURN_PACKET_ERR_ID = 0x0B, /* Invalid packet id */
82 HALMAC_H2C_RETURN_SCAN_ERR_FULL = 0x0C, /* DMEM buffer full */
83 HALMAC_H2C_RETURN_SCAN_ERR_PHYDM = 0x0D, /* PHYDM API return fail */
85 HALMAC_H2C_RETURN_ORIG_ERR_ID = 0x0E, /* Invalid original H2C cmd id */
87 HALMAC_H2C_RETURN_UNDEFINE = 0x7FFFFFFF,
88 } HALMAC_H2C_RETURN_CODE;
90 typedef enum _HALMAC_SCAN_REPORT_CODE {
91 HALMAC_SCAN_REPORT_DONE = 0x00,
92 HALMAC_SCAN_REPORT_ERR_PHYDM = 0x01, /* PHYDM API return fail */
93 HALMAC_SCAN_REPORT_ERR_ID = 0x02, /* Invalid ActionID */
94 HALMAC_SCAN_REPORT_ERR_TX = 0x03, /* Tx RsvdPage fail */
96 HALMAC_SCAN_REPORT_UNDEFINE = 0x7FFFFFFF,
97 } HALMAC_SCAN_REPORT_CODE;