|
@@ -581,6 +581,8 @@ typedef enum {
|
|
|
WMI_VDEV_UPDATE_MAC_ADDR_CMDID,
|
|
|
/* WMI cmd to perform operation on multiple peer based on subcmd type */
|
|
|
WMI_VDEV_MULTIPLE_PEER_GROUP_CMDID,
|
|
|
+ /** Set LTF key seed which will be further used to derive LTF keys */
|
|
|
+ WMI_VDEV_SET_LTF_KEY_SEED_CMDID,
|
|
|
|
|
|
/* peer specific commands */
|
|
|
|
|
@@ -944,6 +946,10 @@ typedef enum {
|
|
|
WMI_RTT_MEASREQ_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_RTT),
|
|
|
/** request to report a tsf measurement */
|
|
|
WMI_RTT_TSF_CMDID,
|
|
|
+ /** RTT 11az PASN authentication status */
|
|
|
+ WMI_RTT_PASN_AUTH_STATUS_CMD,
|
|
|
+ /** RTT 11az PASN deauthentication cmd */
|
|
|
+ WMI_RTT_PASN_DEAUTH_CMD,
|
|
|
|
|
|
/** spectral scan command */
|
|
|
/** configure spectral scan */
|
|
@@ -1844,6 +1850,10 @@ typedef enum {
|
|
|
WMI_TSF_MEASUREMENT_REPORT_EVENTID,
|
|
|
/** RTT error report */
|
|
|
WMI_RTT_ERROR_REPORT_EVENTID,
|
|
|
+ /** RTT 11az PASN peer create request */
|
|
|
+ WMI_RTT_PASN_PEER_CREATE_REQ_EVENTID,
|
|
|
+ /** RTT 11az PASN peer delete event */
|
|
|
+ WMI_RTT_PASN_PEER_DELETE_EVENTID,
|
|
|
|
|
|
/*STATS specific events*/
|
|
|
/** txrx stats event requested by host */
|
|
@@ -12494,6 +12504,22 @@ typedef struct {
|
|
|
*/
|
|
|
} wmi_vdev_install_key_cmd_fixed_param;
|
|
|
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_set_ltf_key_seed_cmd_fixed_param */
|
|
|
+ /** unique id identifying the VDEV, generated by the caller */
|
|
|
+ A_UINT32 vdev_id;
|
|
|
+ /** MAC address used for deriving */
|
|
|
+ wmi_mac_addr peer_macaddr;
|
|
|
+ /** authentication mode */
|
|
|
+ A_UINT32 rsn_authmode;
|
|
|
+ /** LTF key seed length */
|
|
|
+ A_UINT32 key_seed_len;
|
|
|
+/*
|
|
|
+ * Following this struct are this TLV.
|
|
|
+ * A_UINT8 key_seed[key_seed_len]; <-- actual LTF key seed;
|
|
|
+ */
|
|
|
+} wmi_vdev_set_ltf_key_seed_cmd_fixed_param;
|
|
|
+
|
|
|
/** Preamble types to be used with VDEV fixed rate configuration */
|
|
|
typedef enum {
|
|
|
WMI_RATE_PREAMBLE_OFDM,
|
|
@@ -14951,6 +14977,7 @@ enum wmi_peer_type {
|
|
|
WMI_PEER_TYPE_OCB = 3, /* Peer is a OCB Peer */
|
|
|
WMI_PEER_TYPE_NAN_DATA = 4, /* Peer is NAN DATA */
|
|
|
WMI_PEER_TYPE_TRANS_BSS = 5, /* For creating BSS peer when connecting with non-transmit AP */
|
|
|
+ WMI_PEER_TYPE_PASN = 6, /* Peer is used for Pre-Association Security Negotiation */
|
|
|
WMI_PEER_TYPE_HOST_MAX = 127, /* Host <-> Target Peer type is assigned up to 127 */
|
|
|
/* Reserved from 128 - 255 for target internal use.*/
|
|
|
WMI_PEER_TYPE_ROAMOFFLOAD_TEMP = 128, /* Temporarily created during offload roam */
|
|
@@ -18044,6 +18071,7 @@ typedef enum event_type_e {
|
|
|
WOW_TWT_EVENT, /* 32 + 10 */
|
|
|
WOW_DCS_INTERFERENCE_DET, /* 32 + 11 */
|
|
|
WOW_ROAM_STATS_EVENT, /* 32 + 12 */
|
|
|
+ WOW_RTT_11AZ_EVENT, /* 32 + 13 */
|
|
|
} WOW_WAKE_EVENT_TYPE;
|
|
|
|
|
|
typedef enum wake_reason_e {
|
|
@@ -18121,6 +18149,7 @@ typedef enum wake_reason_e {
|
|
|
WOW_REASON_DCS_INT_DET,
|
|
|
WOW_REASON_ROAM_STATS,
|
|
|
WOW_REASON_MDNS_WAKEUP,
|
|
|
+ WOW_REASON_RTT_11AZ,
|
|
|
|
|
|
/* add new WOW_REASON_ defs before this line */
|
|
|
WOW_REASON_MAX,
|
|
@@ -30496,6 +30525,9 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
|
|
|
WMI_RETURN_STRING(WMI_VDEV_UPDATE_MAC_ADDR_CMDID);
|
|
|
WMI_RETURN_STRING(WMI_SOC_TQM_RESET_ENABLE_DISABLE_CMDID);
|
|
|
WMI_RETURN_STRING(WMI_VDEV_MULTIPLE_PEER_GROUP_CMDID);
|
|
|
+ WMI_RETURN_STRING(WMI_VDEV_SET_LTF_KEY_SEED_CMDID);
|
|
|
+ WMI_RETURN_STRING(WMI_RTT_PASN_AUTH_STATUS_CMD);
|
|
|
+ WMI_RETURN_STRING(WMI_RTT_PASN_DEAUTH_CMD);
|
|
|
}
|
|
|
|
|
|
return (A_UINT8 *) "Invalid WMI cmd";
|
|
@@ -37283,6 +37315,92 @@ typedef struct {
|
|
|
*/
|
|
|
} wmi_vdev_multiple_peer_group_cmd_fixed_param;
|
|
|
|
|
|
+#define WMI_RTT_PASN_PEER_CREATE_SECURITY_MODE_GET(flag) WMI_GET_BITS(flag, 0, 2)
|
|
|
+#define WMI_RTT_PASN_PEER_CREATE_SECURITY_MODE_SET(flag,val) WMI_SET_BITS(flag, 0, 2, val)
|
|
|
+#define WMI_RTT_PASN_PEER_CREATE_FORCE_SELF_MAC_USE_GET(flag) WMI_GET_BITS(flag, 2, 1)
|
|
|
+#define WMI_RTT_PASN_PEER_CREATE_FORCE_SELF_MAC_USE_SET(flag,val) WMI_SET_BITS(flag, 2, 1, val)
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_peer_create_req_event_fixed_param */
|
|
|
+ /** unique id identifying the VDEV, generated by the caller */
|
|
|
+ A_UINT32 vdev_id;
|
|
|
+/**
|
|
|
+ * The following TLV will follow this fixed_param TLV:
|
|
|
+ *
|
|
|
+ * wmi_rtt_pasn_peer_create_req_param rtt_pasn_peer_param[]
|
|
|
+ */
|
|
|
+} wmi_rtt_pasn_peer_create_req_event_fixed_param;
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_peer_create_req_param */
|
|
|
+
|
|
|
+ wmi_mac_addr self_mac_addr; /* self MAC address (can be vdev address or random mac address) */
|
|
|
+ wmi_mac_addr dest_mac_addr; /* MAC address of the peer */
|
|
|
+
|
|
|
+ A_UINT32 control_flag; /* some control information here */
|
|
|
+ /*********************************************************************************
|
|
|
+ * Bits 1:0: Security mode, check wmi_rtt_security_mode for detail.
|
|
|
+ * Host driver to request supplicant to derive and install PASN keys if security mode is set.
|
|
|
+ * Bit 2: Force_self_mac_addr_use, To indicate supplicant/hostapd to use this self mac addr to (re)generate PASN keys,
|
|
|
+ * and flush old cache( if it exists) for dest_mac_addr with old self_mac_addr.
|
|
|
+ * Bits 31:3: Reserved
|
|
|
+ */
|
|
|
+} wmi_rtt_pasn_peer_create_req_param;
|
|
|
+
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_auth_status_cmd_fixed_param */
|
|
|
+/**
|
|
|
+ * The following TLV will follow this fixed_param TLV:
|
|
|
+ *
|
|
|
+ * wmi_rtt_pasn_auth_status_param pasn_auth_status_param[]
|
|
|
+ */
|
|
|
+} wmi_rtt_pasn_auth_status_cmd_fixed_param;
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_auth_status_param */
|
|
|
+ /* MAC address of the peer */
|
|
|
+ wmi_mac_addr peer_mac_addr;
|
|
|
+ /* Return status. 0 for success, non-zero otherwise */
|
|
|
+ A_UINT32 status;
|
|
|
+} wmi_rtt_pasn_auth_status_param;
|
|
|
+
|
|
|
+
|
|
|
+#define WMI_RTT_PASN_PEER_DELETE_DELETED_BIT_GET(flag) WMI_GET_BITS(flag, 0, 1)
|
|
|
+#define WMI_RTT_PASN_PEER_DELETE_DELETED_BIT_SET(flag,val) WMI_SET_BITS(flag, 0, 1, val)
|
|
|
+#define WMI_RTT_PASN_PEER_DELETE_FLUSH_KEYS_GET(flag) WMI_GET_BITS(flag, 1, 1)
|
|
|
+#define WMI_RTT_PASN_PEER_DELETE_FLUSH_KEYS_SET(flag,val) WMI_SET_BITS(flag, 1, 1, val)
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_peer_delete_event_fixed_param */
|
|
|
+ /** unique id identifying the VDEV, generated by the caller */
|
|
|
+ A_UINT32 vdev_id;
|
|
|
+/**
|
|
|
+ * The following TLV will follow this fixed_param TLV:
|
|
|
+ *
|
|
|
+ * wmi_rtt_pasn_peer_delete_param rtt_pasn_peer_param[]
|
|
|
+ */
|
|
|
+} wmi_rtt_pasn_peer_delete_event_fixed_param;
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_peer_delete_param */
|
|
|
+ /* MAC address of the peer */
|
|
|
+ wmi_mac_addr peer_mac_addr;
|
|
|
+ /* some control information here */
|
|
|
+ A_UINT32 control_flag;
|
|
|
+/**********************************************************************************
|
|
|
+ * Bit 0: peer_deleted (This is set to 1 if peer has already been deleted by the target)
|
|
|
+ * Bit 1: flush keys (This is set to 1 if target wants the cached PASN keys to be flushed)
|
|
|
+ * Bits 31:2: reserved
|
|
|
+ */
|
|
|
+} wmi_rtt_pasn_peer_delete_param;
|
|
|
+
|
|
|
+typedef struct {
|
|
|
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_rtt_pasn_deauth_cmd_fixed_param */
|
|
|
+ /* MAC address of the peer */
|
|
|
+ wmi_mac_addr peer_mac_addr;
|
|
|
+} wmi_rtt_pasn_deauth_cmd_fixed_param;
|
|
|
+
|
|
|
|
|
|
|
|
|
/* ADD NEW DEFS HERE */
|