Commit 661d157a authored by c_rrajiv's avatar c_rrajiv Committed by Madan Mohan Koyyalamudi
Browse files

qcacld-2.0: CL 1391375 - update fw common interface files

Add WMI_MAWC defs.

CRs-Fixed: 865207
Change-Id: I0aa757006a20d613f1ae54b5006109562db52849
parent a1b00e77
......@@ -93,6 +93,9 @@ typedef enum {
WLAN_MODULE_CSS, /* 0x3a */
WLAN_MODULE_PPS, /* 0x3b */
WLAN_MODULE_SCAN_CH_PREDICT, /* 0x3c */
WLAN_MODULE_MAWC,
WLAN_MODULE_CMC_QMIC, /* 0x3e */
WLAN_MODULE_ID_MAX,
WLAN_MODULE_ID_INVALID = WLAN_MODULE_ID_MAX,
} WLAN_MODULE_ID;
......
......@@ -93,6 +93,7 @@ PREPACK struct host_app_area_s {
#define WMI_EP_APASS 0x0
#define WMI_EP_LPASS 0x1
#define WMI_EP_SENSOR 0x2
/*
* Control Path
......
......@@ -123,6 +123,7 @@ typedef enum {
WMI_SERVICE_MGMT_TX_HTT, /* Mgmt Tx via HTT interface */
WMI_SERVICE_MGMT_TX_WMI, /* Mgmt Tx via WMI interface */
WMI_SERVICE_EXT_MSG, /* WMI_SERVICE_READY_EXT msg follows */
WMI_SERVICE_MAWC, /* Motion Aided WiFi Connectivity (MAWC)*/
WMI_MAX_SERVICE=128 /* max service */
} WMI_SERVICE;
......
......@@ -590,6 +590,11 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_lro_info_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_roam_earlystop_rssi_thres_param,
WMITLV_TAG_STRUC_wmi_service_ready_ext_event_fixed_param,
WMITLV_TAG_STRUC_wmi_mawc_sensor_report_ind_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_mawc_enable_sensor_event_fixed_param,
WMITLV_TAG_STRUC_wmi_roam_configure_mawc_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_nlo_configure_mawc_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_extscan_configure_mawc_cmd_fixed_param,
} WMITLV_TAG_ID;
/*
......@@ -819,7 +824,12 @@ typedef enum {
OP(WMI_SAP_SET_BLACKLIST_PARAM_CMDID) \
OP(WMI_MGMT_TX_SEND_CMDID) \
OP(WMI_SOC_SET_ANTENNA_MODE_CMDID) \
OP(WMI_WOW_UDP_SVC_OFLD_CMDID)
OP(WMI_WOW_UDP_SVC_OFLD_CMDID) \
OP(WMI_LRO_CONFIG_CMDID) \
OP(WMI_MAWC_SENSOR_REPORT_IND_CMDID) \
OP(WMI_ROAM_CONFIGURE_MAWC_CMDID) \
OP(WMI_NLO_CONFIGURE_MAWC_CMDID) \
OP(WMI_EXTSCAN_CONFIGURE_MAWC_CMDID)
/*
* IMPORTANT: Please add _ALL_ WMI Events Here.
* Otherwise, these WMI TLV Functions will be process them.
......@@ -931,7 +941,8 @@ typedef enum {
OP(WMI_SOC_HW_MODE_TRANSITION_EVENTID) \
OP(WMI_SOC_SET_DUAL_MAC_CONFIG_RESP_EVENTID) \
OP(WMI_DIAG_EVENT_LOG_SUPPORTED_EVENTID) \
OP(WMI_MGMT_TX_COMPLETION_EVENTID)
OP(WMI_MGMT_TX_COMPLETION_EVENTID) \
OP(WMI_MAWC_ENABLE_SENSOR_EVENTID)
/* TLV definitions of WMI commands */
......@@ -2309,6 +2320,26 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SOC_SET_ANTENNA_MODE_CMDID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_lro_info_cmd_fixed_param, wmi_lro_info_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_LRO_CONFIG_CMDID);
/* MAWC sensor report indication cmd */
#define WMITLV_TABLE_WMI_MAWC_SENSOR_REPORT_IND_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mawc_sensor_report_ind_cmd_fixed_param, wmi_mawc_sensor_report_ind_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_MAWC_SENSOR_REPORT_IND_CMDID);
/* Roam configure MAWC cmd */
#define WMITLV_TABLE_WMI_ROAM_CONFIGURE_MAWC_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_configure_mawc_cmd_fixed_param, wmi_roam_configure_mawc_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_CONFIGURE_MAWC_CMDID);
/* NLO configure MAWC cmd */
#define WMITLV_TABLE_WMI_NLO_CONFIGURE_MAWC_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_nlo_configure_mawc_cmd_fixed_param, wmi_nlo_configure_mawc_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_NLO_CONFIGURE_MAWC_CMDID);
/* Extscan configure MAWC cmd */
#define WMITLV_TABLE_WMI_EXTSCAN_CONFIGURE_MAWC_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_extscan_configure_mawc_cmd_fixed_param, wmi_extscan_configure_mawc_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_EXTSCAN_CONFIGURE_MAWC_CMDID);
/************************** TLV definitions of WMI events *******************************/
/* Service Ready event */
......@@ -2911,6 +2942,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PACKET_FILTER_CONFIG_CMDID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_packet_filter_enable_fixed_param, WMI_PACKET_FILTER_ENABLE_CMD_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_PACKET_FILTER_ENABLE_CMDID);
/* MAWC enable/disable sensor event */
#define WMITLV_TABLE_WMI_MAWC_ENABLE_SENSOR_EVENTID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mawc_enable_sensor_event_fixed_param, wmi_mawc_enable_sensor_event_fixed_param, fixed_param, WMITLV_SIZE_FIX)
WMITLV_CREATE_PARAM_STRUC(WMI_MAWC_ENABLE_SENSOR_EVENTID);
#ifdef __cplusplus
}
#endif
......
......@@ -230,6 +230,7 @@ typedef enum {
WMI_GRP_OCB,
WMI_GRP_SOC,
WMI_GRP_PKT_FILTER,
WMI_GRP_MAWC,
} WMI_GRP_ID;
#define WMI_CMD_GRP_START_ID(grp_id) (((grp_id) << 12) | 0x1)
......@@ -448,6 +449,8 @@ typedef enum {
WMI_ROAM_FILTER_CMDID,
/** set gateway ip, mac and retries for subnet change detection */
WMI_ROAM_SUBNET_CHANGE_CONFIG_CMDID,
/** configure thresholds for MAWC */
WMI_ROAM_CONFIGURE_MAWC_CMDID,
/** offload scan specific commands */
/** set offload scan AP profile */
......@@ -598,6 +601,8 @@ typedef enum {
/** Passpoint list config */
WMI_PASSPOINT_LIST_CONFIG_CMDID,
/** configure supprssing parameters for MAWC */
WMI_NLO_CONFIGURE_MAWC_CMDID,
/* GTK offload Specific WMI commands*/
WMI_GTK_OFFLOAD_CMDID=WMI_CMD_GRP_START_ID(WMI_GRP_GTK_OFL),
......@@ -786,6 +791,7 @@ typedef enum {
WMI_EXTSCAN_SET_CAPABILITIES_CMDID,
WMI_EXTSCAN_GET_CAPABILITIES_CMDID,
WMI_EXTSCAN_CONFIGURE_HOTLIST_SSID_MONITOR_CMDID,
WMI_EXTSCAN_CONFIGURE_MAWC_CMDID,
/** DHCP server offload commands */
WMI_SET_DHCP_SERVER_OFFLOAD_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_DHCP_OFL),
......@@ -822,6 +828,8 @@ typedef enum {
WMI_PACKET_FILTER_CONFIG_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_PKT_FILTER),
WMI_PACKET_FILTER_ENABLE_CMDID,
/** Motion Aided WiFi Connectivity (MAWC) commands */
WMI_MAWC_SENSOR_REPORT_IND_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_MAWC),
} WMI_CMD_ID;
typedef enum {
......@@ -1123,6 +1131,8 @@ typedef enum {
WMI_SOC_SET_HW_MODE_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_SOC),
WMI_SOC_HW_MODE_TRANSITION_EVENTID,
WMI_SOC_SET_DUAL_MAC_CONFIG_RESP_EVENTID,
/** Motion Aided WiFi Connectivity (MAWC) events */
WMI_MAWC_ENABLE_SENSOR_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_MAWC),
} WMI_EVT_ID;
/* defines for OEM message sub-types */
......@@ -11369,6 +11379,83 @@ typedef struct {
} wmi_soc_set_dual_mac_config_response_event_fixed_param;
typedef enum {
MAWC_MOTION_STATE_UNKNOWN,
MAWC_MOTION_STATE_STATIONARY,
MAWC_MOTION_STATE_WALK,
MAWC_MOTION_STATE_TRANSIT,
} MAWC_MOTION_STATE;
typedef enum {
MAWC_SENSOR_STATUS_OK,
MAWC_SENSOR_STATUS_FAILED_TO_ENABLE,
MAWC_SENSOR_STATUS_SHUTDOWN,
} MAWC_SENSOR_STATUS;
typedef struct {
/* TLV tag and len; tag equals
* WMITLV_TAG_STRUC_wmi_mawc_sensor_report_ind_cmd_fixed_param */
A_UINT32 tlv_header;
/** new motion state, MAWC_MOTION_STATE */
A_UINT32 motion_state;
/** status code of sensor, MAWC_SENSOR_STATUS */
A_UINT32 sensor_status;
} wmi_mawc_sensor_report_ind_cmd_fixed_param;
typedef struct {
/* TLV tag and len; tag equals
* WMITLV_TAG_STRUC_wmi_mawc_enable_sensor_event_fixed_param */
A_UINT32 tlv_header;
/* enable(1) or disable(0) */
A_UINT32 enable;
} wmi_mawc_enable_sensor_event_fixed_param;
typedef struct {
/* TLV tag and len; tag equals
* WMITLV_TAG_STRUC_wmi_extscan_configure_mawc_cmd_fixed_param */
A_UINT32 tlv_header;
/* Unique id identifying the VDEV */
A_UINT32 vdev_id;
/* enable(1) or disable(0) MAWC */
A_UINT32 enable;
/* ratio of skipping suppressing scan, skip one out of x */
A_UINT32 suppress_ratio;
} wmi_extscan_configure_mawc_cmd_fixed_param;
typedef struct {
/* TLV tag and len; tag equals
* WMITLV_TAG_STRUC_wmi_nlo_configure_mawc_cmd_fixed_param */
A_UINT32 tlv_header;
/* Unique id identifying the VDEV */
A_UINT32 vdev_id;
/* enable(1) or disable(0) MAWC */
A_UINT32 enable;
/* ratio of exponential backoff, next = current + current*ratio/100 */
A_UINT32 exp_backoff_ratio;
/* initial scan interval(msec) */
A_UINT32 init_scan_interval;
/* max scan interval(msec) */
A_UINT32 max_scan_interval;
} wmi_nlo_configure_mawc_cmd_fixed_param;
typedef struct {
/* TLV tag and len; tag equals
* WMITLV_TAG_STRUC_wmi_roam_configure_mawc_cmd_fixed_param */
A_UINT32 tlv_header;
/* Unique id identifying the VDEV */
A_UINT32 vdev_id;
/* enable(1) or disable(0) MAWC */
A_UINT32 enable;
/* data traffic load (kBps) to register CMC */
A_UINT32 traffic_load_threshold;
/* RSSI threshold (dBm) to scan for Best AP */
A_UINT32 best_ap_rssi_threshold;
/* high RSSI threshold adjustment in Stationary to suppress scan */
A_UINT32 rssi_stationary_high_adjust;
/* low RSSI threshold adjustment in Stationary to suppress scan */
A_UINT32 rssi_stationary_low_adjust;
} wmi_roam_configure_mawc_cmd_fixed_param;
#define WMI_PACKET_FILTER_COMPARE_DATA_LEN_DWORD 2
#define WMI_PACKET_FILTER_MAX_CMP_PER_PACKET_FILTER 10
......
......@@ -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_ 162
#define __WMI_REVISION_ 163
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work
......
......@@ -463,6 +463,10 @@ static u_int8_t* get_wmi_cmd_string(WMI_CMD_ID wmi_command)
CASE_RETURN_STRING(WMI_THERMAL_MGMT_CMDID);
CASE_RETURN_STRING(WMI_RSSI_BREACH_MONITOR_CONFIG_CMDID);
CASE_RETURN_STRING(WMI_LRO_CONFIG_CMDID);
CASE_RETURN_STRING(WMI_MAWC_SENSOR_REPORT_IND_CMDID);
CASE_RETURN_STRING(WMI_ROAM_CONFIGURE_MAWC_CMDID);
CASE_RETURN_STRING(WMI_NLO_CONFIGURE_MAWC_CMDID);
CASE_RETURN_STRING(WMI_EXTSCAN_CONFIGURE_MAWC_CMDID);
/* GPIO Configuration */
CASE_RETURN_STRING(WMI_GPIO_CONFIG_CMDID);
CASE_RETURN_STRING(WMI_GPIO_OUTPUT_CMDID);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment