RTEMS  5.1
rtl-trace.h
Go to the documentation of this file.
1 /*
2  * COPYRIGHT (c) 2012-2014 Chris Johns <chrisj@rtems.org>
3  *
4  * The license and distribution terms for this file may be
5  * found in the file LICENSE in this distribution or at
6  * http://www.rtems.org/license/LICENSE.
7  */
16 #if !defined (_RTEMS_RTL_TRACE_H_)
17 #define _RTEMS_RTL_TRACE_H_
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif /* __cplusplus */
22 
23 #include <stdbool.h>
24 #include <stdint.h>
25 
26 #include <rtems/printer.h>
27 
31 #define RTEMS_RTL_TRACE 1
32 
36 typedef uint32_t rtems_rtl_trace_mask;
37 
41 #define RTEMS_RTL_TRACE_DETAIL (1UL << 0)
42 #define RTEMS_RTL_TRACE_WARNING (1UL << 1)
43 #define RTEMS_RTL_TRACE_LOAD (1UL << 2)
44 #define RTEMS_RTL_TRACE_UNLOAD (1UL << 3)
45 #define RTEMS_RTL_TRACE_SECTION (1UL << 4)
46 #define RTEMS_RTL_TRACE_SYMBOL (1UL << 5)
47 #define RTEMS_RTL_TRACE_RELOC (1UL << 6)
48 #define RTEMS_RTL_TRACE_GLOBAL_SYM (1UL << 7)
49 #define RTEMS_RTL_TRACE_LOAD_SECT (1UL << 8)
50 #define RTEMS_RTL_TRACE_ALLOCATOR (1UL << 9)
51 #define RTEMS_RTL_TRACE_UNRESOLVED (1UL << 10)
52 #define RTEMS_RTL_TRACE_CACHE (1UL << 11)
53 #define RTEMS_RTL_TRACE_ARCHIVES (1UL << 12)
54 #define RTEMS_RTL_TRACE_ARCHIVE_SYMS (1UL << 13)
55 #define RTEMS_RTL_TRACE_DEPENDENCY (1UL << 14)
56 #define RTEMS_RTL_TRACE_BIT_ALLOC (1UL << 15)
57 #define RTEMS_RTL_TRACE_COMP (1UL << 16)
58 #define RTEMS_RTL_TRACE_ALL (0xffffffffUL & ~(RTEMS_RTL_TRACE_CACHE | \
59  RTEMS_RTL_TRACE_COMP | \
60  RTEMS_RTL_TRACE_GLOBAL_SYM | \
61  RTEMS_RTL_TRACE_ARCHIVE_SYMS))
62 
71 #if RTEMS_RTL_TRACE
73 #else
74 #define rtems_rtl_trace(_m) (0)
75 #endif
76 
83 #if RTEMS_RTL_TRACE
85 #else
86 #define rtems_rtl_trace_set_mask(_m)
87 #endif
88 
95 #if RTEMS_RTL_TRACE
97 #else
98 #define rtems_rtl_trace_clear_mask(_m)
99 #endif
100 
104 #if RTEMS_RTL_TRACE
105 int rtems_rtl_trace_shell_command (const rtems_printer* printer,
106  int argc,
107  char* argv[]);
108 #endif
109 
110 #ifdef __cplusplus
111 }
112 #endif /* __cplusplus */
113 
114 #endif
rtems_rtl_trace_mask rtems_rtl_trace_clear_mask(rtems_rtl_trace_mask mask)
Definition: printer.h:55
uint32_t rtems_rtl_trace_mask
Definition: rtl-trace.h:36
rtems_rtl_trace_mask rtems_rtl_trace_set_mask(rtems_rtl_trace_mask mask)
int rtems_rtl_trace_shell_command(const rtems_printer *printer, int argc, char *argv[])
bool rtems_rtl_trace(rtems_rtl_trace_mask mask)
User print interface to the bspIO print plug in.