diff options
| -rwxr-xr-x | fw/wmi_services.h | 7 | ||||
| -rwxr-xr-x | fw/wmi_tlv_defs.h | 44 | ||||
| -rwxr-xr-x | fw/wmi_unified.h | 328 | ||||
| -rwxr-xr-x | fw/wmi_version.h | 4 |
4 files changed, 377 insertions, 6 deletions
diff --git a/fw/wmi_services.h b/fw/wmi_services.h index 09abe29ad6b1..53b6c571278e 100755 --- a/fw/wmi_services.h +++ b/fw/wmi_services.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011-2018 The Linux Foundation. All rights reserved. + * Copyright (c) 2011-2019 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -369,6 +369,11 @@ typedef enum { WMI_SERVICE_BSS_COLOR_SWITCH_COUNT = 184, /* Firmware supports bss-color switch count handling */ WMI_SERVICE_HTT_PEER_STATS_SUPPORT = 185, /* Supports the feature where FW sends peer stats autonomously to Host via the HTT_T2H PEER_STATS_IND message */ WMI_SERVICE_UL_RU26_ALLOWED = 186, /* indicates support for RU26 in UL OFDMA */ + WMI_SERVICE_GET_MWS_COEX_STATE = 187, /* FW provides MWS Coex info */ + WMI_SERVICE_GET_MWS_DPWB_STATE = 188, /* FW provides LTE-Coex Dynamic Power Back-off info */ + WMI_SERVICE_GET_MWS_TDM_STATE = 189, /* FW provides LTE-Coex TDM info */ + WMI_SERVICE_GET_MWS_IDRX_STATE = 190, /* FW provides LTE-Coex IDRx info */ + WMI_SERVICE_GET_MWS_ANTENNA_SHARING_STATE = 191, /* FW provides LTE-Coex Antenna sharing info */ /******* ADD NEW SERVICES HERE *******/ diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h index 74f05b838e7d..dc48cd2b6eb7 100755 --- a/fw/wmi_tlv_defs.h +++ b/fw/wmi_tlv_defs.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2018 The Linux Foundation. All rights reserved. + * Copyright (c) 2010-2019 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -956,6 +956,12 @@ typedef enum { WMITLV_TAG_STRUC_wmi_roam_bss_load_config_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_blacklist_event_fixed_param, WMITLV_TAG_STRUC_wmi_csc_vdev_list, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_info_cmd_fixed_param, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_state_fixed_param, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_dpwb_state_fixed_param, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_tdm_state_fixed_param, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_idrx_state_fixed_param, + WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_antenna_sharing_state_fixed_param, } WMITLV_TAG_ID; /* @@ -1347,6 +1353,7 @@ typedef enum { OP(WMI_PEER_TX_PN_REQUEST_CMDID) \ OP(WMI_PEER_UNMAP_RESPONSE_CMDID) \ OP(WMI_ROAM_BSS_LOAD_CONFIG_CMDID) \ + OP(WMI_VDEV_GET_MWS_COEX_INFO_CMDID) \ /* add new CMD_LIST elements above this line */ @@ -1563,6 +1570,11 @@ typedef enum { OP(WMI_PEER_TX_PN_RESPONSE_EVENTID) \ OP(WMI_PDEV_CSC_SWITCH_COUNT_STATUS_EVENTID) \ OP(WMI_ROAM_BLACKLIST_EVENTID) \ + OP(WMI_VDEV_GET_MWS_COEX_STATE_EVENTID) \ + OP(WMI_VDEV_GET_MWS_COEX_DPWB_STATE_EVENTID) \ + OP(WMI_VDEV_GET_MWS_COEX_TDM_STATE_EVENTID) \ + OP(WMI_VDEV_GET_MWS_COEX_IDRX_STATE_EVENTID) \ + OP(WMI_VDEV_GET_MWS_COEX_ANTENNA_SHARING_STATE_EVENTID) \ /* add new EVT_LIST elements above this line */ @@ -3645,6 +3657,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_MNT_FILTER_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_get_chip_power_stats_cmd_fixed_param, wmi_pdev_get_chip_power_stats_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_GET_CHIP_POWER_STATS_CMDID); +/* WLAN GET mws conflict */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_INFO_CMDID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_info_cmd_fixed_param, wmi_vdev_get_mws_coex_info_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_INFO_CMDID); + /* WLAN GET beacon reception Stats*/ #define WMITLV_TABLE_WMI_VDEV_GET_BCN_RECEPTION_STATS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_get_bcn_recv_stats_fixed_param, wmi_vdev_get_bcn_recv_stats_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) @@ -4904,6 +4921,31 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_CHIP_POWER_STATS_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_bcn_recv_stats_event_fixed_param, wmi_vdev_bcn_recv_stats_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_BCN_RECEPTION_STATS_EVENTID); +/* WLAN GET mws coex state */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_STATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_state_fixed_param, wmi_vdev_get_mws_coex_state_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_STATE_EVENTID); + +/* WLAN GET Dynamic power back-off state */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_DPWB_STATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_dpwb_state_fixed_param, wmi_vdev_get_mws_coex_dpwb_state_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_DPWB_STATE_EVENTID); + +/* WLAN GET TDM state */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_TDM_STATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_tdm_state_fixed_param, wmi_vdev_get_mws_coex_tdm_state_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_TDM_STATE_EVENTID); + +/* WLAN GET Idrx state */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_IDRX_STATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_idrx_state_fixed_param, wmi_vdev_get_mws_coex_idrx_state_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_IDRX_STATE_EVENTID); + +/* WLAN GET antenna sharing state */ +#define WMITLV_TABLE_WMI_VDEV_GET_MWS_COEX_ANTENNA_SHARING_STATE_EVENTID(id,op,buf,len) \ + WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_antenna_sharing_state_fixed_param, wmi_vdev_get_mws_coex_antenna_sharing_state_fixed_param, fixed_param, WMITLV_SIZE_FIX) +WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_MWS_COEX_ANTENNA_SHARING_STATE_EVENTID); + #define WMITLV_TABLE_WMI_PDEV_ANI_OFDM_LEVEL_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_ani_ofdm_event_fixed_param, wmi_ani_ofdm_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_ANI_OFDM_LEVEL_EVENTID); diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 9ae1aa919c1a..bc7bcb74727a 100755 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2018 The Linux Foundation. All rights reserved. + * Copyright (c) 2010-2019 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -474,6 +474,8 @@ typedef enum { WMI_VDEV_CHAINMASK_CONFIG_CMDID, WMI_VDEV_GET_BCN_RECEPTION_STATS_CMDID, + /* request LTE-Coex info */ + WMI_VDEV_GET_MWS_COEX_INFO_CMDID, /* peer specific commands */ @@ -1321,6 +1323,22 @@ typedef enum { WMI_VDEV_BCN_RECEPTION_STATS_EVENTID, + /* provide LTE-Coex state */ + WMI_VDEV_GET_MWS_COEX_STATE_EVENTID, + + /* provide LTE-Coex Dynamic Power Back-off info */ + WMI_VDEV_GET_MWS_COEX_DPWB_STATE_EVENTID, + + /* provide LTE-Coex TDM info */ + WMI_VDEV_GET_MWS_COEX_TDM_STATE_EVENTID, + + /* provide LTE-Coex IDRx info */ + WMI_VDEV_GET_MWS_COEX_IDRX_STATE_EVENTID, + + /* provide LTE-Coex antenna sharing info */ + WMI_VDEV_GET_MWS_COEX_ANTENNA_SHARING_STATE_EVENTID, + + /* peer specific events */ /** FW reauet to kick out the station for reasons like inactivity,lack of response ..etc */ WMI_PEER_STA_KICKOUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_PEER), @@ -21328,6 +21346,25 @@ typedef struct { A_UINT32 vdev_id; } wmi_vdev_get_bcn_recv_stats_cmd_fixed_param; +/* + * wmi mws-coex command IDs + */ +typedef enum { + WMI_MWS_COEX_STATE = 0x01, + WMI_MWS_COEX_DPWB_STATE, + WMI_MWS_COEX_TDM_STATE, + WMI_MWS_COEX_IDRX_STATE, + WMI_MWS_COEX_ANTENNA_SHARING_STATE, +} wmi_mws_coex_cmd_id; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_state_cmd_fixed_param */ + /** VDEV identifier */ + A_UINT32 vdev_id; + /** Command ID (type: wmi_mws_coex_cmd_id) */ + A_UINT32 cmd_id; +} wmi_vdev_get_mws_coex_info_cmd_fixed_param; + typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_pdev_tpc_event_fixed_param */ /** pdev_id for identifying the MAC @@ -21445,6 +21482,292 @@ typedef struct { A_UINT32 bmiss_bitmap[8]; } wmi_vdev_bcn_recv_stats_fixed_param; +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_state_fixed_param */ + A_UINT32 vdev_id; + + /* LTE-WLAN coexistence scheme bitmap + * Indicates the final schemes applied for the currrent Coex scenario. + * Bit 0 - TDM policy + * Bit 1 - Forced TDM policy + * Bit 2 - Dynamic Power Back-off policy + * Bit 3 - Channel Avoidance policy + * Bit 4 - Static Power Back-off policy + */ + A_UINT32 coex_scheme_bitmap; + + /* Active conflict count + * Indicates the number of Active conflicts for the current WLAN and LTE frequency combinations. + */ + A_UINT32 active_conflict_count; + + /* Potential conflict count + * Indicates the number of Potential conflicts for the current WLAN and LTE frequency combinations. + */ + A_UINT32 potential_conflict_count; + + /* Bitmap of the group-0 WLAN channels to be avoided during LTE-WLAN coex operation. + * Indicates the WLAN channels to be avoided in b/w WLAN CH-1 and WLAN CH-14. + */ + A_UINT32 chavd_group0_bitmap; + + /* Bitmap of the group-1 WLAN channels to be avoided during LTE-WLAN coex operation. + * Indicates the WLAN channels to be avoided in b/w WLAN CH-36 and WLAN CH-64. + */ + A_UINT32 chavd_group1_bitmap; + + /* Bitmap of the group-2 WLAN channels to be avoided during LTE-WLAN coex operation. + * Indicates the WLAN channels to be avoided in b/w WLAN CH-100 and WLAN CH-140. + */ + A_UINT32 chavd_group2_bitmap; + + /* Bitmap of the group-3 WLAN channels to be avoided during LTE-WLAN coex operation. + * Indicates the WLAN channels to be avoided in b/w WLAN CH-149 and WLAN CH-165. + */ + A_UINT32 chavd_group3_bitmap; +} wmi_vdev_get_mws_coex_state_fixed_param; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_dpwb_state_fixed_param */ + A_UINT32 vdev_id; + + /* Current state of the Dynamic Power Back-off state machine + * MWSCOEX_PWB_UNINIT_STATE = 0, PWB state machine is in un-intialized state. + * MWSCOEX_PWB_WLAN_ON_SINR_START_STATE = 1, SINR measurement starts when WLAN is on + * MWSCOEX_PWB_WLAN_ON_WAIT_RESP_STATE = 2, Waiting for SINR response when WLAN is on + * MWSCOEX_PWB_WLAN_OFF_AWAIT_STATE = 3, WLAN off state for buffer between SINR on/off measurement. + * MWSCOEX_PWB_WLAN_OFF_SINR_START_STATE = 4, SINR measurement starts when WLAN is off + * MWSCOEX_PWB_WLAN_OFF_WAIT_RESP_STATE = 5, Waiting for SINR response when WLAN is off + * MWSCOEX_PWB_WLAN_OFF_SINR_STOP_STATE = 6, SINR measurement stops when WLAN is off + * MWSCOEX_PWB_FORCED_TDM_STATE = 7, Entered Forced TDM state. + * MWSCOEX_PWB_HALTED_STATE = 8, Power back-off algorithm halted. + * MWSCOEX_PWB_WLAN_ALWAYS_ON_SINR_START_STATE = 9, SINR measurement starts in WLAN always on state. + * MWSCOEX_PWB_WLAN_ALWAYS_ON_SINR_STOP_STATE = 10, SINR measurement stops in WLAN always on state. + */ + A_UINT32 current_dpwb_state; + + /* P(N+1) value in dBm i.e. Tx power to be applied in the next Dynamic Power Back-off cycle, + * where P(N) is the power applied during current cycle. + * ranges from 3dBm to 21 dBM + */ + A_INT32 pnp1_value; + + /* Indicates the duty cycle of current LTE frame. + * Duty cycle: Number of UL slots with uplink data and allocated RBs. + */ + A_UINT32 lte_dutycycle; + + /* LTE SINR value in dB, when WLAN is ON. */ + A_INT32 sinr_wlan_on; + + /* LTE SINR value in dB, when WLAN is OFF. */ + A_INT32 sinr_wlan_off; + + /* LTE blocks with error for the current bler report. + * Number of LTE blocks with error for a given number (block_count) of LTE blocks. + */ + A_UINT32 bler_count; + + /* Number of LTE blocks considered for bler count report. + * Bler repot will be generated after the reception of every "block_count" number of blocks. + */ + A_UINT32 block_count; + + /* WLAN RSSI level + * WLAN RSSI is devided in to 3 levels i.e. Good/Moderate/Low (configurable inside f/w) + * 0-Good, 1-Moderate, 2-Low + */ + A_UINT32 wlan_rssi_level; + + /* WLAN RSSI value in dBm considered in Dynamic Power back-off algorithm + * Dynamic power back-off algorithm considers either Rx data frame RSSI/Beacon RSSI based on some constraints. + */ + A_INT32 wlan_rssi; + + /* Indicates whether any TDM policy triggered from Dynamic power back-off policy. + * 1 - TDM triggered. + * 0 - TDM not triggered. + */ + A_UINT32 is_tdm_running; +} wmi_vdev_get_mws_coex_dpwb_state_fixed_param; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_tdm_state_fixed_param */ + A_UINT32 vdev_id; + /* Time Division Multiplexing (TDM) LTE-Coex Policy type. + * There are totally 4 types of TDM policies(1-SINR TDM, 2-RSSI TDM, 3-LOW RX RATE TDM, 4-STICKY TDM) + * Bit 0 - SINR TDM policy. + * Bit 1 - RSSI TDM policy. + * Bit 2 - Low Rx rate TDM policy + * Bit 3 - Sticky TDM policy + */ + A_UINT32 tdm_policy_bitmap; + + /* TDM LTE/WLAN sub-frame bitmap + * Indicates the bitmap of LTE/WLAN sub-frames. + * value 0: WLAN slot. + * value 1: LTE slot. + */ + A_UINT32 tdm_sf_bitmap; +} wmi_vdev_get_mws_coex_tdm_state_fixed_param; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_idrx_state_fixed_param */ + A_UINT32 vdev_id; + + /* SUB0 LTE-coex tech. + *------------------------ + * TECH TECH_ID + *------------------------ + * LTE 0 + * TDSCDMA 1 + * GSM1 2 + * ONEX 3 + * HDR 4 + * WCDMA 5 + * GSM2 6 + * GSM3 7 + * WCDMA2 8 + * LTE2 9 + * Indicates the type of WWAN technology used as SUB0 i.e. SIM slot 1 + */ + A_UINT32 sub0_techid; + + /* SUB0 mitigation policy. + * Indicates the mitigation policy used to coexist with WLAN. + * 1 - Tx blanking + * 2 - Static power back-off + */ + A_UINT32 sub0_policy; + + /* Set if SUB0 is in link critical state. + * Link critical will be set, if continuous page miss happens or RSSI is below -100 dBm at LTE side. + */ + A_UINT32 sub0_is_link_critical; + + /* LTE SUB0 imposed static power applied to WLAN due to LTE-WLAN coex. + * Value of static power applied during LTE page cycle ranges from 3-21 dBm. + */ + A_INT32 sub0_static_power; + + /* LTE SUB0 RSSI value in dBm */ + A_INT32 sub0_rssi; + + /* SUB1 LTE-coex tech. + *------------------------ + * TECH TECH_ID + *------------------------ + * LTE 0 + * TDSCDMA 1 + * GSM1 2 + * ONEX 3 + * HDR 4 + * WCDMA 5 + * GSM2 6 + * GSM3 7 + * WCDMA2 8 + * LTE2 9 + * Indicates the type of WWAN technology used as SUB1 i.e. SIM slot 2 + */ + A_UINT32 sub1_techid; + + /* SUB1 mitigation policy. + * Indicates the mitigation policy used to coexist with WLAN. + * 1 - Tx blanking + * 2 - Static power back-off + */ + A_UINT32 sub1_policy; + + /* Set if SUB1 is in link critical state. + * Link critical will be set, if continuous page miss happens or RSSI is below -100 dBm at LTE side. + */ + A_UINT32 sub1_is_link_critical; + + /* LTE SUB1 imposed static power applied to WLAN due to LTE-WLAN coex. + * Value of static power applied during LTE page cycle ranges from 3-21 dBm. + */ + A_INT32 sub1_static_power; + + /* LTE SUB1 RSSI value in dBm */ + A_INT32 sub1_rssi; +} wmi_vdev_get_mws_coex_idrx_state_fixed_param; + +typedef struct { + A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_mws_coex_antenna_sharing_state_fixed_param */ + A_UINT32 vdev_id; + + /* BDF values of Coex flags. + * coexflag 0x1 = MWS Coex enabled + * coexflag 0x3 = MWS Coex enabled + Antenna sharing enabled for WLAN operating in 2.4GHz band. + */ + A_UINT32 coex_flags; + + /* BDF values of Coex Antenna sharing config + * coex_config 0x0 = no Antenna sharing + * coexconfig 0x1 = switched based Antenna sharing + * coexconfig 0x2 = splitter based Antenna sharing + */ + A_UINT32 coex_config; + + /* Tx Chain mask value + * Bit 0: Tx chain-0 + * Bit 1: Tx Chain-1 + * value: 0x1 - Operating in 1X1 + * value: 0x3 - Operating in 2X2 + */ + A_UINT32 tx_chain_mask; + + /* Rx Chain mask value + * Bit 0: Rx chain-0 + * Bit 1: Rx Chain-1 + * value: 0x1 - Operating in 1X1 + * value: 0x3 - Operating in 2X2 + */ + A_UINT32 rx_chain_mask; + + /* Currently active Rx Spatial streams + * Bit 0: Rx Spatial Stream-0 + * Bit 1: Rx Spatial Stream-1 + */ + A_UINT32 rx_nss; + + /* Forced MRC policy type + * BTC_FORCED (0x01) + * RSSI_FORCED (0x02) + * MODEM_ACQ_FORCED (0x04) + */ + A_UINT32 force_mrc; + + /* RSSI value considered for MRC + * 1: Data RSSI + * 2: Beacon RSSI + */ + A_UINT32 rssi_type; + + /* RSSI value measured at Chain-0 in dBm */ + A_INT32 chain0_rssi; + + /* RSSI value measured at Chain-1 in dBm */ + A_INT32 chain1_rssi; + + /* RSSI value of two chains combined in dBm */ + A_INT32 combined_rssi; + + /* Absolute imbalance between two Rx chains in dB */ + A_UINT32 imbalance; + + /* RSSI threshold defined for the above imbalance value in dBm. + * Based on the degree of imbalance between the rx chains, different + * RSSI thresholds are used to determine whether MRC (Maximum-Ratio + * Combining) use of multiple rx chains is suitable. + * This field shows the RSSI threshold below which MRC is used. + */ + A_INT32 mrc_threshold; + + /* Antenna grant duration to WLAN, in milliseconds */ + A_UINT32 grant_duration; +} wmi_vdev_get_mws_coex_antenna_sharing_state_fixed_param; + typedef enum wmi_chip_power_save_failure_reason_code_type { WMI_PROTOCOL_POWER_SAVE_FAILURE_REASON, WMI_HW_POWER_SAVE_FAILURE_REASON, @@ -22910,6 +23233,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_VDEV_GET_BCN_RECEPTION_STATS_CMDID); WMI_RETURN_STRING(WMI_PEER_TX_PN_REQUEST_CMDID); WMI_RETURN_STRING(WMI_ROAM_BSS_LOAD_CONFIG_CMDID); + WMI_RETURN_STRING(WMI_VDEV_GET_MWS_COEX_INFO_CMDID); } return "Invalid WMI cmd"; @@ -24041,7 +24365,7 @@ typedef struct { */ A_UINT32 mode; A_UINT32 rate; /* rate index */ - A_UINT32 nss; /* number of spacial stream */ + A_UINT32 nss; /* number of spatial stream */ A_UINT32 beamforming; /* beamforming parameter 0:disabled, 1:enabled */ A_UINT32 chain_mask; /* mask for the antenna set to get power */ A_UINT32 chain_index; /* index for the antenna */ diff --git a/fw/wmi_version.h b/fw/wmi_version.h index a8d57353eada..75b52f903a17 100755 --- a/fw/wmi_version.h +++ b/fw/wmi_version.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012-2018 The Linux Foundation. All rights reserved. + * Copyright (c) 2012-2019 The Linux Foundation. All rights reserved. * * Previously licensed under the ISC license by Qualcomm Atheros, Inc. * @@ -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_ 613 +#define __WMI_REVISION_ 614 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work |
