1 #undef TRACE_SYSTEM 2 #define TRACE_SYSTEM power 3 4 #if !defined(_TRACE_POWER_CPU_MIGRATE_H) || defined(TRACE_HEADER_MULTI_READ) 5 #define _TRACE_POWER_CPU_MIGRATE_H 6 7 #include <linux/tracepoint.h> 8 9 #define __cpu_migrate_proto \ 10 TP_PROTO(u64 timestamp, \ 11 u32 cpu_hwid) 12 #define __cpu_migrate_args \ 13 TP_ARGS(timestamp, \ 14 cpu_hwid) 15 16 DECLARE_EVENT_CLASS(cpu_migrate, 17 18 __cpu_migrate_proto, 19 __cpu_migrate_args, 20 21 TP_STRUCT__entry( 22 __field(u64, timestamp ) 23 __field(u32, cpu_hwid ) 24 ), 25 26 TP_fast_assign( 27 __entry->timestamp = timestamp; 28 __entry->cpu_hwid = cpu_hwid; 29 ), 30 31 TP_printk("timestamp=%llu cpu_hwid=0x%08lX", 32 (unsigned long long)__entry->timestamp, 33 (unsigned long)__entry->cpu_hwid 34 ) 35 ); 36 37 #define __define_cpu_migrate_event(name) \ 38 DEFINE_EVENT(cpu_migrate, cpu_migrate_##name, \ 39 __cpu_migrate_proto, \ 40 __cpu_migrate_args \ 41 ) 42 43 __define_cpu_migrate_event(begin); 44 __define_cpu_migrate_event(finish); 45 __define_cpu_migrate_event(current); 46 47 #undef __define_cpu_migrate 48 #undef __cpu_migrate_proto 49 #undef __cpu_migrate_args 50 51 /* This file can get included multiple times, TRACE_HEADER_MULTI_READ at top */ 52 #ifndef _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING 53 #define _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING 54 55 /* 56 * Set from_phys_cpu and to_phys_cpu to CPU_MIGRATE_ALL_CPUS to indicate 57 * a whole-cluster migration: 58 */ 59 #define CPU_MIGRATE_ALL_CPUS 0x80000000U 60 #endif 61 62 #endif /* _TRACE_POWER_CPU_MIGRATE_H */ 63 64 /* This part must be outside protection */ 65 #undef TRACE_INCLUDE_FILE 66 #define TRACE_INCLUDE_FILE power_cpu_migrate 67 #include <trace/define_trace.h> 68