diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-11-14 13:59:27 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2012-11-15 15:33:13 +0100 |
commit | dd8df5941321b1bcd7c5b40f7442983b7a3cdc28 (patch) | |
tree | 8bfed6bb34fa010e6842b2cf9ad817b12dec43bc /c/src/lib/libbsp/shared/include | |
parent | score: Add RTEMS_FATAL_SOURCE_BSP_SPECIFIC (diff) | |
download | rtems-dd8df5941321b1bcd7c5b40f7442983b7a3cdc28.tar.bz2 |
bsps: Interrupt initialization error is fatal
Diffstat (limited to 'c/src/lib/libbsp/shared/include')
-rw-r--r-- | c/src/lib/libbsp/shared/include/bootcard.h | 7 | ||||
-rw-r--r-- | c/src/lib/libbsp/shared/include/irq-generic.h | 25 |
2 files changed, 22 insertions, 10 deletions
diff --git a/c/src/lib/libbsp/shared/include/bootcard.h b/c/src/lib/libbsp/shared/include/bootcard.h index 1350bb6138..610f175964 100644 --- a/c/src/lib/libbsp/shared/include/bootcard.h +++ b/c/src/lib/libbsp/shared/include/bootcard.h @@ -51,6 +51,13 @@ extern "C" { */ /** + * @brief Generic BSP fatal error codes. + */ +typedef enum { + BSP_GENERIC_FATAL_INTERRUPT_INITIALIZATION +} bsp_generic_fatal_code; + +/** * @brief Global pointer to the command line of boot_card(). */ extern const char *bsp_boot_cmdline; diff --git a/c/src/lib/libbsp/shared/include/irq-generic.h b/c/src/lib/libbsp/shared/include/irq-generic.h index d7d5cd095a..d365c0c851 100644 --- a/c/src/lib/libbsp/shared/include/irq-generic.h +++ b/c/src/lib/libbsp/shared/include/irq-generic.h @@ -9,12 +9,13 @@ /* * Based on concepts of Pavel Pisa, Till Straumann and Eric Valette. * - * Copyright (c) 2008, 2009, 2010 - * embedded brains GmbH - * Obere Lagerstr. 30 - * D-82178 Puchheim - * Germany - * <rtems@embedded-brains.de> + * Copyright (c) 2008-2012 embedded brains GmbH. + * + * embedded brains GmbH + * Obere Lagerstr. 30 + * 82178 Puchheim + * Germany + * <rtems@embedded-brains.de> * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at @@ -163,11 +164,15 @@ void bsp_interrupt_handler_default(rtems_vector_number vector); * @brief Initialize BSP interrupt support. * * You must call this function before you can install, remove and dispatch - * interrupt handlers. The BSP specific bsp_interrupt_facility_initialize() - * function will be called after all internals are initialized. Initialization - * is complete if everything was successful. + * interrupt handlers. There is no protection against concurrent + * initialization. This function must be called at most once. The BSP + * specific bsp_interrupt_facility_initialize() function will be called after + * all internals are initialized. If the BSP specific initialization fails, + * then this is a fatal error. The fatal error source is + * RTEMS_FATAL_SOURCE_BSP_GENERIC and the fatal error code is + * BSP_GENERIC_FATAL_INTERRUPT_INITIALIZATION. */ -rtems_status_code bsp_interrupt_initialize(void); +void bsp_interrupt_initialize(void); /** * @brief BSP specific initialization. |