BACKPORT: trace: events: add devfreq trace event file
The patch adds a new file for with trace events for devfreq framework. They are used for performance analysis of the framework. It also contains updates in MAINTAINERS file adding new entry for devfreq maintainers. Signed-off-by: Lukasz Luba <l.luba@partner.samsung.com> Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com> Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com> Signed-off-by: UtsavBalar1231 <utsavbalar1231@gmail.com> Change-Id: Id252a3809cd0d210e3af027141b3ff7572fbfcc7
This commit is contained in:
parent
6d9b5bae1b
commit
8addd3815e
@ -4303,6 +4303,7 @@ S: Maintained
|
|||||||
F: drivers/devfreq/
|
F: drivers/devfreq/
|
||||||
F: include/linux/devfreq.h
|
F: include/linux/devfreq.h
|
||||||
F: Documentation/devicetree/bindings/devfreq/
|
F: Documentation/devicetree/bindings/devfreq/
|
||||||
|
F: include/trace/events/devfreq.h
|
||||||
|
|
||||||
DEVICE FREQUENCY EVENT (DEVFREQ-EVENT)
|
DEVICE FREQUENCY EVENT (DEVFREQ-EVENT)
|
||||||
M: Chanwoo Choi <cw00.choi@samsung.com>
|
M: Chanwoo Choi <cw00.choi@samsung.com>
|
||||||
|
40
include/trace/events/devfreq.h
Normal file
40
include/trace/events/devfreq.h
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/* SPDX-License-Identifier: GPL-2.0 */
|
||||||
|
#undef TRACE_SYSTEM
|
||||||
|
#define TRACE_SYSTEM devfreq
|
||||||
|
|
||||||
|
#if !defined(_TRACE_DEVFREQ_H) || defined(TRACE_HEADER_MULTI_READ)
|
||||||
|
#define _TRACE_DEVFREQ_H
|
||||||
|
|
||||||
|
#include <linux/devfreq.h>
|
||||||
|
#include <linux/tracepoint.h>
|
||||||
|
|
||||||
|
TRACE_EVENT(devfreq_monitor,
|
||||||
|
TP_PROTO(struct devfreq *devfreq),
|
||||||
|
|
||||||
|
TP_ARGS(devfreq),
|
||||||
|
|
||||||
|
TP_STRUCT__entry(
|
||||||
|
__field(unsigned long, freq)
|
||||||
|
__field(unsigned long, busy_time)
|
||||||
|
__field(unsigned long, total_time)
|
||||||
|
__field(unsigned int, polling_ms)
|
||||||
|
__string(dev_name, dev_name(&devfreq->dev))
|
||||||
|
),
|
||||||
|
|
||||||
|
TP_fast_assign(
|
||||||
|
__entry->freq = devfreq->previous_freq;
|
||||||
|
__entry->busy_time = devfreq->last_status.busy_time;
|
||||||
|
__entry->total_time = devfreq->last_status.total_time;
|
||||||
|
__entry->polling_ms = devfreq->profile->polling_ms;
|
||||||
|
__assign_str(dev_name, dev_name(&devfreq->dev));
|
||||||
|
),
|
||||||
|
|
||||||
|
TP_printk("dev_name=%s freq=%lu polling_ms=%u load=%lu",
|
||||||
|
__get_str(dev_name), __entry->freq, __entry->polling_ms,
|
||||||
|
__entry->total_time == 0 ? 0 :
|
||||||
|
(100 * __entry->busy_time) / __entry->total_time)
|
||||||
|
);
|
||||||
|
#endif /* _TRACE_DEVFREQ_H */
|
||||||
|
|
||||||
|
/* This part must be outside protection */
|
||||||
|
#include <trace/define_trace.h>
|
Loading…
Reference in New Issue
Block a user