diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-06-21 11:24:27 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-06-24 11:36:28 +0200 |
commit | d73e657e063e3d34db16fa4bce6c2ab1e5e22ec4 (patch) | |
tree | 1794ed9c294e636b567d8ad2293df63576e6ca0e /c/src/lib/libbsp/sparc | |
parent | sparc: Move ISR handler install routines (diff) | |
download | rtems-d73e657e063e3d34db16fa4bce6c2ab1e5e22ec4.tar.bz2 |
sparc: More reliable bad trap handling
Statically initialize the trap table in start.S to jump to _SPARC_Bad_trap()
for all unexpected traps. This enables a proper RTEMS fatal error handling
right from the start. Do not rely on the stack and register settings which
caused an unexpected trap. Use the ISR stack of the processor to do the fatal
error handling. Save the full context which caused the trap. Fatal error
handler may use it for error logging.
Unify the _CPU_Exception_frame_print() implementations and move it to cpukit.
Update #4459.
Diffstat (limited to '')
-rw-r--r-- | c/src/lib/libbsp/sparc/erc32/Makefile.am | 1 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon2/Makefile.am | 1 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon3/Makefile.am | 1 |
3 files changed, 0 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/sparc/erc32/Makefile.am b/c/src/lib/libbsp/sparc/erc32/Makefile.am index a718284c3a..1c1c35a6b5 100644 --- a/c/src/lib/libbsp/sparc/erc32/Makefile.am +++ b/c/src/lib/libbsp/sparc/erc32/Makefile.am @@ -28,7 +28,6 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/getentropy/getentropy librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/gettargethash-default.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/erc32/start/setvec.c -librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/erc32/start/spurious.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/erc32/start/erc32mec.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/erc32/start/boardinit.S librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/erc32/start/bspidle.c diff --git a/c/src/lib/libbsp/sparc/leon2/Makefile.am b/c/src/lib/libbsp/sparc/leon2/Makefile.am index a2570e1784..b2c55f83ad 100644 --- a/c/src/lib/libbsp/sparc/leon2/Makefile.am +++ b/c/src/lib/libbsp/sparc/leon2/Makefile.am @@ -30,7 +30,6 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/dev/getentropy/getentropy librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/gettargethash-default.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon2/start/setvec.c -librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon2/start/spurious.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon2/start/bspidle.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon2/start/bspdelay.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/shared/start/bsp_fatal_exit.c diff --git a/c/src/lib/libbsp/sparc/leon3/Makefile.am b/c/src/lib/libbsp/sparc/leon3/Makefile.am index c10dbe9467..464f225ab2 100644 --- a/c/src/lib/libbsp/sparc/leon3/Makefile.am +++ b/c/src/lib/libbsp/sparc/leon3/Makefile.am @@ -32,7 +32,6 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/gettargethash-defau librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/shared/start/bspgetworkarea.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/sbrk.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon3/start/setvec.c -librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon3/start/spurious.c librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon3/start/bspidle.S librtemsbsp_a_SOURCES += ../../../../../../bsps/sparc/leon3/start/bspdelay.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/bspreset-empty.c |