diff options
author | Sandrine Bailleux <sandrine.bailleux@arm.com> | 2013-11-12 16:41:16 +0000 |
---|---|---|
committer | Dan Handley <dan.handley@arm.com> | 2013-11-27 15:31:06 +0000 |
commit | c10bd2ce69e54a8c71fa773810e130fc465c03ac (patch) | |
tree | 34e34f2b4a21a448c4823f8b591579cfd1ca9f36 /bl2 | |
parent | ba3155bb0eb51ca4b5dcf43877c394381cff2fb1 (diff) |
Move generic architectural setup out of blx_plat_arch_setup().
blx_plat_arch_setup() should only perform platform-specific
architectural setup, e.g. enabling the MMU. This patch moves
generic architectural setup code out of blx_plat_arch_setup().
Change-Id: I4ccf56b8c4a2fa84909817779a2d97a14aaafab6
Diffstat (limited to 'bl2')
-rw-r--r-- | bl2/aarch64/bl2_entrypoint.S | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bl2/aarch64/bl2_entrypoint.S b/bl2/aarch64/bl2_entrypoint.S index bade0991..4b989a69 100644 --- a/bl2/aarch64/bl2_entrypoint.S +++ b/bl2/aarch64/bl2_entrypoint.S @@ -29,6 +29,7 @@ */ #include <bl_common.h> +#include <arch.h> .globl bl2_entrypoint @@ -59,6 +60,23 @@ bl2_entrypoint:; .type bl2_entrypoint, %function bl platform_is_primary_cpu cbz x0, _panic + /* --------------------------------------------- + * Set the exception vector to something sane. + * --------------------------------------------- + */ + adr x0, early_exceptions + msr vbar_el1, x0 + + /* --------------------------------------------- + * Enable the instruction cache. + * --------------------------------------------- + */ + mrs x0, sctlr_el1 + orr x0, x0, #SCTLR_I_BIT + msr sctlr_el1, x0 + + isb + /* -------------------------------------------- * Give ourselves a small coherent stack to * ease the pain of initializing the MMU |