Fix the Cortex-A57 reset handler register usage
The CPU specific reset handlers no longer have the freedom
of using any general purpose register because it is being invoked
by the BL3-1 entry point in addition to BL1. The Cortex-A57 CPU
specific reset handler was overwriting x20 register which was being
used by the BL3-1 entry point to save the entry point information.
This patch fixes this bug by reworking the register allocation in the
Cortex-A57 reset handler to avoid using x20. The patch also
explicitly mentions the register clobber list for each of the
callee functions invoked by the reset handler

Change-Id: I28fcff8e742aeed883eaec8f6c4ee2bd3fce30df
1 parent 2d017e2 commit 683f788fa7374669724eb419a8c3e763b05bcc5c
@Soby Mathew Soby Mathew authored on 29 Jan 2015
Showing 5 changed files
View
docs/firmware-design.md
View
docs/porting-guide.md
View
lib/cpus/aarch64/cortex_a53.S
View
lib/cpus/aarch64/cortex_a57.S
View
lib/cpus/aarch64/cpu_helpers.S