summaryrefslogtreecommitdiff
path: root/lib/stdlib/assert.c
diff options
context:
space:
mode:
authorDimitris Papastamos <dimitris.papastamos@arm.com>2017-06-14 14:47:36 +0100
committerDimitris Papastamos <dimitris.papastamos@arm.com>2017-06-26 17:37:46 +0100
commitcc47e1ada6d9a4234d8ca6547008ddc10e6e6568 (patch)
treed22410d7265ff4f28a7410588fdc454cfa7aa44f /lib/stdlib/assert.c
parentccf3911108ea817a53f6e3b33526881d397ef442 (diff)
juno/aarch32: Restore `SCP_BOOT_CFG_ADDR` to the cold boot value
Before BL2 loads the SCP ram firmware, `SCP_BOOT_CFG_ADDR` specifies the primary core. After the SCP ram firmware has started executing, `SCP_BOOT_CFG_ADDR` is modified. This is not normally an issue but the Juno AArch32 boot flow is a special case. BL1 does a warm reset into AArch32 and the core jumps to the `sp_min` entrypoint. This is effectively a `RESET_TO_SP_MIN` configuration. `sp_min` has to be able to determine the primary core and hence we need to restore `SCP_BOOT_CFG_ADDR` to the cold boot value before `sp_min` runs. This magically worked when booting on A53 because the core index was zero and it just so happened to match with the new value in `SCP_BOOT_CFG_ADDR`. Change-Id: I105425c680cf6238948625c1d1017b01d3517c01 Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
Diffstat (limited to 'lib/stdlib/assert.c')
0 files changed, 0 insertions, 0 deletions