* [PATCH] clk: Add clk_min/max_rate entries in debugfs
@ 2019-06-27 15:21 Leonard Crestez
2019-06-27 15:34 ` Geert Uytterhoeven
0 siblings, 1 reply; 2+ messages in thread
From: Leonard Crestez @ 2019-06-27 15:21 UTC (permalink / raw)
To: Stephen Boyd, Geert Uytterhoeven
Cc: Michael Turquette, Greg Kroah-Hartman, Rafael J. Wysocki,
linux-clk, linux-imx, linux-arm-kernel
Add two files to expose min/max clk rates as determined by
clk_core_get_boundaries, taking all consumer requests into account.
This information does not appear to be otherwise exposed to userspace.
Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
---
drivers/clk/clk.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index fbf63daa62bc..a51d8ffb2d40 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -3031,10 +3031,34 @@ static int clk_duty_cycle_show(struct seq_file *s, void *data)
return 0;
}
DEFINE_SHOW_ATTRIBUTE(clk_duty_cycle);
+static int clk_min_rate_show(struct seq_file *s, void *data)
+{
+ struct clk_core *core = s->private;
+ unsigned long min_rate, max_rate;
+
+ clk_core_get_boundaries(core, &min_rate, &max_rate);
+ seq_printf(s, "%lu\n", min_rate);
+
+ return 0;
+}
+DEFINE_SHOW_ATTRIBUTE(clk_min_rate);
+
+static int clk_max_rate_show(struct seq_file *s, void *data)
+{
+ struct clk_core *core = s->private;
+ unsigned long min_rate, max_rate;
+
+ clk_core_get_boundaries(core, &min_rate, &max_rate);
+ seq_printf(s, "%lu\n", max_rate);
+
+ return 0;
+}
+DEFINE_SHOW_ATTRIBUTE(clk_max_rate);
+
static void clk_debug_create_one(struct clk_core *core, struct dentry *pdentry)
{
struct dentry *root;
if (!core || !pdentry)
@@ -3042,10 +3066,12 @@ static void clk_debug_create_one(struct clk_core *core, struct dentry *pdentry)
root = debugfs_create_dir(core->name, pdentry);
core->dentry = root;
debugfs_create_ulong("clk_rate", 0444, root, &core->rate);
+ debugfs_create_file("clk_min_rate", 0444, root, core, &clk_min_rate_fops);
+ debugfs_create_file("clk_max_rate", 0444, root, core, &clk_max_rate_fops);
debugfs_create_ulong("clk_accuracy", 0444, root, &core->accuracy);
debugfs_create_u32("clk_phase", 0444, root, &core->phase);
debugfs_create_file("clk_flags", 0444, root, core, &clk_flags_fops);
debugfs_create_u32("clk_prepare_count", 0444, root, &core->prepare_count);
debugfs_create_u32("clk_enable_count", 0444, root, &core->enable_count);
--
2.17.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] clk: Add clk_min/max_rate entries in debugfs
2019-06-27 15:21 [PATCH] clk: Add clk_min/max_rate entries in debugfs Leonard Crestez
@ 2019-06-27 15:34 ` Geert Uytterhoeven
0 siblings, 0 replies; 2+ messages in thread
From: Geert Uytterhoeven @ 2019-06-27 15:34 UTC (permalink / raw)
To: Leonard Crestez
Cc: Stephen Boyd, Geert Uytterhoeven, Michael Turquette,
Greg Kroah-Hartman, Rafael J. Wysocki, linux-clk, NXP Linux Team,
Linux ARM
Hi Leonard,
On Thu, Jun 27, 2019 at 5:22 PM Leonard Crestez <leonard.crestez@nxp.com> wrote:
> Add two files to expose min/max clk rates as determined by
> clk_core_get_boundaries, taking all consumer requests into account.
>
> This information does not appear to be otherwise exposed to userspace.
>
> Signed-off-by: Leonard Crestez <leonard.crestez@nxp.com>
Thanks for your patch!
> --- a/drivers/clk/clk.c
> +++ b/drivers/clk/clk.c
> @@ -3031,10 +3031,34 @@ static int clk_duty_cycle_show(struct seq_file *s, void *data)
>
> return 0;
> }
> DEFINE_SHOW_ATTRIBUTE(clk_duty_cycle);
>
> +static int clk_min_rate_show(struct seq_file *s, void *data)
> +{
> + struct clk_core *core = s->private;
> + unsigned long min_rate, max_rate;
> +
> + clk_core_get_boundaries(core, &min_rate, &max_rate);
Probably you should clk_prepare_lock() first?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-06-27 15:34 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-27 15:21 [PATCH] clk: Add clk_min/max_rate entries in debugfs Leonard Crestez
2019-06-27 15:34 ` Geert Uytterhoeven
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).