Back to home page

LXR

 
 

    


File indexing completed on 2025-05-11 08:24:13

0001 /*
0002  * SPDX-License-Identifier: BSD-2-Clause
0003  *
0004  * Copyright (C) 2018, 2024 embedded brains GmbH & Co. KG
0005  *
0006  * Redistribution and use in source and binary forms, with or without
0007  * modification, are permitted provided that the following conditions
0008  * are met:
0009  * 1. Redistributions of source code must retain the above copyright
0010  *    notice, this list of conditions and the following disclaimer.
0011  * 2. Redistributions in binary form must reproduce the above copyright
0012  *    notice, this list of conditions and the following disclaimer in the
0013  *    documentation and/or other materials provided with the distribution.
0014  *
0015  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
0016  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
0017  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
0018  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
0019  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
0020  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
0021  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
0022  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
0023  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
0024  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
0025  * POSSIBILITY OF SUCH DAMAGE.
0026  */
0027 
0028 /*
0029  * This file must be compatible to general purpose POSIX system, e.g. Linux,
0030  * FreeBSD.  It may be used for utility programs.
0031  */
0032 
0033 #ifndef _RTEMS_RECORDDATA_H
0034 #define _RTEMS_RECORDDATA_H
0035 
0036 #include <stdint.h>
0037 
0038 #ifdef __cplusplus
0039 extern "C" {
0040 #endif /* __cplusplus */
0041 
0042 /**
0043  * @defgroup RTEMSRecord Event Recording
0044  *
0045  * @ingroup RTEMSAPITracing
0046  *
0047  * @brief Low-level event recording support.
0048  *
0049  * @{
0050  */
0051 
0052 /**
0053  * @brief The record version.
0054  *
0055  * The record version reflects the record event definitions.  It is reported by
0056  * the RTEMS_RECORD_VERSION event.
0057  */
0058 #define RTEMS_RECORD_THE_VERSION 10
0059 
0060 /**
0061  * @brief The items are in 32-bit little-endian format.
0062  */
0063 #define RTEMS_RECORD_FORMAT_LE_32 0x11111111
0064 
0065 /**
0066  * @brief The items are in 64-bit little-endian format.
0067  */
0068 #define RTEMS_RECORD_FORMAT_LE_64 0x22222222
0069 
0070 /**
0071  * @brief The items are in 32-bit big-endian format.
0072  */
0073 #define RTEMS_RECORD_FORMAT_BE_32 0x33333333
0074 
0075 /**
0076  * @brief The items are in 64-bit big-endian format.
0077  */
0078 #define RTEMS_RECORD_FORMAT_BE_64 0x44444444
0079 
0080 /**
0081  * @brief Magic number to identify a record item stream.
0082  *
0083  * This is a random number.
0084  */
0085 #define RTEMS_RECORD_MAGIC 0x82e14ec1
0086 
0087 /**
0088  * @brief The record events.
0089  */
0090 typedef enum {
0091   /*
0092    * There are 512 events reserved for the system.  The system events from
0093    * RTEMS_RECORD_EMPTY up to and including RTEMS_RECORD_NO_TIME_LAST, may not
0094    * have a time stamp.
0095    */
0096   RTEMS_RECORD_EMPTY,
0097   RTEMS_RECORD_VERSION,
0098 
0099   /*
0100    * Keep the following system events in lexicographical order, increment
0101    * RTEMS_RECORD_THE_VERSION after each change.  The events below may not have
0102    * a time stamp.  Update RTEMS_RECORD_NO_TIME_LAST after changes if
0103    * necessary.
0104    */
0105   RTEMS_RECORD_ARCH,
0106   RTEMS_RECORD_BSP,
0107   RTEMS_RECORD_FREQUENCY,
0108   RTEMS_RECORD_MULTILIB,
0109   RTEMS_RECORD_PER_CPU_COUNT,
0110   RTEMS_RECORD_PER_CPU_DISCARD,
0111   RTEMS_RECORD_PER_CPU_OVERFLOW,
0112   RTEMS_RECORD_PROCESSOR,
0113   RTEMS_RECORD_PROCESSOR_MAXIMUM,
0114   RTEMS_RECORD_THREAD_ID,
0115   RTEMS_RECORD_THREAD_NAME,
0116   RTEMS_RECORD_TIME_ADJUSTMENT,
0117   RTEMS_RECORD_TOOLS,
0118   RTEMS_RECORD_UNRELIABLE_TIME,
0119   RTEMS_RECORD_VERSION_CONTROL_KEY,
0120 
0121   /*
0122    * Keep the following system events in lexicographical order, increment
0123    * RTEMS_RECORD_THE_VERSION after each change.
0124    */
0125   RTEMS_RECORD_ACCEPT_ENTRY,
0126   RTEMS_RECORD_ACCEPT_EXIT,
0127   RTEMS_RECORD_ADDRESS,
0128   RTEMS_RECORD_ALIGNED_ALLOC_ENTRY,
0129   RTEMS_RECORD_ALIGNED_ALLOC_EXIT,
0130   RTEMS_RECORD_ARG_0,
0131   RTEMS_RECORD_ARG_1,
0132   RTEMS_RECORD_ARG_2,
0133   RTEMS_RECORD_ARG_3,
0134   RTEMS_RECORD_ARG_4,
0135   RTEMS_RECORD_ARG_5,
0136   RTEMS_RECORD_ARG_6,
0137   RTEMS_RECORD_ARG_7,
0138   RTEMS_RECORD_ARG_8,
0139   RTEMS_RECORD_ARG_9,
0140   RTEMS_RECORD_BIND_ENTRY,
0141   RTEMS_RECORD_BIND_EXIT,
0142   RTEMS_RECORD_BUFFER,
0143   RTEMS_RECORD_CALLER,
0144   RTEMS_RECORD_CALLOC_ENTRY,
0145   RTEMS_RECORD_CALLOC_EXIT,
0146   RTEMS_RECORD_CHOWN_ENTRY,
0147   RTEMS_RECORD_CHOWN_EXIT,
0148   RTEMS_RECORD_CLOSE_ENTRY,
0149   RTEMS_RECORD_CLOSE_EXIT,
0150   RTEMS_RECORD_CONNECT_ENTRY,
0151   RTEMS_RECORD_CONNECT_EXIT,
0152   RTEMS_RECORD_ETHER_INPUT,
0153   RTEMS_RECORD_ETHER_OUTPUT,
0154   RTEMS_RECORD_ERRNO,
0155   RTEMS_RECORD_FATAL_CODE,
0156   RTEMS_RECORD_FATAL_SOURCE,
0157   RTEMS_RECORD_FCHMOD_ENTRY,
0158   RTEMS_RECORD_FCHMOD_EXIT,
0159   RTEMS_RECORD_FCNTL_ENTRY,
0160   RTEMS_RECORD_FCNTL_EXIT,
0161   RTEMS_RECORD_FDATASYNC_ENTRY,
0162   RTEMS_RECORD_FDATASYNC_EXIT,
0163   RTEMS_RECORD_FREE_ENTRY,
0164   RTEMS_RECORD_FREE_EXIT,
0165   RTEMS_RECORD_FSTAT_ENTRY,
0166   RTEMS_RECORD_FSTAT_EXIT,
0167   RTEMS_RECORD_FSYNC_ENTRY,
0168   RTEMS_RECORD_FSYNC_EXIT,
0169   RTEMS_RECORD_FTRUNCATE_ENTRY,
0170   RTEMS_RECORD_FTRUNCATE_EXIT,
0171   RTEMS_RECORD_FUNCTION_ENTRY,
0172   RTEMS_RECORD_FUNCTION_EXIT,
0173   RTEMS_RECORD_GETSOCKOPT_ENTRY,
0174   RTEMS_RECORD_GETSOCKOPT_EXIT,
0175   RTEMS_RECORD_HEAP_ALLOC,
0176   RTEMS_RECORD_HEAP_FREE,
0177   RTEMS_RECORD_HEAP_SIZE,
0178   RTEMS_RECORD_HEAP_USAGE,
0179   RTEMS_RECORD_INTERRUPT_ENTRY,
0180   RTEMS_RECORD_INTERRUPT_EXIT,
0181   RTEMS_RECORD_INTERRUPT_INSTALL,
0182   RTEMS_RECORD_INTERRUPT_REMOVE,
0183   RTEMS_RECORD_INTERRUPT_SERVER_ENTRY,
0184   RTEMS_RECORD_INTERRUPT_SERVER_EXIT,
0185   RTEMS_RECORD_INTERRUPT_SERVER_INSTALL,
0186   RTEMS_RECORD_INTERRUPT_SERVER_MOVE,
0187   RTEMS_RECORD_INTERRUPT_SERVER_REMOVE,
0188   RTEMS_RECORD_INTERRUPT_SERVER_TRIGGER,
0189   RTEMS_RECORD_IOCTL_ENTRY,
0190   RTEMS_RECORD_IOCTL_EXIT,
0191   RTEMS_RECORD_IP6_INPUT,
0192   RTEMS_RECORD_IP6_OUTPUT,
0193   RTEMS_RECORD_IP_INPUT,
0194   RTEMS_RECORD_IP_OUTPUT,
0195   RTEMS_RECORD_ISR_DISABLE,
0196   RTEMS_RECORD_ISR_ENABLE,
0197   RTEMS_RECORD_ISR_LOCK_ACQUIRE_ENTRY,
0198   RTEMS_RECORD_ISR_LOCK_ACQUIRE_EXIT,
0199   RTEMS_RECORD_ISR_LOCK_ADDRESS,
0200   RTEMS_RECORD_ISR_LOCK_DESTROY,
0201   RTEMS_RECORD_ISR_LOCK_INITIALIZE,
0202   RTEMS_RECORD_ISR_LOCK_NAME,
0203   RTEMS_RECORD_ISR_LOCK_RELEASE,
0204   RTEMS_RECORD_KEVENT_ENTRY,
0205   RTEMS_RECORD_KEVENT_EXIT,
0206   RTEMS_RECORD_KQUEUE_ENTRY,
0207   RTEMS_RECORD_KQUEUE_EXIT,
0208   RTEMS_RECORD_LENGTH,
0209   RTEMS_RECORD_LINE,
0210   RTEMS_RECORD_LINK_ENTRY,
0211   RTEMS_RECORD_LINK_EXIT,
0212   RTEMS_RECORD_LISTEN_ENTRY,
0213   RTEMS_RECORD_LISTEN_EXIT,
0214   RTEMS_RECORD_LSEEK_ENTRY,
0215   RTEMS_RECORD_LSEEK_EXIT,
0216   RTEMS_RECORD_MALLOC_ENTRY,
0217   RTEMS_RECORD_MALLOC_EXIT,
0218   RTEMS_RECORD_MEMORY,
0219   RTEMS_RECORD_MKNOD_ENTRY,
0220   RTEMS_RECORD_MKNOD_EXIT,
0221   RTEMS_RECORD_MMAP_ENTRY,
0222   RTEMS_RECORD_MMAP_EXIT,
0223   RTEMS_RECORD_MOUNT_ENTRY,
0224   RTEMS_RECORD_MOUNT_EXIT,
0225   RTEMS_RECORD_OPEN_ENTRY,
0226   RTEMS_RECORD_OPEN_EXIT,
0227   RTEMS_RECORD_PAGE_ALLOC,
0228   RTEMS_RECORD_PAGE_FREE,
0229   RTEMS_RECORD_POLL_ENTRY,
0230   RTEMS_RECORD_POLL_EXIT,
0231   RTEMS_RECORD_POSIX_MEMALIGN_ENTRY,
0232   RTEMS_RECORD_POSIX_MEMALIGN_EXIT,
0233   RTEMS_RECORD_READ_ENTRY,
0234   RTEMS_RECORD_READ_EXIT,
0235   RTEMS_RECORD_READLINK_ENTRY,
0236   RTEMS_RECORD_READLINK_EXIT,
0237   RTEMS_RECORD_READV_ENTRY,
0238   RTEMS_RECORD_READV_EXIT,
0239   RTEMS_RECORD_REALLOC_ENTRY,
0240   RTEMS_RECORD_REALLOC_EXIT,
0241   RTEMS_RECORD_RECV_ENTRY,
0242   RTEMS_RECORD_RECV_EXIT,
0243   RTEMS_RECORD_RECVFROM_ENTRY,
0244   RTEMS_RECORD_RECVFROM_EXIT,
0245   RTEMS_RECORD_RECVMSG_ENTRY,
0246   RTEMS_RECORD_RECVMSG_EXIT,
0247   RTEMS_RECORD_REGISTERS,
0248   RTEMS_RECORD_RENAME_ENTRY,
0249   RTEMS_RECORD_RENAME_EXIT,
0250   RTEMS_RECORD_RETURN_0,
0251   RTEMS_RECORD_RETURN_1,
0252   RTEMS_RECORD_RETURN_2,
0253   RTEMS_RECORD_RETURN_3,
0254   RTEMS_RECORD_RETURN_4,
0255   RTEMS_RECORD_RETURN_5,
0256   RTEMS_RECORD_RETURN_6,
0257   RTEMS_RECORD_RETURN_7,
0258   RTEMS_RECORD_RETURN_8,
0259   RTEMS_RECORD_RETURN_9,
0260   RTEMS_RECORD_RTEMS_BARRIER_CREATE,
0261   RTEMS_RECORD_RTEMS_BARRIER_DELETE,
0262   RTEMS_RECORD_RTEMS_BARRIER_RELEASE,
0263   RTEMS_RECORD_RTEMS_BARRIER_WAIT,
0264   RTEMS_RECORD_RTEMS_CALLOC_ENTRY,
0265   RTEMS_RECORD_RTEMS_CALLOC_EXIT,
0266   RTEMS_RECORD_RTEMS_EVENT_RECEIVE,
0267   RTEMS_RECORD_RTEMS_EVENT_SEND,
0268   RTEMS_RECORD_RTEMS_EVENT_SYSTEM_RECEIVE,
0269   RTEMS_RECORD_RTEMS_EVENT_SYSTEM_SEND,
0270   RTEMS_RECORD_RTEMS_MALLOC_ENTRY,
0271   RTEMS_RECORD_RTEMS_MALLOC_EXIT,
0272   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_BROADCAST,
0273   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_CREATE,
0274   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_DELETE,
0275   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_FLUSH,
0276   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_RECEIVE,
0277   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_SEND,
0278   RTEMS_RECORD_RTEMS_MESSAGE_QUEUE_URGENT,
0279   RTEMS_RECORD_RTEMS_PARTITION_CREATE,
0280   RTEMS_RECORD_RTEMS_PARTITION_DELETE,
0281   RTEMS_RECORD_RTEMS_PARTITION_GET_BUFFER,
0282   RTEMS_RECORD_RTEMS_PARTITION_RETURN_BUFFER,
0283   RTEMS_RECORD_RTEMS_RATE_MONOTONIC_CANCEL,
0284   RTEMS_RECORD_RTEMS_RATE_MONOTONIC_CREATE,
0285   RTEMS_RECORD_RTEMS_RATE_MONOTONIC_DELETE,
0286   RTEMS_RECORD_RTEMS_RATE_MONOTONIC_PERIOD,
0287   RTEMS_RECORD_RTEMS_SEMAPHORE_CREATE,
0288   RTEMS_RECORD_RTEMS_SEMAPHORE_DELETE,
0289   RTEMS_RECORD_RTEMS_SEMAPHORE_FLUSH,
0290   RTEMS_RECORD_RTEMS_SEMAPHORE_OBTAIN,
0291   RTEMS_RECORD_RTEMS_SEMAPHORE_RELEASE,
0292   RTEMS_RECORD_RTEMS_TIMER_CANCEL,
0293   RTEMS_RECORD_RTEMS_TIMER_CREATE,
0294   RTEMS_RECORD_RTEMS_TIMER_DELETE,
0295   RTEMS_RECORD_RTEMS_TIMER_FIRE_AFTER,
0296   RTEMS_RECORD_RTEMS_TIMER_FIRE_WHEN,
0297   RTEMS_RECORD_RTEMS_TIMER_RESET,
0298   RTEMS_RECORD_RTEMS_TIMER_SERVER_FIRE_AFTER,
0299   RTEMS_RECORD_RTEMS_TIMER_SERVER_FIRE_WHEN,
0300   RTEMS_RECORD_SBWAIT_ENTRY,
0301   RTEMS_RECORD_SBWAIT_EXIT,
0302   RTEMS_RECORD_SBWAKEUP_ENTRY,
0303   RTEMS_RECORD_SBWAKEUP_EXIT,
0304   RTEMS_RECORD_SCHEDULER_ADD_PROCESSOR,
0305   RTEMS_RECORD_SCHEDULER_ASK_FOR_HELP,
0306   RTEMS_RECORD_SCHEDULER_BLOCK,
0307   RTEMS_RECORD_SCHEDULER_CANCEL_JOB,
0308   RTEMS_RECORD_SCHEDULER_ID,
0309   RTEMS_RECORD_SCHEDULER_MAP_PRIORITY,
0310   RTEMS_RECORD_SCHEDULER_NAME,
0311   RTEMS_RECORD_SCHEDULER_PIN,
0312   RTEMS_RECORD_SCHEDULER_RECONSIDER_HELP_REQUEST,
0313   RTEMS_RECORD_SCHEDULER_RELEASE_JOB,
0314   RTEMS_RECORD_SCHEDULER_REMOVE_PROCESSOR,
0315   RTEMS_RECORD_SCHEDULER_SCHEDULE,
0316   RTEMS_RECORD_SCHEDULER_SET_AFFINITY,
0317   RTEMS_RECORD_SCHEDULER_TICK,
0318   RTEMS_RECORD_SCHEDULER_UNBLOCK,
0319   RTEMS_RECORD_SCHEDULER_UNMAP_PRIORITY,
0320   RTEMS_RECORD_SCHEDULER_UNPIN,
0321   RTEMS_RECORD_SCHEDULER_UPDATE_PRIORITY,
0322   RTEMS_RECORD_SCHEDULER_WITHDRAW_NODE,
0323   RTEMS_RECORD_SCHEDULER_YIELD,
0324   RTEMS_RECORD_SELECT_ENTRY,
0325   RTEMS_RECORD_SELECT_EXIT,
0326   RTEMS_RECORD_SEND_ENTRY,
0327   RTEMS_RECORD_SEND_EXIT,
0328   RTEMS_RECORD_SENDMSG_ENTRY,
0329   RTEMS_RECORD_SENDMSG_EXIT,
0330   RTEMS_RECORD_SENDTO_ENTRY,
0331   RTEMS_RECORD_SENDTO_EXIT,
0332   RTEMS_RECORD_SETSOCKOPT_ENTRY,
0333   RTEMS_RECORD_SETSOCKOPT_EXIT,
0334   RTEMS_RECORD_SHUTDOWN_ENTRY,
0335   RTEMS_RECORD_SHUTDOWN_EXIT,
0336   RTEMS_RECORD_SOABORT_ENTRY,
0337   RTEMS_RECORD_SOABORT_EXIT,
0338   RTEMS_RECORD_SOACCEPT_ENTRY,
0339   RTEMS_RECORD_SOACCEPT_EXIT,
0340   RTEMS_RECORD_SOALLOC_ENTRY,
0341   RTEMS_RECORD_SOALLOC_EXIT,
0342   RTEMS_RECORD_SOBINDAT_ENTRY,
0343   RTEMS_RECORD_SOBINDAT_EXIT,
0344   RTEMS_RECORD_SOBIND_ENTRY,
0345   RTEMS_RECORD_SOBIND_EXIT,
0346   RTEMS_RECORD_SOCKET_ENTRY,
0347   RTEMS_RECORD_SOCKET_EXIT,
0348   RTEMS_RECORD_SOCLOSE_ENTRY,
0349   RTEMS_RECORD_SOCLOSE_EXIT,
0350   RTEMS_RECORD_SOCONNECT2_ENTRY,
0351   RTEMS_RECORD_SOCONNECT2_EXIT,
0352   RTEMS_RECORD_SOCONNECTAT_ENTRY,
0353   RTEMS_RECORD_SOCONNECTAT_EXIT,
0354   RTEMS_RECORD_SOCREATE_ENTRY,
0355   RTEMS_RECORD_SOCREATE_EXIT,
0356   RTEMS_RECORD_SODEALLOC_ENTRY,
0357   RTEMS_RECORD_SODEALLOC_EXIT,
0358   RTEMS_RECORD_SODISCONNECT_ENTRY,
0359   RTEMS_RECORD_SODISCONNECT_EXIT,
0360   RTEMS_RECORD_SOFREE_ENTRY,
0361   RTEMS_RECORD_SOFREE_EXIT,
0362   RTEMS_RECORD_SOLISTEN_ENTRY,
0363   RTEMS_RECORD_SOLISTEN_EXIT,
0364   RTEMS_RECORD_SONEWCONN_ENTRY,
0365   RTEMS_RECORD_SONEWCONN_EXIT,
0366   RTEMS_RECORD_SORECEIVE_ENTRY,
0367   RTEMS_RECORD_SORECEIVE_EXIT,
0368   RTEMS_RECORD_SORFLUSH_ENTRY,
0369   RTEMS_RECORD_SORFLUSH_EXIT,
0370   RTEMS_RECORD_SOSEND_ENTRY,
0371   RTEMS_RECORD_SOSEND_EXIT,
0372   RTEMS_RECORD_SOSHUTDOWN_ENTRY,
0373   RTEMS_RECORD_SOSHUTDOWN_EXIT,
0374   RTEMS_RECORD_STATVFS_ENTRY,
0375   RTEMS_RECORD_STATVFS_EXIT,
0376   RTEMS_RECORD_SYMLINK_ENTRY,
0377   RTEMS_RECORD_SYMLINK_EXIT,
0378   RTEMS_RECORD_TCP_CLOSE,
0379   RTEMS_RECORD_TCP_INPUT,
0380   RTEMS_RECORD_TCP_OUTPUT,
0381   RTEMS_RECORD_THREAD_BEGIN,
0382   RTEMS_RECORD_THREAD_CONTINUE_ENTRY,
0383   RTEMS_RECORD_THREAD_CONTINUE_EXIT,
0384   RTEMS_RECORD_THREAD_CREATE,
0385   RTEMS_RECORD_THREAD_DELETE,
0386   RTEMS_RECORD_THREAD_DISPATCH_DISABLE,
0387   RTEMS_RECORD_THREAD_DISPATCH_ENABLE,
0388   RTEMS_RECORD_THREAD_EXIT,
0389   RTEMS_RECORD_THREAD_EXITTED,
0390   RTEMS_RECORD_THREAD_PRIO_CURRENT_HIGH,
0391   RTEMS_RECORD_THREAD_PRIO_CURRENT_LOW,
0392   RTEMS_RECORD_THREAD_PRIO_REAL_HIGH,
0393   RTEMS_RECORD_THREAD_PRIO_REAL_LOW,
0394   RTEMS_RECORD_THREAD_QUEUE_ADDRESS,
0395   RTEMS_RECORD_THREAD_QUEUE_DESTROY,
0396   RTEMS_RECORD_THREAD_QUEUE_ENQUEUE,
0397   RTEMS_RECORD_THREAD_QUEUE_ENQUEUE_STICKY,
0398   RTEMS_RECORD_THREAD_QUEUE_EXTRACT,
0399   RTEMS_RECORD_THREAD_QUEUE_ID,
0400   RTEMS_RECORD_THREAD_QUEUE_INITIALIZE,
0401   RTEMS_RECORD_THREAD_QUEUE_NAME,
0402   RTEMS_RECORD_THREAD_QUEUE_SURRENDER,
0403   RTEMS_RECORD_THREAD_QUEUE_SURRENDER_STICKY,
0404   RTEMS_RECORD_THREAD_RESOURCE_OBTAIN,
0405   RTEMS_RECORD_THREAD_RESOURCE_RELEASE,
0406   RTEMS_RECORD_THREAD_RESTART,
0407   RTEMS_RECORD_THREAD_STACK_CURRENT,
0408   RTEMS_RECORD_THREAD_STACK_SIZE,
0409   RTEMS_RECORD_THREAD_STACK_USAGE,
0410   RTEMS_RECORD_THREAD_START,
0411   RTEMS_RECORD_THREAD_STATE_CLEAR,
0412   RTEMS_RECORD_THREAD_STATE_SET,
0413   RTEMS_RECORD_THREAD_SWITCH_IN,
0414   RTEMS_RECORD_THREAD_SWITCH_OUT,
0415   RTEMS_RECORD_THREAD_TERMINATE,
0416   RTEMS_RECORD_THREAD_TIMER_INSERT_MONOTONIC,
0417   RTEMS_RECORD_THREAD_TIMER_INSERT_REALTIME,
0418   RTEMS_RECORD_THREAD_TIMER_INSERT_TICKS,
0419   RTEMS_RECORD_THREAD_TIMER_REMOVE,
0420   RTEMS_RECORD_UDP_INPUT,
0421   RTEMS_RECORD_UDP_OUTPUT,
0422   RTEMS_RECORD_UMA_ALLOC_PTR,
0423   RTEMS_RECORD_UMA_ALLOC_ZONE,
0424   RTEMS_RECORD_UMA_FREE_PTR,
0425   RTEMS_RECORD_UMA_FREE_ZONE,
0426   RTEMS_RECORD_UNLINK_ENTRY,
0427   RTEMS_RECORD_UNLINK_EXIT,
0428   RTEMS_RECORD_UNMOUNT_ENTRY,
0429   RTEMS_RECORD_UNMOUNT_EXIT,
0430   RTEMS_RECORD_UPTIME_HIGH,
0431   RTEMS_RECORD_UPTIME_LOW,
0432   RTEMS_RECORD_WATCHDOG_ADDRESS,
0433   RTEMS_RECORD_WATCHDOG_CPU,
0434   RTEMS_RECORD_WATCHDOG_INITIALIZE,
0435   RTEMS_RECORD_WATCHDOG_INSERT,
0436   RTEMS_RECORD_WATCHDOG_PREINITIALIZE,
0437   RTEMS_RECORD_WATCHDOG_REMOVE,
0438   RTEMS_RECORD_WATCHDOG_ROUTINE,
0439   RTEMS_RECORD_WATCHDOG_STATE,
0440   RTEMS_RECORD_WORKSPACE_ALLOC_ENTRY,
0441   RTEMS_RECORD_WORKSPACE_ALLOC_EXIT,
0442   RTEMS_RECORD_WORKSPACE_FREE_ENTY,
0443   RTEMS_RECORD_WORKSPACE_FREE_EXIT,
0444   RTEMS_RECORD_WORKSPACE_SIZE,
0445   RTEMS_RECORD_WORKSPACE_USAGE,
0446   RTEMS_RECORD_WRITE_ENTRY,
0447   RTEMS_RECORD_WRITE_EXIT,
0448   RTEMS_RECORD_WRITEV_ENTRY,
0449   RTEMS_RECORD_WRITEV_EXIT,
0450 
0451   /* Unused system events */
0452   RTEMS_RECORD_SYSTEM_342,
0453   RTEMS_RECORD_SYSTEM_343,
0454   RTEMS_RECORD_SYSTEM_344,
0455   RTEMS_RECORD_SYSTEM_345,
0456   RTEMS_RECORD_SYSTEM_346,
0457   RTEMS_RECORD_SYSTEM_347,
0458   RTEMS_RECORD_SYSTEM_348,
0459   RTEMS_RECORD_SYSTEM_349,
0460   RTEMS_RECORD_SYSTEM_350,
0461   RTEMS_RECORD_SYSTEM_351,
0462   RTEMS_RECORD_SYSTEM_352,
0463   RTEMS_RECORD_SYSTEM_353,
0464   RTEMS_RECORD_SYSTEM_354,
0465   RTEMS_RECORD_SYSTEM_355,
0466   RTEMS_RECORD_SYSTEM_356,
0467   RTEMS_RECORD_SYSTEM_357,
0468   RTEMS_RECORD_SYSTEM_358,
0469   RTEMS_RECORD_SYSTEM_359,
0470   RTEMS_RECORD_SYSTEM_360,
0471   RTEMS_RECORD_SYSTEM_361,
0472   RTEMS_RECORD_SYSTEM_362,
0473   RTEMS_RECORD_SYSTEM_363,
0474   RTEMS_RECORD_SYSTEM_364,
0475   RTEMS_RECORD_SYSTEM_365,
0476   RTEMS_RECORD_SYSTEM_366,
0477   RTEMS_RECORD_SYSTEM_367,
0478   RTEMS_RECORD_SYSTEM_368,
0479   RTEMS_RECORD_SYSTEM_369,
0480   RTEMS_RECORD_SYSTEM_370,
0481   RTEMS_RECORD_SYSTEM_371,
0482   RTEMS_RECORD_SYSTEM_372,
0483   RTEMS_RECORD_SYSTEM_373,
0484   RTEMS_RECORD_SYSTEM_374,
0485   RTEMS_RECORD_SYSTEM_375,
0486   RTEMS_RECORD_SYSTEM_376,
0487   RTEMS_RECORD_SYSTEM_377,
0488   RTEMS_RECORD_SYSTEM_378,
0489   RTEMS_RECORD_SYSTEM_379,
0490   RTEMS_RECORD_SYSTEM_380,
0491   RTEMS_RECORD_SYSTEM_381,
0492   RTEMS_RECORD_SYSTEM_382,
0493   RTEMS_RECORD_SYSTEM_383,
0494   RTEMS_RECORD_SYSTEM_384,
0495   RTEMS_RECORD_SYSTEM_385,
0496   RTEMS_RECORD_SYSTEM_386,
0497   RTEMS_RECORD_SYSTEM_387,
0498   RTEMS_RECORD_SYSTEM_388,
0499   RTEMS_RECORD_SYSTEM_389,
0500   RTEMS_RECORD_SYSTEM_390,
0501   RTEMS_RECORD_SYSTEM_391,
0502   RTEMS_RECORD_SYSTEM_392,
0503   RTEMS_RECORD_SYSTEM_393,
0504   RTEMS_RECORD_SYSTEM_394,
0505   RTEMS_RECORD_SYSTEM_395,
0506   RTEMS_RECORD_SYSTEM_396,
0507   RTEMS_RECORD_SYSTEM_397,
0508   RTEMS_RECORD_SYSTEM_398,
0509   RTEMS_RECORD_SYSTEM_399,
0510   RTEMS_RECORD_SYSTEM_400,
0511   RTEMS_RECORD_SYSTEM_401,
0512   RTEMS_RECORD_SYSTEM_402,
0513   RTEMS_RECORD_SYSTEM_403,
0514   RTEMS_RECORD_SYSTEM_404,
0515   RTEMS_RECORD_SYSTEM_405,
0516   RTEMS_RECORD_SYSTEM_406,
0517   RTEMS_RECORD_SYSTEM_407,
0518   RTEMS_RECORD_SYSTEM_408,
0519   RTEMS_RECORD_SYSTEM_409,
0520   RTEMS_RECORD_SYSTEM_410,
0521   RTEMS_RECORD_SYSTEM_411,
0522   RTEMS_RECORD_SYSTEM_412,
0523   RTEMS_RECORD_SYSTEM_413,
0524   RTEMS_RECORD_SYSTEM_414,
0525   RTEMS_RECORD_SYSTEM_415,
0526   RTEMS_RECORD_SYSTEM_416,
0527   RTEMS_RECORD_SYSTEM_417,
0528   RTEMS_RECORD_SYSTEM_418,
0529   RTEMS_RECORD_SYSTEM_419,
0530   RTEMS_RECORD_SYSTEM_420,
0531   RTEMS_RECORD_SYSTEM_421,
0532   RTEMS_RECORD_SYSTEM_422,
0533   RTEMS_RECORD_SYSTEM_423,
0534   RTEMS_RECORD_SYSTEM_424,
0535   RTEMS_RECORD_SYSTEM_425,
0536   RTEMS_RECORD_SYSTEM_426,
0537   RTEMS_RECORD_SYSTEM_427,
0538   RTEMS_RECORD_SYSTEM_428,
0539   RTEMS_RECORD_SYSTEM_429,
0540   RTEMS_RECORD_SYSTEM_430,
0541   RTEMS_RECORD_SYSTEM_431,
0542   RTEMS_RECORD_SYSTEM_432,
0543   RTEMS_RECORD_SYSTEM_433,
0544   RTEMS_RECORD_SYSTEM_434,
0545   RTEMS_RECORD_SYSTEM_435,
0546   RTEMS_RECORD_SYSTEM_436,
0547   RTEMS_RECORD_SYSTEM_437,
0548   RTEMS_RECORD_SYSTEM_438,
0549   RTEMS_RECORD_SYSTEM_439,
0550   RTEMS_RECORD_SYSTEM_440,
0551   RTEMS_RECORD_SYSTEM_441,
0552   RTEMS_RECORD_SYSTEM_442,
0553   RTEMS_RECORD_SYSTEM_443,
0554   RTEMS_RECORD_SYSTEM_444,
0555   RTEMS_RECORD_SYSTEM_445,
0556   RTEMS_RECORD_SYSTEM_446,
0557   RTEMS_RECORD_SYSTEM_447,
0558   RTEMS_RECORD_SYSTEM_448,
0559   RTEMS_RECORD_SYSTEM_449,
0560   RTEMS_RECORD_SYSTEM_450,
0561   RTEMS_RECORD_SYSTEM_451,
0562   RTEMS_RECORD_SYSTEM_452,
0563   RTEMS_RECORD_SYSTEM_453,
0564   RTEMS_RECORD_SYSTEM_454,
0565   RTEMS_RECORD_SYSTEM_455,
0566   RTEMS_RECORD_SYSTEM_456,
0567   RTEMS_RECORD_SYSTEM_457,
0568   RTEMS_RECORD_SYSTEM_458,
0569   RTEMS_RECORD_SYSTEM_459,
0570   RTEMS_RECORD_SYSTEM_460,
0571   RTEMS_RECORD_SYSTEM_461,
0572   RTEMS_RECORD_SYSTEM_462,
0573   RTEMS_RECORD_SYSTEM_463,
0574   RTEMS_RECORD_SYSTEM_464,
0575   RTEMS_RECORD_SYSTEM_465,
0576   RTEMS_RECORD_SYSTEM_466,
0577   RTEMS_RECORD_SYSTEM_467,
0578   RTEMS_RECORD_SYSTEM_468,
0579   RTEMS_RECORD_SYSTEM_469,
0580   RTEMS_RECORD_SYSTEM_470,
0581   RTEMS_RECORD_SYSTEM_471,
0582   RTEMS_RECORD_SYSTEM_472,
0583   RTEMS_RECORD_SYSTEM_473,
0584   RTEMS_RECORD_SYSTEM_474,
0585   RTEMS_RECORD_SYSTEM_475,
0586   RTEMS_RECORD_SYSTEM_476,
0587   RTEMS_RECORD_SYSTEM_477,
0588   RTEMS_RECORD_SYSTEM_478,
0589   RTEMS_RECORD_SYSTEM_479,
0590   RTEMS_RECORD_SYSTEM_480,
0591   RTEMS_RECORD_SYSTEM_481,
0592   RTEMS_RECORD_SYSTEM_482,
0593   RTEMS_RECORD_SYSTEM_483,
0594   RTEMS_RECORD_SYSTEM_484,
0595   RTEMS_RECORD_SYSTEM_485,
0596   RTEMS_RECORD_SYSTEM_486,
0597   RTEMS_RECORD_SYSTEM_487,
0598   RTEMS_RECORD_SYSTEM_488,
0599   RTEMS_RECORD_SYSTEM_489,
0600   RTEMS_RECORD_SYSTEM_490,
0601   RTEMS_RECORD_SYSTEM_491,
0602   RTEMS_RECORD_SYSTEM_492,
0603   RTEMS_RECORD_SYSTEM_493,
0604   RTEMS_RECORD_SYSTEM_494,
0605   RTEMS_RECORD_SYSTEM_495,
0606   RTEMS_RECORD_SYSTEM_496,
0607   RTEMS_RECORD_SYSTEM_497,
0608   RTEMS_RECORD_SYSTEM_498,
0609   RTEMS_RECORD_SYSTEM_499,
0610   RTEMS_RECORD_SYSTEM_500,
0611   RTEMS_RECORD_SYSTEM_501,
0612   RTEMS_RECORD_SYSTEM_502,
0613   RTEMS_RECORD_SYSTEM_503,
0614   RTEMS_RECORD_SYSTEM_504,
0615   RTEMS_RECORD_SYSTEM_505,
0616   RTEMS_RECORD_SYSTEM_506,
0617   RTEMS_RECORD_SYSTEM_507,
0618   RTEMS_RECORD_SYSTEM_508,
0619   RTEMS_RECORD_SYSTEM_509,
0620   RTEMS_RECORD_SYSTEM_510,
0621   RTEMS_RECORD_SYSTEM_511,
0622 
0623   /* There are 512 events reserved for the user */
0624   RTEMS_RECORD_USER_0,
0625   RTEMS_RECORD_USER_1,
0626   RTEMS_RECORD_USER_2,
0627   RTEMS_RECORD_USER_3,
0628   RTEMS_RECORD_USER_4,
0629   RTEMS_RECORD_USER_5,
0630   RTEMS_RECORD_USER_6,
0631   RTEMS_RECORD_USER_7,
0632   RTEMS_RECORD_USER_8,
0633   RTEMS_RECORD_USER_9,
0634   RTEMS_RECORD_USER_10,
0635   RTEMS_RECORD_USER_11,
0636   RTEMS_RECORD_USER_12,
0637   RTEMS_RECORD_USER_13,
0638   RTEMS_RECORD_USER_14,
0639   RTEMS_RECORD_USER_15,
0640   RTEMS_RECORD_USER_16,
0641   RTEMS_RECORD_USER_17,
0642   RTEMS_RECORD_USER_18,
0643   RTEMS_RECORD_USER_19,
0644   RTEMS_RECORD_USER_20,
0645   RTEMS_RECORD_USER_21,
0646   RTEMS_RECORD_USER_22,
0647   RTEMS_RECORD_USER_23,
0648   RTEMS_RECORD_USER_24,
0649   RTEMS_RECORD_USER_25,
0650   RTEMS_RECORD_USER_26,
0651   RTEMS_RECORD_USER_27,
0652   RTEMS_RECORD_USER_28,
0653   RTEMS_RECORD_USER_29,
0654   RTEMS_RECORD_USER_30,
0655   RTEMS_RECORD_USER_31,
0656   RTEMS_RECORD_USER_32,
0657   RTEMS_RECORD_USER_33,
0658   RTEMS_RECORD_USER_34,
0659   RTEMS_RECORD_USER_35,
0660   RTEMS_RECORD_USER_36,
0661   RTEMS_RECORD_USER_37,
0662   RTEMS_RECORD_USER_38,
0663   RTEMS_RECORD_USER_39,
0664   RTEMS_RECORD_USER_40,
0665   RTEMS_RECORD_USER_41,
0666   RTEMS_RECORD_USER_42,
0667   RTEMS_RECORD_USER_43,
0668   RTEMS_RECORD_USER_44,
0669   RTEMS_RECORD_USER_45,
0670   RTEMS_RECORD_USER_46,
0671   RTEMS_RECORD_USER_47,
0672   RTEMS_RECORD_USER_48,
0673   RTEMS_RECORD_USER_49,
0674   RTEMS_RECORD_USER_50,
0675   RTEMS_RECORD_USER_51,
0676   RTEMS_RECORD_USER_52,
0677   RTEMS_RECORD_USER_53,
0678   RTEMS_RECORD_USER_54,
0679   RTEMS_RECORD_USER_55,
0680   RTEMS_RECORD_USER_56,
0681   RTEMS_RECORD_USER_57,
0682   RTEMS_RECORD_USER_58,
0683   RTEMS_RECORD_USER_59,
0684   RTEMS_RECORD_USER_60,
0685   RTEMS_RECORD_USER_61,
0686   RTEMS_RECORD_USER_62,
0687   RTEMS_RECORD_USER_63,
0688   RTEMS_RECORD_USER_64,
0689   RTEMS_RECORD_USER_65,
0690   RTEMS_RECORD_USER_66,
0691   RTEMS_RECORD_USER_67,
0692   RTEMS_RECORD_USER_68,
0693   RTEMS_RECORD_USER_69,
0694   RTEMS_RECORD_USER_70,
0695   RTEMS_RECORD_USER_71,
0696   RTEMS_RECORD_USER_72,
0697   RTEMS_RECORD_USER_73,
0698   RTEMS_RECORD_USER_74,
0699   RTEMS_RECORD_USER_75,
0700   RTEMS_RECORD_USER_76,
0701   RTEMS_RECORD_USER_77,
0702   RTEMS_RECORD_USER_78,
0703   RTEMS_RECORD_USER_79,
0704   RTEMS_RECORD_USER_80,
0705   RTEMS_RECORD_USER_81,
0706   RTEMS_RECORD_USER_82,
0707   RTEMS_RECORD_USER_83,
0708   RTEMS_RECORD_USER_84,
0709   RTEMS_RECORD_USER_85,
0710   RTEMS_RECORD_USER_86,
0711   RTEMS_RECORD_USER_87,
0712   RTEMS_RECORD_USER_88,
0713   RTEMS_RECORD_USER_89,
0714   RTEMS_RECORD_USER_90,
0715   RTEMS_RECORD_USER_91,
0716   RTEMS_RECORD_USER_92,
0717   RTEMS_RECORD_USER_93,
0718   RTEMS_RECORD_USER_94,
0719   RTEMS_RECORD_USER_95,
0720   RTEMS_RECORD_USER_96,
0721   RTEMS_RECORD_USER_97,
0722   RTEMS_RECORD_USER_98,
0723   RTEMS_RECORD_USER_99,
0724   RTEMS_RECORD_USER_100,
0725   RTEMS_RECORD_USER_101,
0726   RTEMS_RECORD_USER_102,
0727   RTEMS_RECORD_USER_103,
0728   RTEMS_RECORD_USER_104,
0729   RTEMS_RECORD_USER_105,
0730   RTEMS_RECORD_USER_106,
0731   RTEMS_RECORD_USER_107,
0732   RTEMS_RECORD_USER_108,
0733   RTEMS_RECORD_USER_109,
0734   RTEMS_RECORD_USER_110,
0735   RTEMS_RECORD_USER_111,
0736   RTEMS_RECORD_USER_112,
0737   RTEMS_RECORD_USER_113,
0738   RTEMS_RECORD_USER_114,
0739   RTEMS_RECORD_USER_115,
0740   RTEMS_RECORD_USER_116,
0741   RTEMS_RECORD_USER_117,
0742   RTEMS_RECORD_USER_118,
0743   RTEMS_RECORD_USER_119,
0744   RTEMS_RECORD_USER_120,
0745   RTEMS_RECORD_USER_121,
0746   RTEMS_RECORD_USER_122,
0747   RTEMS_RECORD_USER_123,
0748   RTEMS_RECORD_USER_124,
0749   RTEMS_RECORD_USER_125,
0750   RTEMS_RECORD_USER_126,
0751   RTEMS_RECORD_USER_127,
0752   RTEMS_RECORD_USER_128,
0753   RTEMS_RECORD_USER_129,
0754   RTEMS_RECORD_USER_130,
0755   RTEMS_RECORD_USER_131,
0756   RTEMS_RECORD_USER_132,
0757   RTEMS_RECORD_USER_133,
0758   RTEMS_RECORD_USER_134,
0759   RTEMS_RECORD_USER_135,
0760   RTEMS_RECORD_USER_136,
0761   RTEMS_RECORD_USER_137,
0762   RTEMS_RECORD_USER_138,
0763   RTEMS_RECORD_USER_139,
0764   RTEMS_RECORD_USER_140,
0765   RTEMS_RECORD_USER_141,
0766   RTEMS_RECORD_USER_142,
0767   RTEMS_RECORD_USER_143,
0768   RTEMS_RECORD_USER_144,
0769   RTEMS_RECORD_USER_145,
0770   RTEMS_RECORD_USER_146,
0771   RTEMS_RECORD_USER_147,
0772   RTEMS_RECORD_USER_148,
0773   RTEMS_RECORD_USER_149,
0774   RTEMS_RECORD_USER_150,
0775   RTEMS_RECORD_USER_151,
0776   RTEMS_RECORD_USER_152,
0777   RTEMS_RECORD_USER_153,
0778   RTEMS_RECORD_USER_154,
0779   RTEMS_RECORD_USER_155,
0780   RTEMS_RECORD_USER_156,
0781   RTEMS_RECORD_USER_157,
0782   RTEMS_RECORD_USER_158,
0783   RTEMS_RECORD_USER_159,
0784   RTEMS_RECORD_USER_160,
0785   RTEMS_RECORD_USER_161,
0786   RTEMS_RECORD_USER_162,
0787   RTEMS_RECORD_USER_163,
0788   RTEMS_RECORD_USER_164,
0789   RTEMS_RECORD_USER_165,
0790   RTEMS_RECORD_USER_166,
0791   RTEMS_RECORD_USER_167,
0792   RTEMS_RECORD_USER_168,
0793   RTEMS_RECORD_USER_169,
0794   RTEMS_RECORD_USER_170,
0795   RTEMS_RECORD_USER_171,
0796   RTEMS_RECORD_USER_172,
0797   RTEMS_RECORD_USER_173,
0798   RTEMS_RECORD_USER_174,
0799   RTEMS_RECORD_USER_175,
0800   RTEMS_RECORD_USER_176,
0801   RTEMS_RECORD_USER_177,
0802   RTEMS_RECORD_USER_178,
0803   RTEMS_RECORD_USER_179,
0804   RTEMS_RECORD_USER_180,
0805   RTEMS_RECORD_USER_181,
0806   RTEMS_RECORD_USER_182,
0807   RTEMS_RECORD_USER_183,
0808   RTEMS_RECORD_USER_184,
0809   RTEMS_RECORD_USER_185,
0810   RTEMS_RECORD_USER_186,
0811   RTEMS_RECORD_USER_187,
0812   RTEMS_RECORD_USER_188,
0813   RTEMS_RECORD_USER_189,
0814   RTEMS_RECORD_USER_190,
0815   RTEMS_RECORD_USER_191,
0816   RTEMS_RECORD_USER_192,
0817   RTEMS_RECORD_USER_193,
0818   RTEMS_RECORD_USER_194,
0819   RTEMS_RECORD_USER_195,
0820   RTEMS_RECORD_USER_196,
0821   RTEMS_RECORD_USER_197,
0822   RTEMS_RECORD_USER_198,
0823   RTEMS_RECORD_USER_199,
0824   RTEMS_RECORD_USER_200,
0825   RTEMS_RECORD_USER_201,
0826   RTEMS_RECORD_USER_202,
0827   RTEMS_RECORD_USER_203,
0828   RTEMS_RECORD_USER_204,
0829   RTEMS_RECORD_USER_205,
0830   RTEMS_RECORD_USER_206,
0831   RTEMS_RECORD_USER_207,
0832   RTEMS_RECORD_USER_208,
0833   RTEMS_RECORD_USER_209,
0834   RTEMS_RECORD_USER_210,
0835   RTEMS_RECORD_USER_211,
0836   RTEMS_RECORD_USER_212,
0837   RTEMS_RECORD_USER_213,
0838   RTEMS_RECORD_USER_214,
0839   RTEMS_RECORD_USER_215,
0840   RTEMS_RECORD_USER_216,
0841   RTEMS_RECORD_USER_217,
0842   RTEMS_RECORD_USER_218,
0843   RTEMS_RECORD_USER_219,
0844   RTEMS_RECORD_USER_220,
0845   RTEMS_RECORD_USER_221,
0846   RTEMS_RECORD_USER_222,
0847   RTEMS_RECORD_USER_223,
0848   RTEMS_RECORD_USER_224,
0849   RTEMS_RECORD_USER_225,
0850   RTEMS_RECORD_USER_226,
0851   RTEMS_RECORD_USER_227,
0852   RTEMS_RECORD_USER_228,
0853   RTEMS_RECORD_USER_229,
0854   RTEMS_RECORD_USER_230,
0855   RTEMS_RECORD_USER_231,
0856   RTEMS_RECORD_USER_232,
0857   RTEMS_RECORD_USER_233,
0858   RTEMS_RECORD_USER_234,
0859   RTEMS_RECORD_USER_235,
0860   RTEMS_RECORD_USER_236,
0861   RTEMS_RECORD_USER_237,
0862   RTEMS_RECORD_USER_238,
0863   RTEMS_RECORD_USER_239,
0864   RTEMS_RECORD_USER_240,
0865   RTEMS_RECORD_USER_241,
0866   RTEMS_RECORD_USER_242,
0867   RTEMS_RECORD_USER_243,
0868   RTEMS_RECORD_USER_244,
0869   RTEMS_RECORD_USER_245,
0870   RTEMS_RECORD_USER_246,
0871   RTEMS_RECORD_USER_247,
0872   RTEMS_RECORD_USER_248,
0873   RTEMS_RECORD_USER_249,
0874   RTEMS_RECORD_USER_250,
0875   RTEMS_RECORD_USER_251,
0876   RTEMS_RECORD_USER_252,
0877   RTEMS_RECORD_USER_253,
0878   RTEMS_RECORD_USER_254,
0879   RTEMS_RECORD_USER_255,
0880   RTEMS_RECORD_USER_256,
0881   RTEMS_RECORD_USER_257,
0882   RTEMS_RECORD_USER_258,
0883   RTEMS_RECORD_USER_259,
0884   RTEMS_RECORD_USER_260,
0885   RTEMS_RECORD_USER_261,
0886   RTEMS_RECORD_USER_262,
0887   RTEMS_RECORD_USER_263,
0888   RTEMS_RECORD_USER_264,
0889   RTEMS_RECORD_USER_265,
0890   RTEMS_RECORD_USER_266,
0891   RTEMS_RECORD_USER_267,
0892   RTEMS_RECORD_USER_268,
0893   RTEMS_RECORD_USER_269,
0894   RTEMS_RECORD_USER_270,
0895   RTEMS_RECORD_USER_271,
0896   RTEMS_RECORD_USER_272,
0897   RTEMS_RECORD_USER_273,
0898   RTEMS_RECORD_USER_274,
0899   RTEMS_RECORD_USER_275,
0900   RTEMS_RECORD_USER_276,
0901   RTEMS_RECORD_USER_277,
0902   RTEMS_RECORD_USER_278,
0903   RTEMS_RECORD_USER_279,
0904   RTEMS_RECORD_USER_280,
0905   RTEMS_RECORD_USER_281,
0906   RTEMS_RECORD_USER_282,
0907   RTEMS_RECORD_USER_283,
0908   RTEMS_RECORD_USER_284,
0909   RTEMS_RECORD_USER_285,
0910   RTEMS_RECORD_USER_286,
0911   RTEMS_RECORD_USER_287,
0912   RTEMS_RECORD_USER_288,
0913   RTEMS_RECORD_USER_289,
0914   RTEMS_RECORD_USER_290,
0915   RTEMS_RECORD_USER_291,
0916   RTEMS_RECORD_USER_292,
0917   RTEMS_RECORD_USER_293,
0918   RTEMS_RECORD_USER_294,
0919   RTEMS_RECORD_USER_295,
0920   RTEMS_RECORD_USER_296,
0921   RTEMS_RECORD_USER_297,
0922   RTEMS_RECORD_USER_298,
0923   RTEMS_RECORD_USER_299,
0924   RTEMS_RECORD_USER_300,
0925   RTEMS_RECORD_USER_301,
0926   RTEMS_RECORD_USER_302,
0927   RTEMS_RECORD_USER_303,
0928   RTEMS_RECORD_USER_304,
0929   RTEMS_RECORD_USER_305,
0930   RTEMS_RECORD_USER_306,
0931   RTEMS_RECORD_USER_307,
0932   RTEMS_RECORD_USER_308,
0933   RTEMS_RECORD_USER_309,
0934   RTEMS_RECORD_USER_310,
0935   RTEMS_RECORD_USER_311,
0936   RTEMS_RECORD_USER_312,
0937   RTEMS_RECORD_USER_313,
0938   RTEMS_RECORD_USER_314,
0939   RTEMS_RECORD_USER_315,
0940   RTEMS_RECORD_USER_316,
0941   RTEMS_RECORD_USER_317,
0942   RTEMS_RECORD_USER_318,
0943   RTEMS_RECORD_USER_319,
0944   RTEMS_RECORD_USER_320,
0945   RTEMS_RECORD_USER_321,
0946   RTEMS_RECORD_USER_322,
0947   RTEMS_RECORD_USER_323,
0948   RTEMS_RECORD_USER_324,
0949   RTEMS_RECORD_USER_325,
0950   RTEMS_RECORD_USER_326,
0951   RTEMS_RECORD_USER_327,
0952   RTEMS_RECORD_USER_328,
0953   RTEMS_RECORD_USER_329,
0954   RTEMS_RECORD_USER_330,
0955   RTEMS_RECORD_USER_331,
0956   RTEMS_RECORD_USER_332,
0957   RTEMS_RECORD_USER_333,
0958   RTEMS_RECORD_USER_334,
0959   RTEMS_RECORD_USER_335,
0960   RTEMS_RECORD_USER_336,
0961   RTEMS_RECORD_USER_337,
0962   RTEMS_RECORD_USER_338,
0963   RTEMS_RECORD_USER_339,
0964   RTEMS_RECORD_USER_340,
0965   RTEMS_RECORD_USER_341,
0966   RTEMS_RECORD_USER_342,
0967   RTEMS_RECORD_USER_343,
0968   RTEMS_RECORD_USER_344,
0969   RTEMS_RECORD_USER_345,
0970   RTEMS_RECORD_USER_346,
0971   RTEMS_RECORD_USER_347,
0972   RTEMS_RECORD_USER_348,
0973   RTEMS_RECORD_USER_349,
0974   RTEMS_RECORD_USER_350,
0975   RTEMS_RECORD_USER_351,
0976   RTEMS_RECORD_USER_352,
0977   RTEMS_RECORD_USER_353,
0978   RTEMS_RECORD_USER_354,
0979   RTEMS_RECORD_USER_355,
0980   RTEMS_RECORD_USER_356,
0981   RTEMS_RECORD_USER_357,
0982   RTEMS_RECORD_USER_358,
0983   RTEMS_RECORD_USER_359,
0984   RTEMS_RECORD_USER_360,
0985   RTEMS_RECORD_USER_361,
0986   RTEMS_RECORD_USER_362,
0987   RTEMS_RECORD_USER_363,
0988   RTEMS_RECORD_USER_364,
0989   RTEMS_RECORD_USER_365,
0990   RTEMS_RECORD_USER_366,
0991   RTEMS_RECORD_USER_367,
0992   RTEMS_RECORD_USER_368,
0993   RTEMS_RECORD_USER_369,
0994   RTEMS_RECORD_USER_370,
0995   RTEMS_RECORD_USER_371,
0996   RTEMS_RECORD_USER_372,
0997   RTEMS_RECORD_USER_373,
0998   RTEMS_RECORD_USER_374,
0999   RTEMS_RECORD_USER_375,
1000   RTEMS_RECORD_USER_376,
1001   RTEMS_RECORD_USER_377,
1002   RTEMS_RECORD_USER_378,
1003   RTEMS_RECORD_USER_379,
1004   RTEMS_RECORD_USER_380,
1005   RTEMS_RECORD_USER_381,
1006   RTEMS_RECORD_USER_382,
1007   RTEMS_RECORD_USER_383,
1008   RTEMS_RECORD_USER_384,
1009   RTEMS_RECORD_USER_385,
1010   RTEMS_RECORD_USER_386,
1011   RTEMS_RECORD_USER_387,
1012   RTEMS_RECORD_USER_388,
1013   RTEMS_RECORD_USER_389,
1014   RTEMS_RECORD_USER_390,
1015   RTEMS_RECORD_USER_391,
1016   RTEMS_RECORD_USER_392,
1017   RTEMS_RECORD_USER_393,
1018   RTEMS_RECORD_USER_394,
1019   RTEMS_RECORD_USER_395,
1020   RTEMS_RECORD_USER_396,
1021   RTEMS_RECORD_USER_397,
1022   RTEMS_RECORD_USER_398,
1023   RTEMS_RECORD_USER_399,
1024   RTEMS_RECORD_USER_400,
1025   RTEMS_RECORD_USER_401,
1026   RTEMS_RECORD_USER_402,
1027   RTEMS_RECORD_USER_403,
1028   RTEMS_RECORD_USER_404,
1029   RTEMS_RECORD_USER_405,
1030   RTEMS_RECORD_USER_406,
1031   RTEMS_RECORD_USER_407,
1032   RTEMS_RECORD_USER_408,
1033   RTEMS_RECORD_USER_409,
1034   RTEMS_RECORD_USER_410,
1035   RTEMS_RECORD_USER_411,
1036   RTEMS_RECORD_USER_412,
1037   RTEMS_RECORD_USER_413,
1038   RTEMS_RECORD_USER_414,
1039   RTEMS_RECORD_USER_415,
1040   RTEMS_RECORD_USER_416,
1041   RTEMS_RECORD_USER_417,
1042   RTEMS_RECORD_USER_418,
1043   RTEMS_RECORD_USER_419,
1044   RTEMS_RECORD_USER_420,
1045   RTEMS_RECORD_USER_421,
1046   RTEMS_RECORD_USER_422,
1047   RTEMS_RECORD_USER_423,
1048   RTEMS_RECORD_USER_424,
1049   RTEMS_RECORD_USER_425,
1050   RTEMS_RECORD_USER_426,
1051   RTEMS_RECORD_USER_427,
1052   RTEMS_RECORD_USER_428,
1053   RTEMS_RECORD_USER_429,
1054   RTEMS_RECORD_USER_430,
1055   RTEMS_RECORD_USER_431,
1056   RTEMS_RECORD_USER_432,
1057   RTEMS_RECORD_USER_433,
1058   RTEMS_RECORD_USER_434,
1059   RTEMS_RECORD_USER_435,
1060   RTEMS_RECORD_USER_436,
1061   RTEMS_RECORD_USER_437,
1062   RTEMS_RECORD_USER_438,
1063   RTEMS_RECORD_USER_439,
1064   RTEMS_RECORD_USER_440,
1065   RTEMS_RECORD_USER_441,
1066   RTEMS_RECORD_USER_442,
1067   RTEMS_RECORD_USER_443,
1068   RTEMS_RECORD_USER_444,
1069   RTEMS_RECORD_USER_445,
1070   RTEMS_RECORD_USER_446,
1071   RTEMS_RECORD_USER_447,
1072   RTEMS_RECORD_USER_448,
1073   RTEMS_RECORD_USER_449,
1074   RTEMS_RECORD_USER_450,
1075   RTEMS_RECORD_USER_451,
1076   RTEMS_RECORD_USER_452,
1077   RTEMS_RECORD_USER_453,
1078   RTEMS_RECORD_USER_454,
1079   RTEMS_RECORD_USER_455,
1080   RTEMS_RECORD_USER_456,
1081   RTEMS_RECORD_USER_457,
1082   RTEMS_RECORD_USER_458,
1083   RTEMS_RECORD_USER_459,
1084   RTEMS_RECORD_USER_460,
1085   RTEMS_RECORD_USER_461,
1086   RTEMS_RECORD_USER_462,
1087   RTEMS_RECORD_USER_463,
1088   RTEMS_RECORD_USER_464,
1089   RTEMS_RECORD_USER_465,
1090   RTEMS_RECORD_USER_466,
1091   RTEMS_RECORD_USER_467,
1092   RTEMS_RECORD_USER_468,
1093   RTEMS_RECORD_USER_469,
1094   RTEMS_RECORD_USER_470,
1095   RTEMS_RECORD_USER_471,
1096   RTEMS_RECORD_USER_472,
1097   RTEMS_RECORD_USER_473,
1098   RTEMS_RECORD_USER_474,
1099   RTEMS_RECORD_USER_475,
1100   RTEMS_RECORD_USER_476,
1101   RTEMS_RECORD_USER_477,
1102   RTEMS_RECORD_USER_478,
1103   RTEMS_RECORD_USER_479,
1104   RTEMS_RECORD_USER_480,
1105   RTEMS_RECORD_USER_481,
1106   RTEMS_RECORD_USER_482,
1107   RTEMS_RECORD_USER_483,
1108   RTEMS_RECORD_USER_484,
1109   RTEMS_RECORD_USER_485,
1110   RTEMS_RECORD_USER_486,
1111   RTEMS_RECORD_USER_487,
1112   RTEMS_RECORD_USER_488,
1113   RTEMS_RECORD_USER_489,
1114   RTEMS_RECORD_USER_490,
1115   RTEMS_RECORD_USER_491,
1116   RTEMS_RECORD_USER_492,
1117   RTEMS_RECORD_USER_493,
1118   RTEMS_RECORD_USER_494,
1119   RTEMS_RECORD_USER_495,
1120   RTEMS_RECORD_USER_496,
1121   RTEMS_RECORD_USER_497,
1122   RTEMS_RECORD_USER_498,
1123   RTEMS_RECORD_USER_499,
1124   RTEMS_RECORD_USER_500,
1125   RTEMS_RECORD_USER_501,
1126   RTEMS_RECORD_USER_502,
1127   RTEMS_RECORD_USER_503,
1128   RTEMS_RECORD_USER_504,
1129   RTEMS_RECORD_USER_505,
1130   RTEMS_RECORD_USER_506,
1131   RTEMS_RECORD_USER_507,
1132   RTEMS_RECORD_USER_508,
1133   RTEMS_RECORD_USER_509,
1134   RTEMS_RECORD_USER_510,
1135   RTEMS_RECORD_USER_511
1136 } rtems_record_event;
1137 
1138 /**
1139  * @brief This constant represents the last system event number which may have
1140  *   no time stamp.
1141  */
1142 #define RTEMS_RECORD_NO_TIME_LAST RTEMS_RECORD_VERSION_CONTROL_KEY
1143 
1144 #define RTEMS_RECORD_LAST RTEMS_RECORD_USER_511
1145 
1146 #define RTEMS_RECORD_USER( index ) ( RTEMS_RECORD_USER_0 + ( index ) )
1147 
1148 /**
1149  * @brief Bits in the record item event member reserved for the actual event.
1150  */
1151 #define RTEMS_RECORD_EVENT_BITS 10
1152 
1153 /**
1154  * @brief Bits in the record item event member reserved for the time of the
1155  * event.
1156  */
1157 #define RTEMS_RECORD_TIME_BITS 22
1158 
1159 /**
1160  * @brief Builds a time event for the specified time stamp and event.
1161  *
1162  * The events are stored in the record item with a time stamp.  There are 22
1163  * bits allocated to the time stamp and 10 bits allocated to the event.  The 22
1164  * bits are enough to get reliable time stamps on a system with a 4GHz CPU
1165  * counter and a 1000Hz clock tick.
1166  */
1167 #define RTEMS_RECORD_TIME_EVENT( time, event ) \
1168   ( ( ( time ) << RTEMS_RECORD_EVENT_BITS ) | ( event ) )
1169 
1170 /**
1171  * @brief Gets the time of a time event.
1172  */
1173 #define RTEMS_RECORD_GET_TIME( time_event ) \
1174   ( ( time_event ) >> RTEMS_RECORD_EVENT_BITS )
1175 
1176 /**
1177  * @brief Gets the event of a time event.
1178  */
1179 #define RTEMS_RECORD_GET_EVENT( time_event ) \
1180   ( ( time_event ) & ( ( 1U << RTEMS_RECORD_EVENT_BITS ) - 1U ) )
1181 
1182 /**
1183  * @brief The record data integer type.
1184  *
1185  * It is big enough to store 32-bit integers and pointers.
1186  */
1187 typedef unsigned long rtems_record_data;
1188 
1189 /**
1190  * @brief The native record item.
1191  */
1192 typedef struct __attribute__((__packed__)) {
1193   uint32_t          event;
1194   rtems_record_data data;
1195 } rtems_record_item;
1196 
1197 /**
1198  * @brief The 32-bit format record item.
1199  */
1200 typedef struct {
1201   uint32_t event;
1202   uint32_t data;
1203 } rtems_record_item_32;
1204 
1205 /**
1206  * @brief The 64-bit format record item.
1207  */
1208 typedef struct __attribute__((__packed__)) {
1209   uint32_t event;
1210   uint64_t data;
1211 } rtems_record_item_64;
1212 
1213 const char *rtems_record_event_text( rtems_record_event event );
1214 
1215 /** @} */
1216 
1217 #ifdef __cplusplus
1218 }
1219 #endif /* __cplusplus */
1220 
1221 #endif /* _RTEMS_RECORDDATA_H */