From b363b352e97d0b441aba7ea37e4aebfc88bcdb3f Mon Sep 17 00:00:00 2001 From: Sandeep Puligilla Date: Tue, 21 Mar 2017 11:01:25 -0700 Subject: fw-api: CL 2942293 - update fw common interface files Extensions to the WMI coex configuration message Change-Id: Ifa4a683897837ba0ebde8682fde35580bd504cfd CRs-Fixed: 1107600 --- fw/wmi_unified.h | 38 ++++++++++++++++++++++++++++++++++++++ fw/wmi_version.h | 2 +- 2 files changed, 39 insertions(+), 1 deletion(-) diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h index 21722ed86a15..e92b7bd70783 100755 --- a/fw/wmi_unified.h +++ b/fw/wmi_unified.h @@ -17556,6 +17556,30 @@ typedef struct { A_UINT32 ofdm_level; } wmi_ani_ofdm_event_fixed_param; +/* When a bit is set it specifies the particular WLAN traffic type is high priority. + * BT low priority traffic has higher priority than WLAN low priority traffic and has + * lower priority when compared to WLAN high priority traffic. + * BT high priority traffic has higher priority than WLAN low/high priority traffic. + */ +#define WMI_PDEV_BE_PRIORITY_BIT (1<<0) +#define WMI_PDEV_BK_PRIORITY_BIT (1<<1) +#define WMI_PDEV_VI_PRIORITY_BIT (1<<2) +#define WMI_PDEV_VO_PRIORITY_BIT (1<<3) +#define WMI_PDEV_BEACON_PRIORITY_BIT (1<<4) +#define WMI_PDEV_MGMT_PRIORITY_BIT (1<<5) +#define WMI_PDEV_IS_BE_PRIORITY_SET(val) ((val) & WMI_PDEV_BE_PRIORITY_BIT) +#define WMI_PDEV_IS_BK_PRIORITY_SET(val) ((val) & WMI_PDEV_BK_PRIORITY_BIT) +#define WMI_PDEV_IS_VI_PRIORITY_SET(val) ((val) & WMI_PDEV_VI_PRIORITY_BIT) +#define WMI_PDEV_IS_VO_PRIORITY_SET(val) ((val) & WMI_PDEV_VO_PRIORITY_BIT) +#define WMI_PDEV_IS_BEACON_PRIORITY_SET(val) ((val) & WMI_PDEV_BEACON_PRIORITY_BIT) +#define WMI_PDEV_IS_MGMT_PRIORITY_SET(val) ((val) & WMI_PDEV_MGMT_PRIORITY_BIT) + +typedef enum wmi_coex_algo_type { + WMI_COEX_ALGO_UNCONS_FREERUN = 0, + WMI_COEX_ALGO_FREERUN = 1, + WMI_COEX_ALGO_OCS = 2, +} WMI_COEX_ALGO_TYPE; + typedef enum wmi_coex_config_type { WMI_COEX_CONFIG_PAGE_P2P_TDM = 1, /* config interval (arg1 BT, arg2 WLAN) for P2P + PAGE */ WMI_COEX_CONFIG_PAGE_STA_TDM = 2, /* config interval (arg1 BT, arg2 WLAN) for STA + PAGE */ @@ -17570,6 +17594,16 @@ typedef enum wmi_coex_config_type { WMI_COEX_CONFIG_INQUIRY_P2P_STA_TDM = 11, /* config interval (ms units) (arg1 BT, arg2 WLAN) for P2P + STA + INQUIRY */ WMI_COEX_CONFIG_TX_POWER = 12, /* config wlan total tx power when bt coex (arg1 is wlan_tx_power_limit, in 0.5dbm units) */ WMI_COEX_CONFIG_PTA_CONFIG = 13, /* config whether enable PTA and GPIO number (arg1 is pta_enable, arg2 is GPIO number used as /BT_ACTIVE/BT_PRIORITY/WLAN_DENY,8 bit for each) */ + WMI_COEX_CONFIG_AP_TDM = 14, /* config interval (arg1 duty cycle in ms, arg2 WLAN duration in ms) for AP */ + WMI_COEX_CONFIG_WLAN_SCAN_PRIORITY = 15, /* config to set WLAN priority during Off Channel Scan */ + WMI_COEX_CONFIG_WLAN_PKT_PRIORITY = 16, /* config to set WLAN priority for BE/BK/VO/VI/Beacon/Management frame */ + WMI_COEX_CONFIG_PTA_INTERFACE = 17, /* config PTA interface, + arg1 PTA num, + arg2 mode (2-wire/3-wire/PTA), + arg3 first slot time in microsec, + arg4 BT priority time in microsec, + arg5 PTA algorithm (WMI_COEX_ALGO_TYPE), + arg6 PTA priority */ } WMI_COEX_CONFIG_TYPE; typedef struct { @@ -17578,6 +17612,10 @@ typedef struct { A_UINT32 config_type; /* wmi_coex_config_type enum */ A_UINT32 config_arg1; A_UINT32 config_arg2; + A_UINT32 config_arg3; + A_UINT32 config_arg4; + A_UINT32 config_arg5; + A_UINT32 config_arg6; } WMI_COEX_CONFIG_CMD_fixed_param; /** diff --git a/fw/wmi_version.h b/fw/wmi_version.h index a74350dfbe5e..d7a061b224df 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_ 370 +#define __WMI_REVISION_ 371 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work -- cgit v1.2.3