[wifi 3.0] add firmware common files
add firmware common files into separated project. Included firmware common htt and wmi. Included hardware common header files for napier and hawkeye Change-Id: I8724057eb9aa21f7614231d1943177e780ed16b1 CRs-fixed: 1074308
Este cometimento está contido em:
134
fw/wmi.h
Ficheiro executável → Ficheiro normal
134
fw/wmi.h
Ficheiro executável → Ficheiro normal
@@ -50,7 +50,6 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
#define HTC_PROTOCOL_VERSION 0x0002
|
||||
|
||||
#define WMI_PROTOCOL_VERSION 0x0002
|
||||
@@ -58,37 +57,38 @@ extern "C" {
|
||||
#define WMI_MODE_MAX 8
|
||||
#define WMI_MAX_RATE_MASK 6
|
||||
|
||||
|
||||
PREPACK struct host_app_area_s {
|
||||
A_UINT32 wmi_protocol_ver;
|
||||
A_UINT32 wmi_protocol_ver;
|
||||
} POSTPACK;
|
||||
|
||||
|
||||
#undef MS
|
||||
#define MS(_v, _f) (((_v) & _f##_MASK) >> _f##_LSB)
|
||||
#define MS(_v, _f) (((_v) & _f ## _MASK) >> _f ## _LSB)
|
||||
#undef SM
|
||||
#define SM(_v, _f) (((_v) << _f##_LSB) & _f##_MASK)
|
||||
#define SM(_v, _f) (((_v) << _f ## _LSB) & _f ## _MASK)
|
||||
#undef WO
|
||||
#define WO(_f) ((_f##_OFFSET) >> 2)
|
||||
#define WO(_f) ((_f ## _OFFSET) >> 2)
|
||||
|
||||
#undef GET_FIELD
|
||||
#define GET_FIELD(_addr, _f) MS(*((A_UINT32 *)(_addr) + WO(_f)), _f)
|
||||
#undef SET_FIELD
|
||||
#define SET_FIELD(_addr, _f, _val) \
|
||||
(*((A_UINT32 *)(_addr) + WO(_f)) = \
|
||||
(*((A_UINT32 *)(_addr) + WO(_f)) & ~_f##_MASK) | SM(_val, _f))
|
||||
(*((A_UINT32 *)(_addr) + WO(_f)) = \
|
||||
(*((A_UINT32 *)(_addr) + WO(_f)) & ~_f ## _MASK) | SM(_val, _f))
|
||||
|
||||
#define WMI_GET_FIELD(_msg_buf, _msg_type, _f) \
|
||||
GET_FIELD(_msg_buf, _msg_type ## _ ## _f)
|
||||
GET_FIELD(_msg_buf, _msg_type ## _ ## _f)
|
||||
|
||||
#define WMI_SET_FIELD(_msg_buf, _msg_type, _f, _val) \
|
||||
SET_FIELD(_msg_buf, _msg_type ## _ ## _f, _val)
|
||||
SET_FIELD(_msg_buf, _msg_type ## _ ## _f, _val)
|
||||
|
||||
#define WMI_EP_APASS WMI_EP_APSS /* TYPO: leave incorrect name as an alias for the correct name */
|
||||
#define WMI_EP_APSS 0x0 /* WLAN driver running on apps processor sub-system */
|
||||
/* TYPO: leave incorrect name as an alias for the correct name */
|
||||
#define WMI_EP_APASS WMI_EP_APSS
|
||||
/* WLAN driver running on apps processor sub-system */
|
||||
#define WMI_EP_APSS 0x0
|
||||
#define WMI_EP_LPASS 0x1
|
||||
#define WMI_EP_SENSOR 0x2
|
||||
#define WMI_EP_NANOHUB 0x3 /* WLAN driver running on NANO Hub */
|
||||
/* WLAN driver running on NANO Hub */
|
||||
#define WMI_EP_NANOHUB 0x3
|
||||
#define WMI_EP_MODEM 0x4
|
||||
#define WMI_EP_LOCATION 0x5
|
||||
|
||||
@@ -96,37 +96,35 @@ PREPACK struct host_app_area_s {
|
||||
* Control Path
|
||||
*/
|
||||
typedef PREPACK struct {
|
||||
A_UINT32 commandId : 24,
|
||||
reserved : 2, /* used for WMI endpoint ID */
|
||||
plt_priv : 6; /* platform private */
|
||||
} POSTPACK WMI_CMD_HDR; /* used for commands and events */
|
||||
A_UINT32 commandId : 24, reserved : 2, /* used for WMI endpoint ID */
|
||||
plt_priv : 6; /* platform private */
|
||||
} POSTPACK WMI_CMD_HDR; /* used for commands and events */
|
||||
|
||||
#define WMI_CMD_HDR_COMMANDID_LSB 0
|
||||
#define WMI_CMD_HDR_COMMANDID_MASK 0x00ffffff
|
||||
#define WMI_CMD_HDR_COMMANDID_OFFSET 0x00000000
|
||||
#define WMI_CMD_HDR_WMI_ENDPOINTID_MASK 0x03000000
|
||||
#define WMI_CMD_HDR_WMI_ENDPOINTID_OFFSET 24
|
||||
#define WMI_CMD_HDR_PLT_PRIV_LSB 24
|
||||
#define WMI_CMD_HDR_PLT_PRIV_MASK 0xff000000
|
||||
#define WMI_CMD_HDR_PLT_PRIV_OFFSET 0x00000000
|
||||
#define WMI_CMD_HDR_WMI_ENDPOINTID_MASK 0x03000000
|
||||
#define WMI_CMD_HDR_WMI_ENDPOINTID_OFFSET 24
|
||||
#define WMI_CMD_HDR_PLT_PRIV_LSB 24
|
||||
#define WMI_CMD_HDR_PLT_PRIV_MASK 0xff000000
|
||||
#define WMI_CMD_HDR_PLT_PRIV_OFFSET 0x00000000
|
||||
|
||||
/*
|
||||
* List of Commnands
|
||||
*/
|
||||
typedef enum {
|
||||
WMI_EXTENSION_CMDID, //used in wmi_svc.c /* Non-wireless extensions */
|
||||
WMI_IGNORE_CMDID, //used in wlan_wmi.c
|
||||
WMI_EXTENSION_CMDID, /* used in wmi_svc.c / * Non-wireless extensions * / */
|
||||
WMI_IGNORE_CMDID, /* used in wlan_wmi.c */
|
||||
} WMI_COMMAND_ID;
|
||||
|
||||
|
||||
typedef enum {
|
||||
NONE_CRYPT = 0x01,
|
||||
WEP_CRYPT = 0x02,
|
||||
TKIP_CRYPT = 0x04,
|
||||
AES_CRYPT = 0x08,
|
||||
NONE_CRYPT = 0x01,
|
||||
WEP_CRYPT = 0x02,
|
||||
TKIP_CRYPT = 0x04,
|
||||
AES_CRYPT = 0x08,
|
||||
#ifdef WAPI_ENABLE
|
||||
WAPI_CRYPT = 0x10,
|
||||
#endif /*WAPI_ENABLE*/
|
||||
WAPI_CRYPT = 0x10,
|
||||
#endif /*WAPI_ENABLE */
|
||||
} CRYPTO_TYPE;
|
||||
|
||||
#define WMI_MAX_SSID_LEN 32
|
||||
@@ -136,63 +134,63 @@ typedef enum {
|
||||
*/
|
||||
#define WMI_PMK_LEN 32
|
||||
|
||||
|
||||
/*
|
||||
* WMI_ADD_CIPHER_KEY_CMDID
|
||||
*/
|
||||
typedef enum {
|
||||
PAIRWISE_USAGE = 0x00,
|
||||
GROUP_USAGE = 0x01,
|
||||
TX_USAGE = 0x02, /* default Tx Key - Static WEP only */
|
||||
PAIRWISE_USAGE = 0x00,
|
||||
GROUP_USAGE = 0x01,
|
||||
TX_USAGE = 0x02, /* default Tx Key - Static WEP only */
|
||||
} KEY_USAGE;
|
||||
|
||||
/*
|
||||
* List of Events (target to host)
|
||||
*/
|
||||
typedef enum {
|
||||
WMI_EXTENSION_EVENTID //wmi_profhook.c and umac_wmi_events.c
|
||||
WMI_EXTENSION_EVENTID, /* wmi_profhook.c and umac_wmi_events.c */
|
||||
} WMI_EVENT_ID;
|
||||
|
||||
typedef enum {
|
||||
WMI_11A_CAPABILITY = 1,
|
||||
WMI_11G_CAPABILITY = 2,
|
||||
WMI_11AG_CAPABILITY = 3,
|
||||
WMI_11NA_CAPABILITY = 4,
|
||||
WMI_11NG_CAPABILITY = 5,
|
||||
WMI_11NAG_CAPABILITY = 6,
|
||||
WMI_11AC_CAPABILITY = 7,
|
||||
WMI_11AX_CAPABILITY = 8,
|
||||
// END CAPABILITY
|
||||
WMI_11N_CAPABILITY_OFFSET = (WMI_11NA_CAPABILITY - WMI_11A_CAPABILITY),
|
||||
WMI_11A_CAPABILITY = 1,
|
||||
WMI_11G_CAPABILITY = 2,
|
||||
WMI_11AG_CAPABILITY = 3,
|
||||
WMI_11NA_CAPABILITY = 4,
|
||||
WMI_11NG_CAPABILITY = 5,
|
||||
WMI_11NAG_CAPABILITY = 6,
|
||||
WMI_11AC_CAPABILITY = 7,
|
||||
WMI_11AX_CAPABILITY = 8,
|
||||
/* END CAPABILITY */
|
||||
WMI_11N_CAPABILITY_OFFSET =
|
||||
(WMI_11NA_CAPABILITY - WMI_11A_CAPABILITY),
|
||||
} WMI_PHY_CAPABILITY;
|
||||
|
||||
|
||||
/* Deprectated, need clean up */
|
||||
#define WMI_MAX_RX_META_SZ (12)
|
||||
|
||||
typedef PREPACK struct {
|
||||
A_INT8 rssi;
|
||||
A_UINT8 info; /* usage of 'info' field(8-bit):
|
||||
* b1:b0 - WMI_MSG_TYPE
|
||||
* b4:b3:b2 - UP(tid)
|
||||
* b5 - Used in AP mode. More-data in tx dir, PS in rx.
|
||||
* b7:b6 - Dot3 header(0),
|
||||
* Dot11 Header(1),
|
||||
* ACL data(2)
|
||||
*/
|
||||
A_INT8 rssi;
|
||||
A_UINT8 info; /* usage of 'info' field(8-bit):
|
||||
* b1:b0 - WMI_MSG_TYPE
|
||||
* b4:b3:b2 - UP(tid)
|
||||
* b5 - Used in AP mode. More-data in tx dir, PS in rx.
|
||||
* b7:b6 - Dot3 header(0),
|
||||
* Dot11 Header(1),
|
||||
* ACL data(2)
|
||||
*/
|
||||
|
||||
A_UINT16 info2; /* usage of 'info2' field(16-bit):
|
||||
* b11:b0 - seq_no
|
||||
* b12 - A-MSDU?
|
||||
* b15:b13 - META_DATA_VERSION 0 - 7
|
||||
*/
|
||||
A_UINT16 info3; /* b3:b2:b1:b0 - device id
|
||||
* b4 - Used in AP mode. uAPSD trigger in rx, EOSP in tx
|
||||
* b7:b5 - unused?
|
||||
* b15:b8 - pad before data start(irrespective of meta version)
|
||||
*/
|
||||
A_UINT16 info2; /* usage of 'info2' field(16-bit):
|
||||
* b11:b0 - seq_no
|
||||
* b12 - A-MSDU?
|
||||
* b15:b13 - META_DATA_VERSION 0 - 7
|
||||
*/
|
||||
A_UINT16 info3; /* b3:b2:b1:b0 - device id
|
||||
* b4 - Used in AP mode. uAPSD trigger in rx, EOSP in tx
|
||||
* b7:b5 - unused?
|
||||
* b15:b8 - pad before data start(irrespective of meta version)
|
||||
*/
|
||||
} POSTPACK WMI_DATA_HDR;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _WMI_H_ */
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador