diff --git a/payloads/libpayload/arch/arm/exception.c b/payloads/libpayload/arch/arm/exception.c index 8d8b50b175..3ea76d2b39 100644 --- a/payloads/libpayload/arch/arm/exception.c +++ b/payloads/libpayload/arch/arm/exception.c @@ -34,6 +34,8 @@ void exception_test(void); static int test_abort; +uint8_t exception_stack[0x100] __attribute__((aligned(8))); +extern void *exception_stack_end; void exception_undefined_instruction(uint32_t *); void exception_software_interrupt(uint32_t *); @@ -167,6 +169,7 @@ void exception_init(void) extern uint32_t exception_table[]; set_vbar((uintptr_t)exception_table); + exception_stack_end = exception_stack + sizeof(exception_stack); test_abort = 1; exception_test(); diff --git a/payloads/libpayload/arch/arm/exception_asm.S b/payloads/libpayload/arch/arm/exception_asm.S index 163fdbd52a..a877f033d7 100644 --- a/payloads/libpayload/arch/arm/exception_asm.S +++ b/payloads/libpayload/arch/arm/exception_asm.S @@ -27,11 +27,9 @@ * SUCH DAMAGE. */ -exception_stack: - .align 5 - .skip 0x2000, 0xa5 + .global exception_stack_end exception_stack_end: - .word exception_stack_end + .word 0 exception_handler: .word 0 diff --git a/src/arch/arm/armv7/exception.c b/src/arch/arm/armv7/exception.c index 3b32e8bbb1..e6aeadfc29 100644 --- a/src/arch/arm/armv7/exception.c +++ b/src/arch/arm/armv7/exception.c @@ -35,6 +35,8 @@ void exception_test(void); static int test_abort; +uint8_t exception_stack[0x100] __attribute__((aligned(8))); +extern void *exception_stack_end; void exception_undefined_instruction(uint32_t *); void exception_software_interrupt(uint32_t *); @@ -168,6 +170,7 @@ void exception_init(void) extern uint32_t exception_table[]; set_vbar((uintptr_t)exception_table); + exception_stack_end = exception_stack + sizeof(exception_stack); test_abort = 1; printk(BIOS_ERR, "Testing exceptions\n"); diff --git a/src/arch/arm/armv7/exception_asm.S b/src/arch/arm/armv7/exception_asm.S index 163fdbd52a..9a0b237e57 100644 --- a/src/arch/arm/armv7/exception_asm.S +++ b/src/arch/arm/armv7/exception_asm.S @@ -27,11 +27,9 @@ * SUCH DAMAGE. */ -exception_stack: - .align 5 - .skip 0x2000, 0xa5 + .global exception_stack_end exception_stack_end: - .word exception_stack_end + .word 0 exception_handler: .word 0