From 226ee6e172789aa553c2acc69a50d5e242f4cd89 Mon Sep 17 00:00:00 2001 From: Amir Vajid Date: Thu, 9 Apr 2020 12:58:41 -0700 Subject: [PATCH] PM / devfreq: bw_hwmon: add bw_hwmon_debug event Add bw_hwmon_debug ftrace event to improve debugging. Change-Id: Ib10f764b330492fd21ff50931cc6ded6c2ca1ef2 Signed-off-by: Amir Vajid --- drivers/devfreq/governor_bw_hwmon.c | 8 ++++++ include/trace/events/power.h | 38 +++++++++++++++++++++++++++++ kernel/trace/power-traces.c | 1 + 3 files changed, 47 insertions(+) diff --git a/drivers/devfreq/governor_bw_hwmon.c b/drivers/devfreq/governor_bw_hwmon.c index e2c5ed06ce76..665de8557804 100644 --- a/drivers/devfreq/governor_bw_hwmon.c +++ b/drivers/devfreq/governor_bw_hwmon.c @@ -462,6 +462,14 @@ static unsigned long get_bw_and_set_irq(struct hwmon_node *node, *freq, hw->up_wake_mbps, hw->down_wake_mbps); + + trace_bw_hwmon_debug(dev_name(node->hw->df->dev.parent), + req_mbps, + meas_mbps_zone, + node->hist_max_mbps, + node->hist_mem, + node->hyst_mbps, + node->hyst_en); return req_mbps; } diff --git a/include/trace/events/power.h b/include/trace/events/power.h index 6d47fdee7993..0b48a7474441 100644 --- a/include/trace/events/power.h +++ b/include/trace/events/power.h @@ -585,6 +585,44 @@ TRACE_EVENT(bw_hwmon_update, __entry->down_thres) ); +TRACE_EVENT(bw_hwmon_debug, + + TP_PROTO(const char *name, unsigned long mbps, unsigned long zone, + unsigned long hist_max, unsigned long hist_mem, + unsigned long hyst_mbps, unsigned long hyst_len), + + TP_ARGS(name, mbps, zone, hist_max, hist_mem, hyst_mbps, hyst_len), + + TP_STRUCT__entry( + __string(name, name) + __field(unsigned long, mbps) + __field(unsigned long, zone) + __field(unsigned long, hist_max) + __field(unsigned long, hist_mem) + __field(unsigned long, hyst_mbps) + __field(unsigned long, hyst_len) + ), + + TP_fast_assign( + __assign_str(name, name); + __entry->mbps = mbps; + __entry->zone = zone; + __entry->hist_max = hist_max; + __entry->hist_mem = hist_mem; + __entry->hyst_mbps = hyst_mbps; + __entry->hyst_len = hyst_len; + ), + + TP_printk("dev=%s mbps=%lu zone=%lu hist_max=%lu hist_mem=%lu hyst_mbps=%lu hyst_len=%lu", + __get_str(name), + __entry->mbps, + __entry->zone, + __entry->hist_max, + __entry->hist_mem, + __entry->hyst_mbps, + __entry->hyst_len) +); + TRACE_EVENT(cache_hwmon_meas, TP_PROTO(const char *name, unsigned long high_mrps, unsigned long med_mrps, unsigned long low_mrps, diff --git a/kernel/trace/power-traces.c b/kernel/trace/power-traces.c index 95d81de6589e..1f57dc8fee89 100644 --- a/kernel/trace/power-traces.c +++ b/kernel/trace/power-traces.c @@ -25,3 +25,4 @@ EXPORT_TRACEPOINT_SYMBOL(cache_hwmon_update); EXPORT_TRACEPOINT_SYMBOL(cache_hwmon_meas); EXPORT_TRACEPOINT_SYMBOL(bw_hwmon_update); EXPORT_TRACEPOINT_SYMBOL(bw_hwmon_meas); +EXPORT_TRACEPOINT_SYMBOL(bw_hwmon_debug);