diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-12-01 10:21:25 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2022-12-02 10:25:44 +0100 |
commit | c46fbb955258df3ff3c325dadd1a6c17ee81a914 (patch) | |
tree | 1895f6eb6ffe8cba7928820e98c11df1a92825cc /cpukit | |
parent | bsps/irq: Add bsp_interrupt_get_dispatch_table_slot() (diff) | |
download | rtems-c46fbb955258df3ff3c325dadd1a6c17ee81a914.tar.bz2 |
config: Add CONFIGURE_RECORD_INTERRUPTS_ENABLED
This enables the tracing of interrupt entry/exit events through an
application configuration option. The interrupt processing can be
viewed with Trace Compass using rtems-record-lttng from the RTEMS Tools.
Update #4769.
Diffstat (limited to '')
-rw-r--r-- | cpukit/doxygen/appl-config.h | 23 | ||||
-rw-r--r-- | cpukit/include/rtems/confdefs/extensions.h | 8 | ||||
-rw-r--r-- | cpukit/include/rtems/record.h | 2 |
3 files changed, 33 insertions, 0 deletions
diff --git a/cpukit/doxygen/appl-config.h b/cpukit/doxygen/appl-config.h index 88cd03d328..964f8d0616 100644 --- a/cpukit/doxygen/appl-config.h +++ b/cpukit/doxygen/appl-config.h @@ -1911,6 +1911,29 @@ */ #define CONFIGURE_RECORD_FATAL_DUMP_BASE64_ZLIB +/* Generated from spec:/acfg/if/record-interrupts-enabled */ + +/** + * @brief This configuration option is a boolean feature define. + * + * In case + * + * * this configuration option is defined + * + * * and #CONFIGURE_RECORD_PER_PROCESSOR_ITEMS is properly defined, + * + * then the interrupt event recording is enabled. + * + * @par Default Configuration + * If this configuration option is undefined, then the described feature is not + * enabled. + * + * @par Notes + * The interrupt event recording generates interrupt entry and exit events when + * interrupt entries are dispatched. + */ +#define CONFIGURE_RECORD_INTERRUPTS_ENABLED + /* Generated from spec:/acfg/if/record-per-processor-items */ /** diff --git a/cpukit/include/rtems/confdefs/extensions.h b/cpukit/include/rtems/confdefs/extensions.h index 118ad29484..a369ef1f61 100644 --- a/cpukit/include/rtems/confdefs/extensions.h +++ b/cpukit/include/rtems/confdefs/extensions.h @@ -188,6 +188,14 @@ extern "C" { RTEMS_SYSINIT_RECORD, RTEMS_SYSINIT_ORDER_MIDDLE ); + + #ifdef CONFIGURE_RECORD_INTERRUPTS_ENABLED + RTEMS_SYSINIT_ITEM( + _Record_Interrupt_initialize, + RTEMS_SYSINIT_LAST, + RTEMS_SYSINIT_ORDER_MIDDLE + ); + #endif #endif #ifdef CONFIGURE_VERBOSE_SYSTEM_INITIALIZATION diff --git a/cpukit/include/rtems/record.h b/cpukit/include/rtems/record.h index a8e115ad44..8a84c22bdc 100644 --- a/cpukit/include/rtems/record.h +++ b/cpukit/include/rtems/record.h @@ -67,6 +67,8 @@ extern const Record_Configuration _Record_Configuration; void _Record_Initialize( void ); +void _Record_Interrupt_initialize( void ); + bool _Record_Thread_create( struct _Thread_Control *executing, struct _Thread_Control *created |