RTEMS 6.1-rc5
Loading...
Searching...
No Matches
rtl-trace.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-2-Clause */
2
3/*
4 * COPYRIGHT (c) 2012-2014 Chris Johns <chrisj@rtems.org>
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 *
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
19 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25 * POSSIBILITY OF SUCH DAMAGE.
26 */
35#if !defined (_RTEMS_RTL_TRACE_H_)
36#define _RTEMS_RTL_TRACE_H_
37
38#ifdef __cplusplus
39extern "C" {
40#endif /* __cplusplus */
41
42#include <stdbool.h>
43#include <stdint.h>
44
45#include <rtems/printer.h>
46
50#define RTEMS_RTL_TRACE 1
51
55typedef uint32_t rtems_rtl_trace_mask;
56
60#define RTEMS_RTL_TRACE_DETAIL (1UL << 0)
61#define RTEMS_RTL_TRACE_WARNING (1UL << 1)
62#define RTEMS_RTL_TRACE_LOAD (1UL << 2)
63#define RTEMS_RTL_TRACE_UNLOAD (1UL << 3)
64#define RTEMS_RTL_TRACE_SECTION (1UL << 4)
65#define RTEMS_RTL_TRACE_SYMBOL (1UL << 5)
66#define RTEMS_RTL_TRACE_RELOC (1UL << 6)
67#define RTEMS_RTL_TRACE_GLOBAL_SYM (1UL << 7)
68#define RTEMS_RTL_TRACE_LOAD_SECT (1UL << 8)
69#define RTEMS_RTL_TRACE_ALLOCATOR (1UL << 9)
70#define RTEMS_RTL_TRACE_UNRESOLVED (1UL << 10)
71#define RTEMS_RTL_TRACE_CACHE (1UL << 11)
72#define RTEMS_RTL_TRACE_ARCHIVES (1UL << 12)
73#define RTEMS_RTL_TRACE_ARCHIVE_SYMS (1UL << 13)
74#define RTEMS_RTL_TRACE_DEPENDENCY (1UL << 14)
75#define RTEMS_RTL_TRACE_BIT_ALLOC (1UL << 15)
76#define RTEMS_RTL_TRACE_COMP (1UL << 16)
77#define RTEMS_RTL_TRACE_ALL (0xffffffffUL & ~(RTEMS_RTL_TRACE_CACHE | \
78 RTEMS_RTL_TRACE_COMP | \
79 RTEMS_RTL_TRACE_GLOBAL_SYM | \
80 RTEMS_RTL_TRACE_ARCHIVE_SYMS))
81
90#if RTEMS_RTL_TRACE
92#else
93#define rtems_rtl_trace(_m) (0)
94#endif
95
102#if RTEMS_RTL_TRACE
104#else
105#define rtems_rtl_trace_set_mask(_m)
106#endif
107
114#if RTEMS_RTL_TRACE
116#else
117#define rtems_rtl_trace_clear_mask(_m)
118#endif
119
123#if RTEMS_RTL_TRACE
125 int argc,
126 char* argv[]);
127#endif
128
129#ifdef __cplusplus
130}
131#endif /* __cplusplus */
132
133#endif
User print interface to the bspIO print plug in.
uint32_t rtems_rtl_trace_mask
Definition: rtl-trace.h:55
rtems_rtl_trace_mask rtems_rtl_trace_set_mask(rtems_rtl_trace_mask mask)
rtems_rtl_trace_mask rtems_rtl_trace_clear_mask(rtems_rtl_trace_mask mask)
bool rtems_rtl_trace(rtems_rtl_trace_mask mask)
int rtems_rtl_trace_shell_command(const rtems_printer *printer, int argc, char *argv[])
Definition: printer.h:76