arm: Fix SCFG ICID reg addresses
On the LS102x boards, in order to initialize the ICID values of masters, the dev_stream_id array holds absolute offsets from the base of SCFG. In ls102xa_config_ssmu_stream_id, the base pointer is cast to uint32_t * before adding the offset, leading to an invalid address. Casting it to void * solves the issue. Signed-off-by: Vincent Siles <vincent.siles@provenrun.com> Reviewed-by: York Sun <york.sun@nxp.com>
This commit is contained in:
parent
acb8f5e914
commit
15b96ad831
@ -10,11 +10,11 @@
|
||||
|
||||
void ls102xa_config_smmu_stream_id(struct smmu_stream_id *id, uint32_t num)
|
||||
{
|
||||
uint32_t *scfg = (uint32_t *)CONFIG_SYS_FSL_SCFG_ADDR;
|
||||
void *scfg = (void *)CONFIG_SYS_FSL_SCFG_ADDR;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < num; i++)
|
||||
out_be32(scfg + id[i].offset, id[i].stream_id);
|
||||
out_be32((u32 *)(scfg + id[i].offset), id[i].stream_id);
|
||||
}
|
||||
|
||||
void ls1021x_config_caam_stream_id(struct liodn_id_table *tbl, int size)
|
||||
|
Loading…
Reference in New Issue
Block a user