summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorspuligil <spuligil@codeaurora.org>2018-08-13 12:03:22 -0700
committerspuligil <spuligil@codeaurora.org>2018-08-13 12:03:22 -0700
commit134733eeadff834aa482bb6747c364be6bb4f327 (patch)
tree04e02c4b9754f04d83be1fd6fae5c6bb6152d829
parent7a35bbd887d294dd39ffaa07d75aa1e5a515916f (diff)
fw-api: CL 5169767 - update fw common interface files
FFT Bin scaling implementation support <Describe here the change summary in detail> Change-Id: Ic62d4f2e23acdefc8c02b3b00653ecae365e8eee CRs-Fixed: 2262693
-rwxr-xr-xfw/wmi_tlv_defs.h5
-rwxr-xr-xfw/wmi_unified.h22
-rwxr-xr-xfw/wmi_version.h2
3 files changed, 27 insertions, 2 deletions
diff --git a/fw/wmi_tlv_defs.h b/fw/wmi_tlv_defs.h
index e2ba791556be..44ac30532a07 100755
--- a/fw/wmi_tlv_defs.h
+++ b/fw/wmi_tlv_defs.h
@@ -926,6 +926,7 @@ typedef enum {
WMITLV_TAG_STRUC_wmi_obss_spatial_reuse_set_cmd_fixed_param,
WMITLV_TAG_STRUC_wmi_esp_estimate_event_fixed_param,
WMITLV_TAG_STRUC_wmi_nan_host_config_param,
+ WMITLV_TAG_STRUC_wmi_spectral_bin_scaling_params,
} WMITLV_TAG_ID;
/*
@@ -3786,7 +3787,9 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_AVAILABLE_EVENTID);
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_MAC_PHY_CHAINMASK_CAPABILITY, mac_phy_chainmask_caps, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_OEM_DMA_RING_CAPABILITIES, oem_dma_ring_caps, WMITLV_SIZE_VAR) \
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_WMI_SAR_CAPABILITIES, WMI_SAR_CAPABILITIES, sar_caps, WMITLV_SIZE_FIX) \
- WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_DMA_RING_CAPABILITIES, dma_ring_caps, WMITLV_SIZE_VAR)
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_DMA_RING_CAPABILITIES, dma_ring_caps, WMITLV_SIZE_VAR) \
+ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_spectral_bin_scaling_params, wmi_bin_scaling_params, WMITLV_SIZE_VAR)
+
WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID);
/* Ready event */
diff --git a/fw/wmi_unified.h b/fw/wmi_unified.h
index 81ffe871d8c5..17027f23574d 100755
--- a/fw/wmi_unified.h
+++ b/fw/wmi_unified.h
@@ -22999,6 +22999,28 @@ typedef struct {
A_INT32 noise_floor[WMI_MAX_CHAINS];
} wmi_dma_buf_release_spectral_meta_data;
+typedef enum {
+ NO_SCALING = 0, /* No bin scaling*/
+ /**
+ * scaled_bin_mag = bin_mag *
+ * sqrt(10^(max(legacy_max_gain - default_agc_max_gain + low_level_offset - RSSI_corr,
+ * (agc_total_gain_db < default_agc_max_gain) * high_level_offset)/10)) *
+ * 2^(DET{0,1,2}_SPECTRAL_SCAN_BIN_SCALE - legacy_spectral_scan_bin_scale)
+ */
+ AGC_GAIN_RSSI_CORR_BASED = 1,
+} WMI_SPECTRAL_SCALING_FORMULA_ID;
+
+typedef struct
+{
+ A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_spectral_bin_scaling_params */
+ A_UINT32 pdev_id; /* ID of pdev to which the scaling parameters are to be applied */
+ WMI_SPECTRAL_SCALING_FORMULA_ID formula_id; /* Represets the formula to be used */
+ A_UINT32 low_level_offset; /* low level offset for fine tuning the scaling factor based on RSSI and AGC gain */
+ A_UINT32 high_level_offset; /* high level offset for fine tuning the scaling factor based on RSSI and AGC gain */
+ A_UINT32 rssi_thr; /* RSSI threshold to be used to adjust the inband power of the given spectral report */
+ A_UINT32 default_agc_max_gain;/* DEFAULT AGC MAX GAIN used. Fetched from register RXTD_RADAR_SBS_CTRL_1_L bits20:13 */
+} wmi_spectral_bin_scaling_params;
+
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_runtime_dpd_recal_cmd_fixed_param */
A_UINT32 enable; /* Enable/disable */
diff --git a/fw/wmi_version.h b/fw/wmi_version.h
index 414e6b2ce06f..5ca527a3e227 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_ 563
+#define __WMI_REVISION_ 564
/** The Version Namespace should not be normally changed. Only
* host and firmware of the same WMI namespace will work