From a052181ca2e243540342315cde990b9471331a8e Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 14 Nov 2012 09:59:10 +0100 Subject: score: Add RTEMS_FATAL_SOURCE_EXIT Include in all BSPs. Call rtems_fatal() with RTEMS_FATAL_SOURCE_EXIT as source and the exit() status code as fatal code in every bsp_cleanup(). Move previous bsp_cleanup() code into bsp_fatal_extension(). --- c/src/lib/libbsp/m68k/mvme167/include/bsp.h | 1 + c/src/lib/libbsp/m68k/mvme167/startup/bspclean.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'c/src/lib/libbsp/m68k/mvme167') diff --git a/c/src/lib/libbsp/m68k/mvme167/include/bsp.h b/c/src/lib/libbsp/m68k/mvme167/include/bsp.h index 9a3324a682..f2521e9118 100644 --- a/c/src/lib/libbsp/m68k/mvme167/include/bsp.h +++ b/c/src/lib/libbsp/m68k/mvme167/include/bsp.h @@ -24,6 +24,7 @@ extern "C" { #endif #include +#include #include #include diff --git a/c/src/lib/libbsp/m68k/mvme167/startup/bspclean.c b/c/src/lib/libbsp/m68k/mvme167/startup/bspclean.c index 487ad35442..68e127ff2c 100644 --- a/c/src/lib/libbsp/m68k/mvme167/startup/bspclean.c +++ b/c/src/lib/libbsp/m68k/mvme167/startup/bspclean.c @@ -49,6 +49,16 @@ static void bsp_return_to_monitor_trap( void ) __asm__ volatile( "jmp %0@" : "=a" (start_addr) : "0" (start_addr) ); } +void bsp_fatal_extension( + rtems_fatal_source source, + bool is_internal, + rtems_fatal_code error +) +{ + M68Kvec[ 45 ] = bsp_return_to_monitor_trap; + __asm__ volatile( "trap #13" ); +} + /* * bsp_cleanup * @@ -76,6 +86,5 @@ void bsp_cleanup( uint32_t status ) { - M68Kvec[ 45 ] = bsp_return_to_monitor_trap; - __asm__ volatile( "trap #13" ); + rtems_fatal( RTEMS_FATAL_SOURCE_EXIT, status ); } -- cgit v1.2.3