aboutsummaryrefslogtreecommitdiff
path: root/bl31/aarch64
diff options
context:
space:
mode:
authorAndrew Thoelke <andrew.thoelke@arm.com>2014-06-02 12:38:12 +0100
committerAndrew Thoelke <andrew.thoelke@arm.com>2014-06-17 11:20:00 +0100
commitee94cc6fa6dc11229a53c3b66d2ce3487bb3b08f (patch)
tree2d6c57c937294183bd284706aca62d47aa3022f7 /bl31/aarch64
parent5e910074245fa180cfbe70d3c8bceeff1eaa026e (diff)
downloadarm-trusted-firmware-ee94cc6fa6dc11229a53c3b66d2ce3487bb3b08f.tar.gz
Remove early_exceptions from BL3-1
The crash reporting support and early initialisation of the cpu_data allow the runtime_exception vectors to be used from the start in BL3-1, removing the need for the additional early_exception vectors and 2KB of code from BL3-1. Change-Id: I5f8997dabbaafd8935a7455910b7db174a25d871
Diffstat (limited to 'bl31/aarch64')
-rw-r--r--bl31/aarch64/bl31_entrypoint.S8
1 files changed, 5 insertions, 3 deletions
diff --git a/bl31/aarch64/bl31_entrypoint.S b/bl31/aarch64/bl31_entrypoint.S
index 2e7476a..e4dfea4 100644
--- a/bl31/aarch64/bl31_entrypoint.S
+++ b/bl31/aarch64/bl31_entrypoint.S
@@ -72,11 +72,13 @@ func bl31_entrypoint
isb
/* ---------------------------------------------
- * Set the exception vector to something sane.
+ * Set the exception vector and zero tpidr_el3
+ * until the crash reporting is set up
* ---------------------------------------------
*/
- adr x1, early_exceptions
+ adr x1, runtime_exceptions
msr vbar_el3, x1
+ msr tpidr_el3, xzr
/* ---------------------------------------------------------------------
* The initial state of the Architectural feature trap register
@@ -134,10 +136,10 @@ func bl31_entrypoint
* Initialise cpu_data and crash reporting
* ---------------------------------------------
*/
- bl init_cpu_data_ptr
#if CRASH_REPORTING
bl init_crash_reporting
#endif
+ bl init_cpu_data_ptr
/* ---------------------------------------------
* Use SP_EL0 for the C runtime stack.