Merge branch 'akpm' (patches from Andrew)
[firefly-linux-kernel-4.4.55.git] / include / trace / events / thermal.h
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
10 TRACE_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
35 TRACE_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
54 TRACE_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
80 TRACE_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
112 TRACE_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
138 #endif /* _TRACE_THERMAL_H */
139
140 /* This part must be outside protection */
141 #include <trace/define_trace.h>