qcacmn: Move to index based assignment for srng register offset

Currently the hardware srng register offset is statically
assigned to the handle. This can lead to incorrect index access
when targets (eg: wcn7850) is added which require additional
register offsets to be stored in the hw srng register offset table.

Move to the index based assignment of the srng register offset.

Change-Id: I8e38bdd0c28068029a0267fce706edf4378b9df8
CRs-Fixed: 2965081
This commit is contained in:
Rakesh Pillai
2021-04-29 01:49:03 -07:00
committed by Madan Koyyalamudi
父節點 37e2c6d9ed
當前提交 47af4d320f
共有 12 個文件被更改,包括 76 次插入314 次删除

查看文件

@@ -2431,36 +2431,6 @@ struct hal_hw_srng_config hw_srng_table_6750[] = {
#endif
};
int32_t hal_hw_reg_offset_qca6750[] = {
/* dst */
REG_OFFSET(DST, HP),
REG_OFFSET(DST, TP),
REG_OFFSET(DST, ID),
REG_OFFSET(DST, MISC),
REG_OFFSET(DST, HP_ADDR_LSB),
REG_OFFSET(DST, HP_ADDR_MSB),
REG_OFFSET(DST, MSI1_BASE_LSB),
REG_OFFSET(DST, MSI1_BASE_MSB),
REG_OFFSET(DST, MSI1_DATA),
REG_OFFSET(DST, BASE_LSB),
REG_OFFSET(DST, BASE_MSB),
REG_OFFSET(DST, PRODUCER_INT_SETUP),
/* src */
REG_OFFSET(SRC, HP),
REG_OFFSET(SRC, TP),
REG_OFFSET(SRC, ID),
REG_OFFSET(SRC, MISC),
REG_OFFSET(SRC, TP_ADDR_LSB),
REG_OFFSET(SRC, TP_ADDR_MSB),
REG_OFFSET(SRC, MSI1_BASE_LSB),
REG_OFFSET(SRC, MSI1_BASE_MSB),
REG_OFFSET(SRC, MSI1_DATA),
REG_OFFSET(SRC, BASE_LSB),
REG_OFFSET(SRC, BASE_MSB),
REG_OFFSET(SRC, CONSUMER_INT_SETUP_IX0),
REG_OFFSET(SRC, CONSUMER_INT_SETUP_IX1),
};
/**
* hal_qca6750_attach() - Attach 6750 target specific hal_soc ops,
* offset and srng table
@@ -2468,7 +2438,7 @@ int32_t hal_hw_reg_offset_qca6750[] = {
void hal_qca6750_attach(struct hal_soc *hal_soc)
{
hal_soc->hw_srng_table = hw_srng_table_6750;
hal_soc->hal_hw_reg_offset = hal_hw_reg_offset_qca6750;
hal_srng_hw_reg_offset_init_generic(hal_soc);
hal_hw_txrx_default_ops_attach_li(hal_soc);
hal_hw_txrx_ops_attach_qca6750(hal_soc);
}