summaryrefslogtreecommitdiff
path: root/drivers/interconnect/internal.h
diff options
context:
space:
mode:
authorMike Tipton <quic_mdtipton@quicinc.com>2023-08-07 17:29:14 +0300
committerGeorgi Djakov <djakov@kernel.org>2023-08-22 21:04:50 +0300
commit770c69f037c18cfaa37c3d6c6ef8bd257635513f (patch)
tree488802bd957b41301c9a4b192f518bba2d382aca /drivers/interconnect/internal.h
parent1d13d3b745377f49090882e0482e8786e719a6a4 (diff)
downloadlinux-770c69f037c18cfaa37c3d6c6ef8bd257635513f.tar.xz
interconnect: Add debugfs test client
It's often useful during test, debug, and development to issue path votes from shell. Add a debugfs client for this purpose. Example usage: cd /sys/kernel/debug/interconnect/test-client/ # Configure node endpoints for the path from CPU to DDR on # qcom/sm8550. echo chm_apps > src_node echo ebi > dst_node # Get path between src_node and dst_node. This is only # necessary after updating the node endpoints. echo 1 > get # Set desired BW to 1GBps avg and 2GBps peak. echo 1000000 > avg_bw echo 2000000 > peak_bw # Vote for avg_bw and peak_bw on the latest path from "get". # Voting for multiple paths is possible by repeating this # process for different nodes endpoints. echo 1 > commit Allowing userspace to directly enable and set bus rates can be dangerous So, following in the footsteps of the regmap [0] and clk [1] frameworks, keep these userspace controls compile-time disabled without Kconfig options to enable them. Enabling this will require code changes to define INTERCONNECT_ALLOW_WRITE_DEBUGFS. [0] commit 09c6ecd39410 ("regmap: Add support for writing to regmap registers via debugfs") [1] commit 37215da5553e ("clk: Add support for setting clk_rate via debugfs") Signed-off-by: Mike Tipton <quic_mdtipton@quicinc.com> Link: https://lore.kernel.org/r/20230807142914.12480-4-quic_mdtipton@quicinc.com Signed-off-by: Georgi Djakov <djakov@kernel.org>
Diffstat (limited to 'drivers/interconnect/internal.h')
-rw-r--r--drivers/interconnect/internal.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/interconnect/internal.h b/drivers/interconnect/internal.h
index 95d6ba27bf78..3b2cfd32e449 100644
--- a/drivers/interconnect/internal.h
+++ b/drivers/interconnect/internal.h
@@ -42,5 +42,6 @@ struct icc_path {
};
struct icc_path *icc_get(struct device *dev, const char *src, const char *dst);
+int icc_debugfs_client_init(struct dentry *icc_dir);
#endif