Introduce macros to manipulate the SPSR
This patch introduces macros (SPSR_64 and SPSR_32) to
create a SPSR for both aarch32 and aarch64 execution
states. These macros allow the user to set fields
in the SPSR depending upon its format.
The make_spsr() function which did not allow
manipulation of all the fields in the aarch32 SPSR
has been replaced by these new macros.
Change-Id: I9425dda0923e8d5f03d03ddb8fa0e28392c4c61e
diff --git a/bl1/bl1_main.c b/bl1/bl1_main.c
index de7bc31..ecf2550 100644
--- a/bl1/bl1_main.c
+++ b/bl1/bl1_main.c
@@ -95,7 +95,7 @@
if (bl2_base) {
bl1_arch_next_el_setup();
- spsr = make_spsr(MODE_EL1, MODE_SP_ELX, MODE_RW_64);
+ spsr = SPSR_64(MODE_EL1, MODE_SP_ELX, DISABLE_ALL_EXCEPTIONS);
printf("Booting trusted firmware boot loader stage 2\n\r");
#if DEBUG
printf("BL2 address = 0x%llx \n\r", (unsigned long long) bl2_base);