Hi Amit,

Please find out inline feedback.

On Tue, Jan 4, 2011 at 4:58 PM, Amit Kucheria <amit.kuche...@linaro.org> wrote:
> 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.

I know this refresh every 'n' seconds. Here, 'real time display' may
not be the right word to describe the situation. I meant to say that
how powerdebug can reflect the real clock information in time.
>
>> 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?
There is. clk_get_rate() is called inside this function. By using
these lines of code, the purpose is to advocate using functions
provided by clock system like clk_rate_get() directly, instead of
using variable to store clock information.
>
>> 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