thermal: add trace events to the power allocator governor
[deliverable/linux.git] / include / trace / events / thermal.h
CommitLineData
100a8fdb
PA
1#undef TRACE_SYSTEM
2#define TRACE_SYSTEM thermal
3
4#if !defined(_TRACE_THERMAL_H) || defined(TRACE_HEADER_MULTI_READ)
5#define _TRACE_THERMAL_H
6
7#include <linux/thermal.h>
8#include <linux/tracepoint.h>
9
10TRACE_EVENT(thermal_temperature,
11
12 TP_PROTO(struct thermal_zone_device *tz),
13
14 TP_ARGS(tz),
15
16 TP_STRUCT__entry(
17 __string(thermal_zone, tz->type)
18 __field(int, id)
19 __field(int, temp_prev)
20 __field(int, temp)
21 ),
22
23 TP_fast_assign(
24 __assign_str(thermal_zone, tz->type);
25 __entry->id = tz->id;
26 __entry->temp_prev = tz->last_temperature;
27 __entry->temp = tz->temperature;
28 ),
29
30 TP_printk("thermal_zone=%s id=%d temp_prev=%d temp=%d",
31 __get_str(thermal_zone), __entry->id, __entry->temp_prev,
32 __entry->temp)
33);
34
39811569
PA
35TRACE_EVENT(cdev_update,
36
37 TP_PROTO(struct thermal_cooling_device *cdev, unsigned long target),
38
39 TP_ARGS(cdev, target),
40
41 TP_STRUCT__entry(
42 __string(type, cdev->type)
43 __field(unsigned long, target)
44 ),
45
46 TP_fast_assign(
47 __assign_str(type, cdev->type);
48 __entry->target = target;
49 ),
50
51 TP_printk("type=%s target=%lu", __get_str(type), __entry->target)
52);
53
208cd822
PA
54TRACE_EVENT(thermal_zone_trip,
55
56 TP_PROTO(struct thermal_zone_device *tz, int trip,
57 enum thermal_trip_type trip_type),
58
59 TP_ARGS(tz, trip, trip_type),
60
61 TP_STRUCT__entry(
62 __string(thermal_zone, tz->type)
63 __field(int, id)
64 __field(int, trip)
65 __field(enum thermal_trip_type, trip_type)
66 ),
67
68 TP_fast_assign(
69 __assign_str(thermal_zone, tz->type);
70 __entry->id = tz->id;
71 __entry->trip = trip;
72 __entry->trip_type = trip_type;
73 ),
74
75 TP_printk("thermal_zone=%s id=%d trip=%d trip_type=%d",
76 __get_str(thermal_zone), __entry->id, __entry->trip,
77 __entry->trip_type)
78);
79
6828a471
JM
80TRACE_EVENT(thermal_power_cpu_get_power,
81 TP_PROTO(const struct cpumask *cpus, unsigned long freq, u32 *load,
82 size_t load_len, u32 dynamic_power, u32 static_power),
83
84 TP_ARGS(cpus, freq, load, load_len, dynamic_power, static_power),
85
86 TP_STRUCT__entry(
87 __bitmask(cpumask, num_possible_cpus())
88 __field(unsigned long, freq )
89 __dynamic_array(u32, load, load_len)
90 __field(size_t, load_len )
91 __field(u32, dynamic_power )
92 __field(u32, static_power )
93 ),
94
95 TP_fast_assign(
96 __assign_bitmask(cpumask, cpumask_bits(cpus),
97 num_possible_cpus());
98 __entry->freq = freq;
99 memcpy(__get_dynamic_array(load), load,
100 load_len * sizeof(*load));
101 __entry->load_len = load_len;
102 __entry->dynamic_power = dynamic_power;
103 __entry->static_power = static_power;
104 ),
105
106 TP_printk("cpus=%s freq=%lu load={%s} dynamic_power=%d static_power=%d",
107 __get_bitmask(cpumask), __entry->freq,
108 __print_array(__get_dynamic_array(load), __entry->load_len, 4),
109 __entry->dynamic_power, __entry->static_power)
110);
111
112TRACE_EVENT(thermal_power_cpu_limit,
113 TP_PROTO(const struct cpumask *cpus, unsigned int freq,
114 unsigned long cdev_state, u32 power),
115
116 TP_ARGS(cpus, freq, cdev_state, power),
117
118 TP_STRUCT__entry(
119 __bitmask(cpumask, num_possible_cpus())
120 __field(unsigned int, freq )
121 __field(unsigned long, cdev_state)
122 __field(u32, power )
123 ),
124
125 TP_fast_assign(
126 __assign_bitmask(cpumask, cpumask_bits(cpus),
127 num_possible_cpus());
128 __entry->freq = freq;
129 __entry->cdev_state = cdev_state;
130 __entry->power = power;
131 ),
132
133 TP_printk("cpus=%s freq=%u cdev_state=%lu power=%u",
134 __get_bitmask(cpumask), __entry->freq, __entry->cdev_state,
135 __entry->power)
136);
137
100a8fdb
PA
138#endif /* _TRACE_THERMAL_H */
139
140/* This part must be outside protection */
141#include <trace/define_trace.h>
This page took 0.072816 seconds and 5 git commands to generate.