summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2018-04-17 03:37:13 -0600
committerLinux Build Service Account <lnxbuild@localhost>2018-04-17 03:37:13 -0600
commitbfeaa0709967f2b5a587e7724be6a7f5636faf4f (patch)
treedb001b90a3417746202e8d67c89d38671ac2bcf5
parent841076a78b8073a4ff7f41bd1946d061c767c8d1 (diff)
parent654c940b7598d2cd4e99f84a7f2ef075a2c3397d (diff)
Merge 654c940b7598d2cd4e99f84a7f2ef075a2c3397d on remote branch
Change-Id: I3b4a55dcd07177fd7fa76b969d5676267d38e374
-rw-r--r--fw/htt_stats.h1
-rwxr-xr-xfw/wmi_services.h1
-rwxr-xr-xfw/wmi_tlv_defs.h8
-rwxr-xr-xfw/wmi_unified.h30
-rwxr-xr-xfw/wmi_version.h2
5 files changed, 41 insertions, 1 deletions
diff --git a/fw/htt_stats.h b/fw/htt_stats.h
index 0bbd13c27419..1229e43dd92c 100644
--- a/fw/htt_stats.h
+++ b/fw/htt_stats.h
@@ -2669,6 +2669,7 @@ typedef struct {
/* Counters to track number of rx packets in each GI in each mcs (0-11) */
A_UINT32 rx_gi[HTT_RX_PDEV_STATS_NUM_GI_COUNTERS][HTT_RX_PDEV_STATS_NUM_MCS_COUNTERS];
+ A_INT32 rssi_in_dbm; /* rx Signal Strength value in dBm unit */
} htt_rx_pdev_rate_stats_tlv;
diff --git a/fw/wmi_services.h b/fw/wmi_services.h
index 4cff188b5c68..4d731131a455 100755
--- a/fw/wmi_services.h
+++ b/fw/wmi_services.h
@@ -250,6 +250,7 @@ typedef enum {
WMI_SERVICE_GMAC_OFFLOAD_SUPPORT=154, /* Support for GMAC */
WMI_SERVICE_SPOOF_MAC_SUPPORT=155, /* support for SERVICE_SPOOF_MAC */
WMI_SERVICE_PEER_TID_CONFIGS_SUPPORT=156, /* Support TID specific configurations per peer (ack,aggr,retry,rate) */
+ WMI_SERVICE_VDEV_SWRETRY_PER_AC_CONFIG_SUPPORT=157, /* Support vdev software retries configuration per AC (non aggr retry/aggr retry) */
/******* ADD NEW SERVICES HERE *******/
diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h
index 1baafd7d0417..8086af2ff57e 100755
--- a/fw/wmi_tlv_defs.h
+++ b/fw/wmi_tlv_defs.h
@@ -912,6 +912,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_request_roam_scan_stats_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_roam_scan_stats_event_fixed_param,
WMITLV_TAG_STRUC_wmi_peer_tid_configurations_cmd_fixed_param,
+ WMITLV_TAG_STRUC_wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param,
} WMITLV_TAG_ID;
/*
@@ -1283,6 +1284,7 @@ typedef enum {
OP(WMI_TWT_RESUME_DIALOG_CMDID) \
OP(WMI_REQUEST_ROAM_SCAN_STATS_CMDID) \
OP(WMI_PEER_TID_CONFIGURATIONS_CMDID) \
+ OP(WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID) \
/* add new CMD_LIST elements above this line */
@@ -2389,6 +2391,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_GET_TX_POWER_CMDID);
WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_LIMIT_OFFCHAN_CMDID);
+/* vdev per-AC SW retry configuration cmd */
+#define WMITLV_TABLE_WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID(id,op,buf,len) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param, wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
+
+WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID);
+
/* PDEV Set Base Mac Address Cmd */
#define WMITLV_TABLE_WMI_PDEV_SET_BASE_MACADDR_CMDID(id,op,buf,len) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_set_base_macaddr_cmd_fixed_param, wmi_pdev_set_base_macaddr_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h
index da7adcf8e389..a2bc9a4ee7f4 100755
--- a/fw/wmi_unified.h
+++ b/fw/wmi_unified.h
@@ -450,6 +450,8 @@ typedef enum {
WMI_VDEV_GET_TX_POWER_CMDID,
/* limit STA offchannel activity */
WMI_VDEV_LIMIT_OFFCHAN_CMDID,
+ /** To set custom software retries per-AC for vdev */
+ WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID,
/* peer specific commands */
@@ -4301,6 +4303,20 @@ typedef enum {
WMI_GET_BITS(param, WMI_VDEV_CUSTOM_TX_AC_EN_BITPOS, \
WMI_VDEV_CUSTOM_TX_AC_EN_NUM_BITS)
+typedef enum {
+ WMI_VDEV_CUSTOM_SW_RETRY_TYPE_NONAGGR = 0,
+ WMI_VDEV_CUSTOM_SW_RETRY_TYPE_AGGR = 1,
+ WMI_VDEV_CUSTOM_SW_RETRY_TYPE_MAX,
+} wmi_vdev_custom_sw_retry_type_t;
+
+typedef struct {
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param */
+ A_UINT32 vdev_id; /* vdev id indicating to which the vdev custom software retries will be applied. */
+ A_UINT32 ac_type; /* access category (VI, VO, BE, BK) enum wmi_traffic_ac */
+ A_UINT32 sw_retry_type; /* 0 = non-aggr retry, 1 = aggr retry (wmi_vdev_custom_sw_retry_type_t enum) */
+ A_UINT32 sw_retry_th; /* max retry count per AC base on ac_type for the vdev mentioned in vdev id*/
+} wmi_vdev_set_custom_sw_retry_th_cmd_fixed_param;
+
/*
* Command to enable/disable Green AP Power Save.
* This helps conserve power during AP operation. When the AP has no
@@ -8336,6 +8352,17 @@ typedef enum {
*/
WMI_VDEV_PARAM_ENABLE_DISABLE_RTT_INITIATOR_RANDOM_MAC, /* 0x81 */
+ /**
+ * For each AC, configure how many tx retries to send without RTS
+ * before enabling RTS
+ * bits 0:7 :BE
+ * bits 8:15 :BK
+ * bits 16:23 :VI
+ * bits 24:31 :VO
+ * A value of 0 in specific AC means default configuration for that AC.
+ */
+ WMI_VDEV_PARAM_TX_RETRIES_BEFORE_RTS_PER_AC, /* 0x82 */
+
/*=== ADD NEW VDEV PARAM TYPES ABOVE THIS LINE ===
* The below vdev param types are used for prototyping, and are
@@ -13035,6 +13062,8 @@ typedef enum
WMI_VENDOR_OUI_ACTION_CONNECTION_1X1 = 0, /* Connect in 1X1 only */
WMI_VENDOR_OUI_ACTION_ITO_EXTENSION = 1, /* Extend the Immediate Time-Out (ITO) if data is not received from AP after beacon with TIM bit set */
WMI_VENDOR_OUI_ACTION_CCKM_1X1 = 2, /* TX (only) CCKM rates with 1 chain only */
+ WMI_VENDOR_OUI_ACTION_ALT_ITO = 3, /* inactivity time-out */
+ WMI_VENDOR_OUI_ACTION_SWITCH_TO_11N_MODE = 4, /* Switch from 11ac to 11n mode to avoid IOT issues with ONM frame */
/* Add any action before this line */
WMI_VENDOR_OUI_ACTION_MAX_ACTION_ID
} wmi_vendor_oui_action_id;
@@ -21542,6 +21571,7 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command)
WMI_RETURN_STRING(WMI_TWT_RESUME_DIALOG_CMDID);
WMI_RETURN_STRING(WMI_REQUEST_ROAM_SCAN_STATS_CMDID);
WMI_RETURN_STRING(WMI_PEER_TID_CONFIGURATIONS_CMDID);
+ WMI_RETURN_STRING(WMI_VDEV_SET_CUSTOM_SW_RETRY_TH_CMDID);
}
return "Invalid WMI cmd";
diff --git a/fw/wmi_version.h b/fw/wmi_version.h
index 75c7c55841a4..c5070ead8706 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_ 517
+#define __WMI_REVISION_ 521
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work