diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-08-08 11:54:03 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-11-10 10:06:12 +0100 |
commit | 4dcd8a583e8137d17ec2e081ab2eae04a1d663f3 (patch) | |
tree | aa5be43ece9e9f93ac40064da0288a551654e109 | |
parent | f80a6327d9a3fc89acd9c601ce36bf3c4884e838 (diff) |
bsps/sparc: Remove BSP_POWER_DOWN_AT_FATAL_HALT
Remove the BSP_POWER_DOWN_AT_FATAL_HALT BSP option. Applications should
do the customization of the system termination with an initial fatal
extension.
-rw-r--r-- | bsps/sparc/leon3/start/bsp_fatal_halt.c | 31 | ||||
-rw-r--r-- | bsps/sparc/shared/start/bsp_fatal_halt.c | 33 | ||||
-rw-r--r-- | cpukit/score/cpu/sparc/syscall.S | 2 | ||||
-rw-r--r-- | spec/build/bsps/sparc/erc32/bsperc32.yml | 3 | ||||
-rw-r--r-- | spec/build/bsps/sparc/erc32/optpwrdwnhlt.yml | 15 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon2/grp.yml | 2 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon2/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon2/optpwrdwnhlt.yml | 15 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon3/grp.yml | 2 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon3/obj.yml | 1 | ||||
-rw-r--r-- | spec/build/bsps/sparc/leon3/optpwrdwnhlt.yml | 15 |
11 files changed, 2 insertions, 118 deletions
diff --git a/bsps/sparc/leon3/start/bsp_fatal_halt.c b/bsps/sparc/leon3/start/bsp_fatal_halt.c deleted file mode 100644 index 750b4c20e9..0000000000 --- a/bsps/sparc/leon3/start/bsp_fatal_halt.c +++ /dev/null @@ -1,31 +0,0 @@ -/** - * @file - * @ingroup sparc_leon3 - * @brief LEON3 BSP Fatal_halt handler. - * - * COPYRIGHT (c) 2014. - * Aeroflex Gaisler AB. - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include <bsp.h> -#include <bsp/leon3.h> -#include <rtems/score/cpuimpl.h> - -void _CPU_Fatal_halt( uint32_t source, CPU_Uint32ptr error ) -{ -#ifdef BSP_POWER_DOWN_AT_FATAL_HALT - /* Power down LEON CPU on fatal error exit */ - sparc_disable_interrupts(); - leon3_power_down_loop(); -#else - /* - * Return to debugger, simulator, hypervisor or similar by exiting - * with an error code. g1=1, g2=FATAL_SOURCE, G3=error-code. - */ - sparc_syscall_exit(source, error); -#endif -} diff --git a/bsps/sparc/shared/start/bsp_fatal_halt.c b/bsps/sparc/shared/start/bsp_fatal_halt.c deleted file mode 100644 index f53275a073..0000000000 --- a/bsps/sparc/shared/start/bsp_fatal_halt.c +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @file - * @ingroup RTEMSBSPsSPARCShared - * @brief ERC32/LEON2 BSP Fatal_halt handler. - * - * COPYRIGHT (c) 2014. - * Aeroflex Gaisler AB. - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include <bsp.h> -#include <rtems/score/cpuimpl.h> - -void _CPU_Fatal_halt( uint32_t source, CPU_Uint32ptr error ) -{ -#ifdef BSP_POWER_DOWN_AT_FATAL_HALT - /* Spin CPU on fatal error exit */ - uint32_t level = sparc_disable_interrupts(); - - __asm__ volatile ( "mov %0, %%g1 " : "=r" (level) : "0" (level) ); - - while (1) ; /* loop forever */ -#else - /* - * Return to debugger, simulator, hypervisor or similar by exiting - * with an error code. g1=1, g2=FATAL_SOURCE, G3=error-code. - */ - sparc_syscall_exit(source, error); -#endif -} diff --git a/cpukit/score/cpu/sparc/syscall.S b/cpukit/score/cpu/sparc/syscall.S index 737a501098..9bc73fb851 100644 --- a/cpukit/score/cpu/sparc/syscall.S +++ b/cpukit/score/cpu/sparc/syscall.S @@ -44,8 +44,10 @@ SYM(syscall): ta 0 ! syscall 1, halt with %g1,%g2,%g3 info PUBLIC(sparc_syscall_exit) + PUBLIC(_CPU_Fatal_halt) SYM(sparc_syscall_exit): +SYM(_CPU_Fatal_halt): mov SYS_exit, %g1 mov %o0, %g2 ! Additional exit code 1 diff --git a/spec/build/bsps/sparc/erc32/bsperc32.yml b/spec/build/bsps/sparc/erc32/bsperc32.yml index 304426b64e..3877b02c0a 100644 --- a/spec/build/bsps/sparc/erc32/bsperc32.yml +++ b/spec/build/bsps/sparc/erc32/bsperc32.yml @@ -37,8 +37,6 @@ links: - role: build-dependency uid: optconirq - role: build-dependency - uid: optpwrdwnhlt -- role: build-dependency uid: ../grp - role: build-dependency uid: ../start @@ -70,5 +68,4 @@ source: - bsps/sparc/shared/irq/bsp_isr_handler.c - bsps/sparc/shared/irq/irq-shared.c - bsps/sparc/shared/start/bsp_fatal_exit.c -- bsps/sparc/shared/start/bsp_fatal_halt.c type: build diff --git a/spec/build/bsps/sparc/erc32/optpwrdwnhlt.yml b/spec/build/bsps/sparc/erc32/optpwrdwnhlt.yml deleted file mode 100644 index 6627a5b071..0000000000 --- a/spec/build/bsps/sparc/erc32/optpwrdwnhlt.yml +++ /dev/null @@ -1,15 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -actions: -- get-boolean: null -- define-condition: null -build-type: option -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -default: false -default-by-variant: [] -description: | - If defined, CPU is spinning on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc. -enabled-by: true -links: [] -name: BSP_POWER_DOWN_AT_FATAL_HALT -type: build diff --git a/spec/build/bsps/sparc/leon2/grp.yml b/spec/build/bsps/sparc/leon2/grp.yml index d1ecdc0217..2c60711b9a 100644 --- a/spec/build/bsps/sparc/leon2/grp.yml +++ b/spec/build/bsps/sparc/leon2/grp.yml @@ -31,8 +31,6 @@ links: - role: build-dependency uid: optconirq - role: build-dependency - uid: optpwrdwnhlt -- role: build-dependency uid: ../start - role: build-dependency uid: ../../bspopts diff --git a/spec/build/bsps/sparc/leon2/obj.yml b/spec/build/bsps/sparc/leon2/obj.yml index c8d2995677..3c94389617 100644 --- a/spec/build/bsps/sparc/leon2/obj.yml +++ b/spec/build/bsps/sparc/leon2/obj.yml @@ -46,5 +46,4 @@ source: - bsps/sparc/shared/irq/bsp_isr_handler.c - bsps/sparc/shared/irq/irq-shared.c - bsps/sparc/shared/start/bsp_fatal_exit.c -- bsps/sparc/shared/start/bsp_fatal_halt.c type: build diff --git a/spec/build/bsps/sparc/leon2/optpwrdwnhlt.yml b/spec/build/bsps/sparc/leon2/optpwrdwnhlt.yml deleted file mode 100644 index 6627a5b071..0000000000 --- a/spec/build/bsps/sparc/leon2/optpwrdwnhlt.yml +++ /dev/null @@ -1,15 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -actions: -- get-boolean: null -- define-condition: null -build-type: option -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -default: false -default-by-variant: [] -description: | - If defined, CPU is spinning on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc. -enabled-by: true -links: [] -name: BSP_POWER_DOWN_AT_FATAL_HALT -type: build diff --git a/spec/build/bsps/sparc/leon3/grp.yml b/spec/build/bsps/sparc/leon3/grp.yml index 2e47d9fc30..65ecd20f5b 100644 --- a/spec/build/bsps/sparc/leon3/grp.yml +++ b/spec/build/bsps/sparc/leon3/grp.yml @@ -57,8 +57,6 @@ links: - role: build-dependency uid: optplbfreq - role: build-dependency - uid: optpwrdwnhlt -- role: build-dependency uid: ../start - role: build-dependency uid: ../../bspopts diff --git a/spec/build/bsps/sparc/leon3/obj.yml b/spec/build/bsps/sparc/leon3/obj.yml index b7cce4ae23..78b41c6bff 100644 --- a/spec/build/bsps/sparc/leon3/obj.yml +++ b/spec/build/bsps/sparc/leon3/obj.yml @@ -40,7 +40,6 @@ source: - bsps/sparc/leon3/console/printk_support.c - bsps/sparc/leon3/gnatsupp/gnatsupp.c - bsps/sparc/leon3/start/amba.c -- bsps/sparc/leon3/start/bsp_fatal_halt.c - bsps/sparc/leon3/start/bspclean.c - bsps/sparc/leon3/start/bspdelay.c - bsps/sparc/leon3/start/bspidle.S diff --git a/spec/build/bsps/sparc/leon3/optpwrdwnhlt.yml b/spec/build/bsps/sparc/leon3/optpwrdwnhlt.yml deleted file mode 100644 index 8923870017..0000000000 --- a/spec/build/bsps/sparc/leon3/optpwrdwnhlt.yml +++ /dev/null @@ -1,15 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -actions: -- get-boolean: null -- define-condition: null -build-type: option -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -default: false -default-by-variant: [] -description: | - If defined, CPU is powered down on fatal exit. Otherwise generate system error which will hand over to debugger, simulator, etc. -enabled-by: true -links: [] -name: BSP_POWER_DOWN_AT_FATAL_HALT -type: build |