diff options
author | Csókás Bence <csokas.bence@prolan.hu> | 2023-12-19 14:33:18 +0100 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2024-01-11 21:19:25 -0500 |
commit | 29f390bbd5b463676065134e3e58f7a50dbfd8ec (patch) | |
tree | 51caa0401d13e85bc9d7c45d210f6055d91e7a7d /arch/arm/lib | |
parent | 6e75ae1a39431fad9a14d7718582d86d90997545 (diff) |
arm: spl: Use separate fault handlers instead of a single common one
It may be necessary to set breakpoints etc. on a specific fault handler in SPL.
Add a Kconfig option to separate the different handlers into their own individual infinite loops.
Signed-off-by: Csókás Bence <csokas.bence@prolan.hu>
Diffstat (limited to 'arch/arm/lib')
-rw-r--r-- | arch/arm/lib/vectors.S | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/lib/vectors.S b/arch/arm/lib/vectors.S index 843f9b9c28..b6b879339d 100644 --- a/arch/arm/lib/vectors.S +++ b/arch/arm/lib/vectors.S @@ -138,11 +138,29 @@ _fiq: .word fiq #if !CONFIG_IS_ENABLED(SYS_NO_VECTOR_TABLE) .align 5 undefined_instruction: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b undefined_instruction +#endif software_interrupt: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b software_interrupt +#endif prefetch_abort: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b prefetch_abort +#endif data_abort: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b data_abort +#endif not_used: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b not_used +#endif irq: +#if CONFIG_IS_ENABLED(USE_SEPARATE_FAULT_HANDLERS) + b irq +#endif fiq: 1: b 1b /* hang and never return */ |