[PATCH RFC v2 14/16] ARM: vexpress: remove custom .init_time hook

Jon Medhurst (Tixy) tixy at linaro.org
Fri Aug 30 06:02:31 EDT 2013


On Thu, 2013-08-29 at 20:16 +0200, Sebastian Hesselbarth wrote:
> On 08/29/13 15:35, Arnd Bergmann wrote:
> > On Tuesday 27 August 2013, Sebastian Hesselbarth wrote:
> >> @@ -422,16 +419,8 @@ void __init v2m_dt_init_early(void)
> >>                          pr_warning("vexpress: DT HBI (%x) is not matching "
> >>                                          "hardware (%x)!\n", dt_hbi, hbi);
> >>          }
> >> -}
> >> -
> >> -static void __init v2m_dt_timer_init(void)
> >> -{
> >> -       of_clk_init(NULL);
> >>
> >> -       clocksource_of_init();
> >> -
> >> -       versatile_sched_clock_init(vexpress_get_24mhz_clock_base(),
> >> -                               24000000);
> >> +       versatile_sched_clock_init(vexpress_get_24mhz_clock_base(), 24000000);
> >>   }
> >
> > You are moving versatile_sched_clock_init() ahead of clocksource_of_init(), which I suspect
> > won't work. Have you checked this?
> 
> "Checked" as in "Tested", no I haven't.
> 
> But non-DT v2m has it in v2m_init_early also, while v2m_sp804_init()
> is called in v2m_timer_init().
> 
> That matches the above approach taken for DT v2m where
> versatile_sched_clock_init() is now called from v2m_dt_init_early()
> and clocksource_of_init() called from arch-wide .timer_init.
> 
> get_maintainer.pl did not spit out any additional maintainer except
> Russell of course. You know someone who can test the above?

After adding of_clk_init(NULL) to time_init() things boot OK for me with
this patch. However, do we know that sched_clock is never going to get
read before time_init() has actually started the clock it reads? Are we
making things more fragile?

(My testing was on a 3.11-rc6 based Linaro kernel on TC2 because that's
what I had to hand. So it's not a vanilla mainline kernel and I have
other vexpress changes in my tree.)

-- 
Tixy




More information about the linux-arm-kernel mailing list