[PATCH v2] ARM: davinci: convert to clockevents_config_and_register
Sekhar Nori
nsekhar at ti.com
Wed Oct 16 12:38:58 EDT 2013
On Wednesday 16 October 2013 01:20 PM, Uwe Kleine-König wrote:
> Hello,
>
> On Wed, Oct 16, 2013 at 08:49:17AM +0530, Sekhar Nori wrote:
>> On Sunday 13 October 2013 02:06 PM, Uwe Kleine-König wrote:
>>> clockevents_config_and_register is superior compared to setting
>>> shift/mult and {min,max}_delta_ns by hand.
>>>
>>> Tested-by: Prabhakar Lad <prabhakar.csengg at gmail.com>
>>> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
>>> ---
>>> Prabhakar Lad wrote:
>>>> I have boot tested this patch on OMAP-L138 and tested the uptime
>>>> (with min ticks set to 1), should that be enough ?
>>> I don't know for sure, but I guess so. If you agree, here is an updated
>>> patch.
>>>
>>> Best regards
>>> Uwe
>>>
>>>
>>> arch/arm/mach-davinci/time.c | 9 ++-------
>>> 1 file changed, 2 insertions(+), 7 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-davinci/time.c b/arch/arm/mach-davinci/time.c
>>> index 7a55b5c..29a1a5d 100644
>>> --- a/arch/arm/mach-davinci/time.c
>>> +++ b/arch/arm/mach-davinci/time.c
>>> @@ -331,7 +331,6 @@ static void davinci_set_mode(enum clock_event_mode mode,
>>>
>>> static struct clock_event_device clockevent_davinci = {
>>> .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
>>> - .shift = 32,
>>> .set_next_event = davinci_set_next_event,
>>> .set_mode = davinci_set_mode,
>>> };
>>> @@ -397,14 +396,10 @@ void __init davinci_timer_init(void)
>>>
>>> /* setup clockevent */
>>> clockevent_davinci.name = id_to_name[timers[TID_CLOCKEVENT].id];
>>> - clockevent_davinci.mult = div_sc(davinci_clock_tick_rate, NSEC_PER_SEC,
>>> - clockevent_davinci.shift);
>>> - clockevent_davinci.max_delta_ns =
>>> - clockevent_delta2ns(0xfffffffe, &clockevent_davinci);
>>> - clockevent_davinci.min_delta_ns = 50000; /* 50 usec */
>>>
>>> clockevent_davinci.cpumask = cpumask_of(0);
>>> - clockevents_register_device(&clockevent_davinci);
>>> + clockevents_config_and_register(&clockevent_davinci,
>>> + davinci_clock_tick_rate, 1, 0xfffffffe);
>>
>> checkpatch --strict complains about alignment of line break. Fixed locally.
> I used the same style as in other places in that file.
Okay, but I prefer to fix for new code.
>
> Another thought that came to me is that it's probably worth mentioning
> that the min_delta_ns is changed from 50 usec to 1 hw tick. Something
> like:
>
> Note that the minimum delay is changed from 50 us to 1 hw tick
> (which corresponds to 42 ns assuming a 24 MHz clock). It's
> expected that the old value was miscalculated.
>
> That would be interesting in case that the patch results in regressions.
Too late as I already sent my pull request. Adding this to patch
description would have been nice, I agree.
Thanks,
Sekhar
More information about the linux-arm-kernel
mailing list