Re: [PATCH] ARM: omap2: drop broken broadcast timer hack

From: Tony Lindgren
Date: Thu May 28 2020 - 16:38:20 EST


* Arnd Bergmann <arnd@xxxxxxxx> [200528 20:35]:
> On Thu, May 28, 2020 at 6:18 PM <santosh.shilimkar@xxxxxxxxxx> wrote:
> > On 5/28/20 8:57 AM, Tony Lindgren wrote:
> > > * Tony Lindgren <tony@xxxxxxxxxxx> [200528 13:51]:
> > >> * Tony Lindgren <tony@xxxxxxxxxxx> [200528 13:47]:
> > >>> * Arnd Bergmann <arnd@xxxxxxxx> [200528 09:20]:
> > >>>> The OMAP4 timer code had a special hack for using the broadcast timer
> > >>>> without SMP. Since the dmtimer is now gone, this also needs to be dropped
> > >>>> to avoid a link failure for non-SMP AM43xx configurations:
> > >>>>
> > >>>> kernel/time/tick-broadcast.o: in function `tick_device_uses_broadcast':
> > >>>> tick-broadcast.c:(.text+0x130): undefined reference to `tick_broadcast'
> > >>>
> > >>> Hmm this sounds like a regression though. Isn't this needed for using
> > >>> the ARM local timers on non-SMP SoC, so a separate timer from dmtimer?
> > >>>
> > >>> I've probably removed something accidentally to cause this.
> > >>
> > >> Sounds like arch/arm/mach-omap2/Makefile change needs to be removed
> > >> to always still build in timer.o. And probably timer.c needs back
> > >> the ifdef for CONFIG_SOC_HAS_REALTIME_COUNTER.
> > >>
> > >> I'll take a look today.
> > >
> > > I've sent a patch along those lines as:
> > >
> > > [PATCH] ARM: OMAP2+: Fix regression for using local timer on non-SMP SoCs
> > >
> > > A link for the patch at [0] below.
> > >
> > CPU local timers not being in always ON power domain use to be the
> > reason on early version of the SOCs but later SOC moved the CPU local
> > timer also in always on domain. Probably AM43xx does loose local timer
> > on CPU PD in low power so yes broadcast would be needed with dmtimer
> > help.
> >
> > >
> > > [0] https://lore.kernel.org/linux-omap/20200528155453.8585-1-tony@xxxxxxxxxxx/T/#u
> > >
> > This should restore it.
>
> Should I apply the fix directly to the arm/soc branch that has the
> other changes then?

Sure please do, that saves a single-fix pull request.

Regards,

Tony