qcacmn: Add support to send Shadow config v3

Shadow config v2 can support max of 36 shadow
registers only. For KIWI target, there are 40
shadow registers supported.

Hence add support to send shadow config v3
for KIWI.

Change-Id: If57e6597397da3e239f25a6c0cc24f8fd37dcdf1
CRs-Fixed: 3167758
This commit is contained in:
Rakesh Pillai
2022-02-02 07:38:44 -08:00
committed by Madan Koyyalamudi
parent ba3853e95f
commit 68f96a8c79
6 changed files with 137 additions and 13 deletions

View File

@@ -1147,6 +1147,20 @@ struct reo_queue_ref_table {
uint8_t reo_qref_table_en;
};
/**
* union hal_shadow_reg_cfg - Shadow register config
* @addr: Place holder where shadow address is saved
* @v2: shadow config v2 format
* @v3: shadow config v3 format
*/
union hal_shadow_reg_cfg {
uint32_t addr;
struct pld_shadow_reg_v2_cfg v2;
#ifdef CONFIG_SHADOW_V3
struct pld_shadow_reg_v3_cfg v3;
#endif
};
/**
* struct hal_soc - HAL context to be used to access SRNG APIs
* (currently used by data path and
@@ -1187,7 +1201,7 @@ struct hal_soc {
uint32_t target_type;
/* shadow register configuration */
struct pld_shadow_reg_v2_cfg shadow_config[MAX_SHADOW_REGISTERS];
union hal_shadow_reg_cfg shadow_config[MAX_SHADOW_REGISTERS];
int num_shadow_registers_configured;
bool use_register_windowing;
uint32_t register_window;