summaryrefslogtreecommitdiff
path: root/bl1
diff options
context:
space:
mode:
authorSandrine Bailleux <sandrine.bailleux@arm.com>2014-03-24 10:24:08 +0000
committerDan Handley <dan.handley@arm.com>2014-03-26 17:36:36 +0000
commit6c595b3d118d6e72fbbd77bbcd3116310227dd13 (patch)
tree0bffab35e715a9f6749df2d3dcf97a1148edd1a7 /bl1
parentd8b07aa03f209b6a8143816537105edc63553b8e (diff)
Separate out BL2, BL3-1 and BL3-2 early exception vectors from BL1
bl1/aarch64/early_exceptions.S used to be re-used by BL2, BL3-1 and BL3-2. There was some early SMC handling code in there that was not required by the other bootloader stages. Therefore this patch introduces an even simpler exception vector source file for BL2, BL3-1 and BL3-2. Fixes ARM-software/tf-issues#38 Change-Id: I0244b80e9930b0f8035156a0bf91cc3e9a8f995d
Diffstat (limited to 'bl1')
-rw-r--r--bl1/aarch64/bl1_entrypoint.S2
-rw-r--r--bl1/aarch64/bl1_exceptions.S (renamed from bl1/aarch64/early_exceptions.S)20
-rw-r--r--bl1/bl1.mk2
3 files changed, 5 insertions, 19 deletions
diff --git a/bl1/aarch64/bl1_entrypoint.S b/bl1/aarch64/bl1_entrypoint.S
index 8d120453..dc63f394 100644
--- a/bl1/aarch64/bl1_entrypoint.S
+++ b/bl1/aarch64/bl1_entrypoint.S
@@ -54,7 +54,7 @@ bl1_entrypoint: ; .type bl1_entrypoint, %function
* Set the exception vector to something sane.
* ---------------------------------------------
*/
- adr x0, early_exceptions
+ adr x0, bl1_exceptions
msr vbar_el3, x0
/* ---------------------------------------------------------------------
diff --git a/bl1/aarch64/early_exceptions.S b/bl1/aarch64/bl1_exceptions.S
index ee91a89c..a80d1788 100644
--- a/bl1/aarch64/early_exceptions.S
+++ b/bl1/aarch64/bl1_exceptions.S
@@ -35,19 +35,16 @@
#include <runtime_svc.h>
#include <asm_macros.S>
- .globl early_exceptions
- .weak display_boot_progress
+ .globl bl1_exceptions
.section .vectors, "ax"; .align 11
/* -----------------------------------------------------
- * Very simple stackless exception handlers used by all
- * bootloader stages. BL31 uses them before stacks are
- * setup. BL1/BL2 use them throughout.
+ * Very simple stackless exception handlers used by BL1.
* -----------------------------------------------------
*/
.align 7
-early_exceptions:
+bl1_exceptions:
/* -----------------------------------------------------
* Current EL with SP0 : 0x0 - 0x180
* -----------------------------------------------------
@@ -241,14 +238,3 @@ skip_mmu_teardown:
panic:
wfi
b panic
-
- /* -----------------------------------------------------
- * BL1 redefines this function to print the fact that
- * BL2 has done its job and BL31 is about to be loaded.
- * This weak definition allows other bootloader stages
- * to use the 'early_exceptions' without running into
- * compilation errors.
- * -----------------------------------------------------
- */
-display_boot_progress:
- ret
diff --git a/bl1/bl1.mk b/bl1/bl1.mk
index 0d5eca7d..c2101b05 100644
--- a/bl1/bl1.mk
+++ b/bl1/bl1.mk
@@ -45,7 +45,7 @@ vpath %.S arch/${ARCH}/cpu \
BL1_SOURCES += bl1_arch_setup.c \
bl1_entrypoint.S \
- early_exceptions.S \
+ bl1_exceptions.S \
bl1_main.c \
cpu_helpers.S