summaryrefslogtreecommitdiffstats
path: root/cpukit/sapi/include/rtems/fatal.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2012-11-25 17:48:11 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2012-11-27 17:03:40 +0100
commit815994fd17c2f732aacaf273a1e476a62de5f4a6 (patch)
tree17fffb992fcf3e025462215ee3c7515919d2ced4 /cpukit/sapi/include/rtems/fatal.h
parentpowerpc: Add CPU_Exception_frame (diff)
downloadrtems-815994fd17c2f732aacaf273a1e476a62de5f4a6.tar.bz2
score: Add CPU_Exception_frame
Add CPU port type CPU_Exception_frame and function _CPU_Exception_frame_print(). The CPU ports of avr, bfin, h8300, lm32, m32c, m32r, m68k, nios2, sh, sparc64, and v850 use an empty default implementation of _CPU_Exception_frame_print(). Add rtems_exception_frame and rtems_exception_frame_print(). Add RTEMS_FATAL_SOURCE_EXCEPTION for CPU exceptions. Use rtems_fatal() with source RTEMS_FATAL_SOURCE_EXCEPTION in CPU ports of i386, powerpc, and sparc for unexpected exceptions. Add third parameter to RTEMS_BSP_CLEANUP_OPTIONS() which controls the BSP_PRINT_EXCEPTION_CONTEXT define used in the default bsp_fatal_extension(). Add test sptests/spfatal26.
Diffstat (limited to 'cpukit/sapi/include/rtems/fatal.h')
-rw-r--r--cpukit/sapi/include/rtems/fatal.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/cpukit/sapi/include/rtems/fatal.h b/cpukit/sapi/include/rtems/fatal.h
index 66926054b9..64344b36b8 100644
--- a/cpukit/sapi/include/rtems/fatal.h
+++ b/cpukit/sapi/include/rtems/fatal.h
@@ -37,6 +37,23 @@ extern "C" {
*/
/**
+ * @brief Exception frame.
+ */
+typedef CPU_Exception_frame rtems_exception_frame;
+
+/**
+ * @brief Prints the exception frame via printk().
+ *
+ * @see rtems_fatal() and RTEMS_FATAL_SOURCE_EXCEPTION.
+ */
+static inline void rtems_exception_frame_print(
+ const rtems_exception_frame *frame
+)
+{
+ _CPU_Exception_frame_print( frame );
+}
+
+/**
* @brief Invokes the internal error handler with a source of
* INTERNAL_ERROR_RTEMS_API and is internal set to false.
*