opp: Expose of-node's name in debugfs
authorViresh Kumar <viresh.kumar@linaro.org>
Thu, 10 Feb 2022 09:07:53 +0000 (14:37 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Apr 2022 18:59:11 +0000 (20:59 +0200)
[ Upstream commit 021dbecabc93b1610b5db989d52a94e0c6671136 ]

It is difficult to find which OPPs are active at the moment, specially
if there are multiple OPPs with same frequency available in the device
tree (controlled by supported hardware feature).

Expose name of the DT node to find out the exact OPP.

While at it, also expose level field.

Reported-by: Leo Yan <leo.yan@linaro.org>
Tested-by: Leo Yan <leo.yan@linaro.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/opp/debugfs.c
drivers/opp/opp.h

index 596c185..b5f2f9f 100644 (file)
@@ -10,6 +10,7 @@
 #include <linux/debugfs.h>
 #include <linux/device.h>
 #include <linux/err.h>
+#include <linux/of.h>
 #include <linux/init.h>
 #include <linux/limits.h>
 #include <linux/slab.h>
@@ -131,9 +132,13 @@ void opp_debug_create_one(struct dev_pm_opp *opp, struct opp_table *opp_table)
        debugfs_create_bool("suspend", S_IRUGO, d, &opp->suspend);
        debugfs_create_u32("performance_state", S_IRUGO, d, &opp->pstate);
        debugfs_create_ulong("rate_hz", S_IRUGO, d, &opp->rate);
+       debugfs_create_u32("level", S_IRUGO, d, &opp->level);
        debugfs_create_ulong("clock_latency_ns", S_IRUGO, d,
                             &opp->clock_latency_ns);
 
+       opp->of_name = of_node_full_name(opp->np);
+       debugfs_create_str("of_name", S_IRUGO, d, (char **)&opp->of_name);
+
        opp_debug_create_supplies(opp, opp_table, d);
        opp_debug_create_bw(opp, opp_table, d);
 
index 407c3bf..45e3a55 100644 (file)
@@ -96,6 +96,7 @@ struct dev_pm_opp {
 
 #ifdef CONFIG_DEBUG_FS
        struct dentry *dentry;
+       const char *of_name;
 #endif
 };