qcacmn: Add enhanced AoA support for 11be targets
Changes to support the enhanced AoA (multi gain table). CRs-Fixed: 3553705 Change-Id: I75babad28aab53074e68266e8d98ad40a119fc69
Este cometimento está contido em:

cometido por
Rahul Choudhary

ascendente
d0b09316c5
cometimento
2a073ca079
@@ -67,6 +67,7 @@
|
||||
#define CFR_MOD_PRD 10 /* CFR period to be multiples of 10ms */
|
||||
|
||||
#define MAX_AGC_GAIN 62
|
||||
#define INVALID_AGC_GAIN 0xFFFF
|
||||
|
||||
enum cfrmetaversion {
|
||||
CFR_META_VERSION_NONE,
|
||||
@@ -576,8 +577,22 @@ struct nl_event_cb {
|
||||
* @max_aoa_chains: Indicate the max number of chains to which target supports
|
||||
* AoA data.
|
||||
* @phase_delta: per chain phase delta associated with 62 gain values reported
|
||||
* by FW via WMI_PDEV_AOA_PHASEDELTA_EVENTID.
|
||||
* by FW via WMI_PDEV_AOA_PHASEDELTA_EVENTID. This is for the targets which
|
||||
* supports only default gain table.
|
||||
* @ibf_cal_val: Per chain IBF cal value from FW.
|
||||
* @is_enh_aoa_data: flag to indicate the pdev supports enhanced AoA.
|
||||
* @max_agc_gain_tbls: Max rx AGC gain tables supported & advertised by target.
|
||||
* @max_agc_gain_per_tbl_2g: Max possible rx AGC gain per table on 2GHz band.
|
||||
* @max_agc_gain_per_tbl_5g: Max possible rx AGC gain per table on 5GHz band.
|
||||
* @max_agc_gain_per_tbl_6g: Max possbile rx AGC gain per table on 6GHz band.
|
||||
* @max_bdf_entries_per_tbl: Max entries per table in gain & phase array.
|
||||
* @max_entries_all_table: Max entries across table in gain & phase array.
|
||||
* @gain_stop_index_array: This array has optimized gain range values stored.
|
||||
* @enh_phase_delta_array: This array has optimized phase delta values stored
|
||||
* aligning with gain_stop_index_array.
|
||||
* @start_ent: array where each entry indicates the offset index per table to be
|
||||
* applied on gain_stop_index_array and enh_phase_delta_array
|
||||
* @xbar_config: xbar config to be used to map bb to rf chainmask.
|
||||
*/
|
||||
/*
|
||||
* To be extended if we get more capbality info
|
||||
@@ -638,7 +653,20 @@ struct pdev_cfr {
|
||||
uint32_t max_aoa_chains;
|
||||
uint16_t phase_delta[HOST_MAX_CHAINS][MAX_AGC_GAIN];
|
||||
uint32_t ibf_cal_val[HOST_MAX_CHAINS];
|
||||
#endif
|
||||
#ifdef WLAN_RCC_ENHANCED_AOA_SUPPORT
|
||||
bool is_enh_aoa_data;
|
||||
uint32_t max_agc_gain_tbls;
|
||||
uint16_t max_agc_gain_per_tbl_2g[PSOC_MAX_NUM_AGC_GAIN_TBLS];
|
||||
uint16_t max_agc_gain_per_tbl_5g[PSOC_MAX_NUM_AGC_GAIN_TBLS];
|
||||
uint16_t max_agc_gain_per_tbl_6g[PSOC_MAX_NUM_AGC_GAIN_TBLS];
|
||||
uint8_t max_bdf_entries_per_tbl[PSOC_MAX_NUM_AGC_GAIN_TBLS];
|
||||
uint32_t max_entries_all_table;
|
||||
uint16_t *gain_stop_index_array;
|
||||
uint16_t *enh_phase_delta_array;
|
||||
uint8_t start_ent[PSOC_MAX_NUM_AGC_GAIN_TBLS];
|
||||
uint32_t xbar_config;
|
||||
#endif /* WLAN_RCC_ENHANCED_AOA_SUPPORT */
|
||||
#endif /* WLAN_ENH_CFR_ENABLE */
|
||||
};
|
||||
|
||||
/**
|
||||
|
Criar uma nova questão referindo esta
Bloquear um utilizador