CC'ing linaro-dev

On Tue, Jan 4, 2011 at 1:18 PM, Yong Shen <yong.s...@linaro.org> wrote:
> hi there,
>
> In last weekly meeting, we talked about the real time display of clock
> information in powerdebug.

What do you mean by real-time display?

powerdebug will only refresh it's information every 'n' seconds. At
that point, the 'show' function for the sysfs rate entry should call
get_rate() for the clock.

> Actually, this feature can be easily supported. if you found some
> clocks' information stay unchanged after your drivers change clock
> setting, it may be caused by the wrong way of clock information
> exposing.
>
> In the last several weeks, Jeremy and I reviewed the clock debug code
> based on common clock struct. In this code, I used below code to
> expose clock information:
>
>
> +static int clk_debug_rate_get(void *data, u64 *val)
> +{
> +       struct clk *clk = data;
> +
> +       *val = (u64)clk_get_rate(clk);
> +       return 0;
> +}
> +DEFINE_SIMPLE_ATTRIBUTE(clk_debug_rate_fops, clk_debug_rate_get, NULL,
> +               "%llu\n");
> +
> .....
> +       d = debugfs_create_file("rate", S_IRUGO, clk->dentry, (void *)clk,
> +                       &clk_debug_rate_fops);
>
> Therefore, whenever the clock information is accessed, it can reflect
> the truth, since it calls clk interface like clk_get_rate() to get the
> right value.

Why is it called clk_debug_rate_get()? Is there not a standard
clk_rate_get() that we can use?

> Previously, some of you might use a variable to store clock
> information like rate or count, and expose these variable to sysfs,
> which is why they are not updated when the real clock information is
> changing.

Right, storing in variables will give wrong results if you're in the
middle of a rate refresh.

_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to