38 lines
1.0 KiB
C
38 lines
1.0 KiB
C
|
|
#define __app__(x, y) str__##x##y
|
|
#define __app(x, y) __app__(x, y)
|
|
|
|
#define TRACE_SYSTEM_STRING __app(TRACE_SYSTEM_VAR,__trace_system_name)
|
|
|
|
#define TRACE_MAKE_SYSTEM_STR() \
|
|
static const char TRACE_SYSTEM_STRING[] = \
|
|
__stringify(TRACE_SYSTEM)
|
|
|
|
TRACE_MAKE_SYSTEM_STR();
|
|
|
|
#undef TRACE_DEFINE_ENUM
|
|
#define TRACE_DEFINE_ENUM(a) \
|
|
static struct trace_eval_map __used __initdata \
|
|
__##TRACE_SYSTEM##_##a = \
|
|
{ \
|
|
.system = TRACE_SYSTEM_STRING, \
|
|
.eval_string = #a, \
|
|
.eval_value = a \
|
|
}; \
|
|
static struct trace_eval_map __used \
|
|
__section("_ftrace_eval_map") \
|
|
*TRACE_SYSTEM##_##a = &__##TRACE_SYSTEM##_##a
|
|
|
|
#undef TRACE_DEFINE_SIZEOF
|
|
#define TRACE_DEFINE_SIZEOF(a) \
|
|
static struct trace_eval_map __used __initdata \
|
|
__##TRACE_SYSTEM##_##a = \
|
|
{ \
|
|
.system = TRACE_SYSTEM_STRING, \
|
|
.eval_string = "sizeof(" #a ")", \
|
|
.eval_value = sizeof(a) \
|
|
}; \
|
|
static struct trace_eval_map __used \
|
|
__section("_ftrace_eval_map") \
|
|
*TRACE_SYSTEM##_##a = &__##TRACE_SYSTEM##_##a
|