diff options
author | Bipin Ravi <bipin.ravi@arm.com> | 2023-02-23 23:38:26 +0100 |
---|---|---|
committer | TrustedFirmware Code Review <review@review.trustedfirmware.org> | 2023-02-23 23:38:26 +0100 |
commit | dc2b8e8028c73a4c7a72d138caa26dc447a1d79a (patch) | |
tree | 4b7eafb290878679a495f3817b51207a86dd8e7a /bl31 | |
parent | 66a387d43786cf06f1b437327a7a5e475aa301c7 (diff) | |
parent | 17d07a552b396a282eed52bfd6bac01052a1a978 (diff) | |
download | arm-trusted-firmware-dc2b8e8028c73a4c7a72d138caa26dc447a1d79a.tar.gz |
Merge changes from topic "panic_cleanup" into integration
* changes:
refactor(bl31): use elx_panic for sysreg_handler64
refactor(aarch64): rename do_panic and el3_panic
refactor(aarch64): remove weak links to el3_panic
refactor(aarch64): refactor usage of elx_panic
refactor(aarch64): cleanup HANDLE_EA_EL3_FIRST_NS usage
Diffstat (limited to 'bl31')
-rw-r--r-- | bl31/aarch64/crash_reporting.S | 26 | ||||
-rw-r--r-- | bl31/aarch64/ea_delegate.S | 2 | ||||
-rw-r--r-- | bl31/aarch64/runtime_exceptions.S | 4 |
3 files changed, 12 insertions, 20 deletions
diff --git a/bl31/aarch64/crash_reporting.S b/bl31/aarch64/crash_reporting.S index d56b513b8..4cec1103e 100644 --- a/bl31/aarch64/crash_reporting.S +++ b/bl31/aarch64/crash_reporting.S @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2020, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2014-2023, Arm Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -15,8 +15,8 @@ .globl report_unhandled_exception .globl report_unhandled_interrupt - .globl el3_panic - .globl elx_panic + .globl report_el3_panic + .globl report_elx_panic #if CRASH_REPORTING @@ -64,7 +64,7 @@ intr_excpt_msg: x30_msg: .asciz "x30" excpt_msg_el: - .asciz "Unhandled Exception from EL" + .asciz "Unhandled Exception from lower EL.\n" /* * Helper function to print from crash buf. @@ -194,28 +194,20 @@ endfunc report_unhandled_interrupt /* ----------------------------------------------------- * This function allows to report a crash from the lower * exception level (if crash reporting is enabled) when - * panic() is invoked from C Runtime. + * lower_el_panic() is invoked from C Runtime. * It prints the CPU state via the crash console making * use of 'cpu_context' structure where general purpose * registers are saved and the crash buf. * This function will not return. - * - * x0: Exception level * ----------------------------------------------------- */ -func elx_panic +func report_elx_panic msr spsel, #MODE_SP_ELX - mov x8, x0 /* Print the crash message */ adr x4, excpt_msg_el bl asm_print_str - /* Print exception level */ - add x0, x8, #'0' - bl plat_crash_console_putc - bl asm_print_newline - /* Report x0 - x29 values stored in 'gpregs_ctx' structure */ /* Store the ascii list pointer in x6 */ adr x6, gp_regs @@ -295,7 +287,7 @@ from_el1: mrs x2, sctlr_el1 mrs x1, tcr_el1 b test_pauth -endfunc elx_panic +endfunc report_elx_panic /* ----------------------------------------------------- * This function allows to report a crash (if crash @@ -305,7 +297,7 @@ endfunc elx_panic * will not return. * ----------------------------------------------------- */ -func el3_panic +func report_el3_panic msr spsel, #MODE_SP_ELX prepare_crash_buf_save_x0_x1 adr x0, panic_msg @@ -463,7 +455,7 @@ print_el3_sys_regs: /* Done reporting */ no_ret plat_panic_handler -endfunc el3_panic +endfunc report_el3_panic #else /* CRASH_REPORTING */ func report_unhandled_exception diff --git a/bl31/aarch64/ea_delegate.S b/bl31/aarch64/ea_delegate.S index 83e4582bd..9419476ce 100644 --- a/bl31/aarch64/ea_delegate.S +++ b/bl31/aarch64/ea_delegate.S @@ -190,7 +190,7 @@ func delegate_async_ea */ ubfx x2, x1, #ESR_EC_SHIFT, #ESR_EC_LENGTH cmp x2, EC_SERROR - b.ne do_panic + b.ne el3_panic /* * Check for Implementation Defined Syndrome. If so, skip checking * Uncontainable error type from the syndrome as the format is unknown. diff --git a/bl31/aarch64/runtime_exceptions.S b/bl31/aarch64/runtime_exceptions.S index 4cbcddcfe..500e87b9a 100644 --- a/bl31/aarch64/runtime_exceptions.S +++ b/bl31/aarch64/runtime_exceptions.S @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013-2022, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2013-2023, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -569,7 +569,7 @@ sysreg_handler64: */ tst w0, w0 - b.mi do_panic /* negative return value: panic */ + b.mi elx_panic /* negative return value: panic */ b.eq 1f /* zero: do not change ELR_EL3 */ /* advance the PC to continue after the instruction */ |