summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBipin Ravi <bipin.ravi@arm.com>2023-02-23 23:38:26 +0100
committerTrustedFirmware Code Review <review@review.trustedfirmware.org>2023-02-23 23:38:26 +0100
commitdc2b8e8028c73a4c7a72d138caa26dc447a1d79a (patch)
tree4b7eafb290878679a495f3817b51207a86dd8e7a /include
parent66a387d43786cf06f1b437327a7a5e475aa301c7 (diff)
parent17d07a552b396a282eed52bfd6bac01052a1a978 (diff)
downloadarm-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 'include')
-rw-r--r--include/arch/aarch64/el3_common_macros.S2
-rw-r--r--include/common/debug.h22
2 files changed, 20 insertions, 4 deletions
diff --git a/include/arch/aarch64/el3_common_macros.S b/include/arch/aarch64/el3_common_macros.S
index 40ff05668..7bd927de3 100644
--- a/include/arch/aarch64/el3_common_macros.S
+++ b/include/arch/aarch64/el3_common_macros.S
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015-2022, Arm Limited and Contributors. All rights reserved.
+ * Copyright (c) 2015-2023 Arm Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
diff --git a/include/common/debug.h b/include/common/debug.h
index af47999c3..5ea541da0 100644
--- a/include/common/debug.h
+++ b/include/common/debug.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013-2020, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2013-2023, Arm Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -99,15 +99,31 @@ void backtrace(const char *cookie);
#define backtrace(x)
#endif
-void __dead2 do_panic(void);
+void __dead2 el3_panic(void);
+void __dead2 elx_panic(void);
#define panic() \
do { \
backtrace(__func__); \
console_flush(); \
- do_panic(); \
+ el3_panic(); \
} while (false)
+#if CRASH_REPORTING
+/* --------------------------------------------------------------------
+ * do_lower_el_panic assumes it's called due to a panic from a lower EL
+ * This call will not return.
+ * --------------------------------------------------------------------
+ */
+#define lower_el_panic() \
+ do { \
+ console_flush(); \
+ elx_panic(); \
+ } while (false)
+#else
+#define lower_el_panic()
+#endif
+
/* Function called when stack protection check code detects a corrupted stack */
void __dead2 __stack_chk_fail(void);