summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorspuligil <spuligil@codeaurora.org>2019-03-13 18:00:40 -0700
committerspuligil <spuligil@codeaurora.org>2019-03-13 18:00:40 -0700
commitb7140cc9824d391e60ec2d9dbf1829534d9fe1d9 (patch)
tree30ac9102c0c55a86087963b66083402cc5d2918d
parentefb8fe31566fc41a6f381bd92f78462952e432ef (diff)
fw-api: CL 6699888 - update fw common interface files
Change-Id: I68501b335fc1c3d635be08432546a8c61de5e1e7 WMI: add rogue AP CONFIG_CMD and INFO_EVENT msg defs CRs-Fixed: 2262693
-rwxr-xr-xfw/wmi_services.h1
-rwxr-xr-xfw/wmi_tlv_defs.h17
-rwxr-xr-xfw/wmi_unified.h50
-rwxr-xr-xfw/wmi_version.h2
4 files changed, 67 insertions, 3 deletions
diff --git a/fw/wmi_services.h b/fw/wmi_services.h
index 952772126a6e..9b9b73d0012b 100755
--- a/fw/wmi_services.h
+++ b/fw/wmi_services.h
@@ -382,6 +382,7 @@ typedef enum {
WMI_SERVICE_VOW_ENABLE=197, /* FW supports a set of features to optimize VoW performance */
WMI_SERVICE_CFR_CAPTURE_IND_EVT_TYPE_1 = 198, /* support WMI_PEER_CFR_CAPTURE_EVENT msg */
WMI_SERVICE_BROADCAST_TWT = 199, /* support of Broadcast TWT (Target Wake Time) for STA/AP */
+ WMI_SERVICE_RAP_DETECTION_SUPPORT = 200, /* indicate FW supports rogue AP detection */
/******* ADD NEW SERVICES HERE *******/
diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h
index 2beca5aef1d6..dc248d93be39 100755
--- a/fw/wmi_tlv_defs.h
+++ b/fw/wmi_tlv_defs.h
@@ -967,6 +967,9 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_key_material_ext,
WMITLV_TAG_STRUC_wmi_peer_cfr_capture_event_fixed_param,
WMITLV_TAG_STRUC_wmi_cold_boot_cal_data_fixed_param,
+ WMITLV_TAG_STRUC_wmi_pdev_set_rap_config_fixed_param,
+ WMITLV_TAG_STRUC_wmi_pdev_set_rap_config_on_sta_ps_tlv_param,
+ WMITLV_TAG_STRUC_wmi_pdev_rap_info_event_fixed_param,
} WMITLV_TAG_ID;
/*
@@ -1360,6 +1363,7 @@ typedef enum {
OP(WMI_ROAM_BSS_LOAD_CONFIG_CMDID) \
OP(WMI_VDEV_GET_MWS_COEX_INFO_CMDID) \
OP(WMI_REQUEST_WLM_STATS_CMDID) \
+ OP(WMI_PDEV_SET_RAP_CONFIG_CMDID) \
/* add new CMD_LIST elements above this line */
@@ -1584,6 +1588,7 @@ typedef enum {
OP(WMI_WLM_STATS_EVENTID) \
OP(WMI_PEER_CFR_CAPTURE_EVENTID) \
OP(WMI_PDEV_COLD_BOOT_CAL_DATA_EVENTID) \
+ OP(WMI_PDEV_RAP_INFO_EVENTID) \
/* add new EVT_LIST elements above this line */
@@ -3917,6 +3922,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_HPCS_PULSE_START_CMDID);
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_PKTLOG_FILTER_CMDID);
+/* PDev Set Rogue AP Config cmd */
+#define WMITLV_TABLE_WMI_PDEV_SET_RAP_CONFIG_CMDID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_rap_config_fixed_param, wmi_pdev_set_rap_config_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_set_rap_config_on_sta_ps_tlv_param, rap_param, WMITLV_SIZE_VAR)
+WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_RAP_CONFIG_CMDID);
+
+
/************************** TLV definitions of WMI events *******************************/
/* Service Ready event */
@@ -5294,6 +5306,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_CFR_CAPTURE_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR)
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_COLD_BOOT_CAL_DATA_EVENTID);
+/* rogue ap info event */
+#define WMITLV_TABLE_WMI_PDEV_RAP_INFO_EVENTID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_rap_info_event_fixed_param, wmi_pdev_rap_info_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_RAP_INFO_EVENTID);
+
#ifdef __cplusplus
}
#endif
diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h
index d5b13be8f5ce..99d5391850d5 100755
--- a/fw/wmi_unified.h
+++ b/fw/wmi_unified.h
@@ -405,6 +405,8 @@ typedef enum {
WMI_PDEV_HE_TB_ACTION_FRM_CMDID,
/** filter packet log based on MAC address */
WMI_PDEV_PKTLOG_FILTER_CMDID,
+ /** wmi command for setting rogue ap configuration */
+ WMI_PDEV_SET_RAP_CONFIG_CMDID,
/* VDEV (virtual device) specific commands */
/** vdev create */
@@ -1307,6 +1309,9 @@ typedef enum {
/* Event to send cold boot calibration data */
WMI_PDEV_COLD_BOOT_CAL_DATA_EVENTID,
+ /* Event to report a rogue ap info that is detected in fw */
+ WMI_PDEV_RAP_INFO_EVENTID,
+
/* VDEV specific events */
/** VDEV started event in response to VDEV_START request */
@@ -6097,8 +6102,34 @@ typedef struct {
*/
} wmi_pdev_pktlog_filter_cmd_fixed_param;
+typedef enum {
+ WMI_ROGUE_AP_ON_STA_PS = 1, /* rogue ap on sta ps module */
+} WMI_ROGUE_AP_TYPE;
+typedef struct {
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_rap_config_fixed_param */
+ /** pdev_id for identifying the MAC, the default value is WMI_PDEV_ID_SOC
+ * See macros starting with WMI_PDEV_ID_ for values.
+ */
+ A_UINT32 pdev_id;
+ /** rogue ap type, see WMI_ROGUE_AP_TYPE */
+ A_UINT32 type;
+ /** Enable detection of rogue ap in the ps module
+ *
+ * 0 -> disabled
+ * 1 -> enabled (default)
+ */
+ A_UINT32 sta_ps_detection_enabled;
+/* This TLV is followed by rap_param for each rogue ap:
+ * wmi_pdev_set_rap_config_on_sta_ps_tlv_param rap_param[];
+ */
+} wmi_pdev_set_rap_config_fixed_param;
+typedef struct {
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_set_rap_config_on_sta_ps_tlv_param */
+ /** bssid of rogue ap */
+ wmi_mac_addr bssid;
+} wmi_pdev_set_rap_config_on_sta_ps_tlv_param;
typedef struct {
A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_mib_stats_enable_cmd_fixed_param */
@@ -11173,8 +11204,11 @@ typedef struct {
A_UINT32 vdev_id;
} wmi_peer_add_wds_entry_cmd_fixed_param;
-#define WMI_CHAN_InFO_START_RESP 0
-#define WMI_CHAN_InFO_END_RESP 1
+#define WMI_CHAN_INFO_START_RESP 0
+#define WMI_CHAN_INFO_END_RESP 1
+/* deprecated but maintained as aliases: old names containing typo */
+#define WMI_CHAN_InFO_START_RESP WMI_CHAN_INFO_START_RESP
+#define WMI_CHAN_InFO_END_RESP WMI_CHAN_INFO_END_RESP
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_peer_remove_wds_entry_cmd_fixed_param */
@@ -23552,6 +23586,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
WMI_RETURN_STRING(WMI_ROAM_BSS_LOAD_CONFIG_CMDID);
WMI_RETURN_STRING(WMI_VDEV_GET_MWS_COEX_INFO_CMDID);
WMI_RETURN_STRING(WMI_REQUEST_WLM_STATS_CMDID);
+ WMI_RETURN_STRING(WMI_PDEV_SET_RAP_CONFIG_CMDID);
}
return "Invalid WMI cmd";
@@ -26040,6 +26075,17 @@ typedef struct {
*/
} wmi_cold_boot_cal_data_fixed_param;
+typedef struct {
+ A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_rap_info_event_fixed_param */
+ /** pdev_id for identifying the MAC, the default value is WMI_PDEV_ID_SOC
+ * See macros starting with WMI_PDEV_ID_ for values.
+ */
+ A_UINT32 pdev_id;
+ A_UINT32 type; /** type of the rogue ap, see WMI_ROGUE_AP_TYPE */
+ wmi_mac_addr bssid; /** bssid of the rogue ap */
+} wmi_pdev_rap_info_event_fixed_param;
+
+
/* ADD NEW DEFS HERE */
diff --git a/fw/wmi_version.h b/fw/wmi_version.h
index 2294e20e59a5..13e1a7cdff3f 100755
--- a/fw/wmi_version.h
+++ b/fw/wmi_version.h
@@ -36,7 +36,7 @@
#define __WMI_VER_MINOR_ 0
/** WMI revision number has to be incremented when there is a
* change that may or may not break compatibility. */
-#define __WMI_REVISION_ 638
+#define __WMI_REVISION_ 639
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work