1 /* SPDX-License-Identifier: GPL-2.0 */
3 #define TRACE_SYSTEM power
5 #if !defined(_TRACE_POWER_CPU_MIGRATE_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define _TRACE_POWER_CPU_MIGRATE_H
8 #include <linux/tracepoint.h>
10 #define __cpu_migrate_proto \
11 TP_PROTO(u64 timestamp, \
13 #define __cpu_migrate_args \
17 DECLARE_EVENT_CLASS(cpu_migrate
,
23 __field(u64
, timestamp
)
24 __field(u32
, cpu_hwid
)
28 __entry
->timestamp
= timestamp
;
29 __entry
->cpu_hwid
= cpu_hwid
;
32 TP_printk("timestamp=%llu cpu_hwid=0x%08lX",
33 (unsigned long long)__entry
->timestamp
,
34 (unsigned long)__entry
->cpu_hwid
38 #define __define_cpu_migrate_event(name) \
39 DEFINE_EVENT(cpu_migrate, cpu_migrate_##name, \
40 __cpu_migrate_proto, \
44 __define_cpu_migrate_event(begin
);
45 __define_cpu_migrate_event(finish
);
46 __define_cpu_migrate_event(current
);
48 #undef __define_cpu_migrate
49 #undef __cpu_migrate_proto
50 #undef __cpu_migrate_args
52 /* This file can get included multiple times, TRACE_HEADER_MULTI_READ at top */
53 #ifndef _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING
54 #define _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING
57 * Set from_phys_cpu and to_phys_cpu to CPU_MIGRATE_ALL_CPUS to indicate
58 * a whole-cluster migration:
60 #define CPU_MIGRATE_ALL_CPUS 0x80000000U
63 #endif /* _TRACE_POWER_CPU_MIGRATE_H */
65 /* This part must be outside protection */
66 #undef TRACE_INCLUDE_FILE
67 #define TRACE_INCLUDE_FILE power_cpu_migrate
68 #include <trace/define_trace.h>