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
这个提交包含在:
Rakesh Pillai
2021-04-29 01:49:03 -07:00
提交者 Madan Koyyalamudi
父节点 37e2c6d9ed
当前提交 47af4d320f
修改 12 个文件,包含 76 行新增314 行删除

查看文件

@@ -1805,36 +1805,6 @@ struct hal_hw_srng_config hw_srng_table_8074v2[] = {
#endif
};
int32_t hal_hw_reg_offset_qca8074v2[] = {
/* 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_qca8074v2_attach() - Attach 8074v2 target specific hal_soc ops,
@@ -1843,7 +1813,7 @@ int32_t hal_hw_reg_offset_qca8074v2[] = {
void hal_qca8074v2_attach(struct hal_soc *hal_soc)
{
hal_soc->hw_srng_table = hw_srng_table_8074v2;
hal_soc->hal_hw_reg_offset = hal_hw_reg_offset_qca8074v2;
hal_srng_hw_reg_offset_init_generic(hal_soc);
hal_hw_txrx_default_ops_attach_li(hal_soc);
hal_hw_txrx_ops_attach_qca8074v2(hal_soc);
}