[PATCH] ARM: Kconfig: select GENERIC_CLOCKEVENTS_BROADCAST also on UP
Russell King - ARM Linux
linux at armlinux.org.uk
Tue Feb 7 02:57:02 PST 2017
On Mon, Jan 30, 2017 at 01:53:48PM +0000, Russell King - ARM Linux wrote:
> On Fri, Jan 20, 2017 at 05:32:30PM +0100, Lucas Stach wrote:
> > Quite a few systems have deeper idle states where the local timer tick
> > stops to fire, that rely on the GENERIC_CLOCKEVENTS_BROADCAST
> > infrastructure to switch to a global (non-stopping) clockevent device.
> > This is also true on UP systems, so select GENERIC_CLOCKEVENTS_BROADCAST
> > unconditionally.
> >
> > Instead only select ARCH_HAS_TICK_BROADCAST if SMP is present, as this
> > is only implemented for SMP systems.
> >
> > Signed-off-by: Lucas Stach <l.stach at pengutronix.de>
> > ---
> > v2: Only select GENERIC_CLOCKEVENTS_BROADCAST if the architecture
> > supports GENERIC_CLOCKEVENTS.
>
> Provided this solves the problems identified by the 0-day builder with
> your previous patch, please submit it to the patch system, thanks.
I think this causes OMAP builds to fail:
arch/arm/mach-omap2/timer.c:325:8: error: expected identifier or '(' before 'void'
arch/arm/mach-omap2/timer.c:325:15: error: expected ')' before numeric constant
#if !defined(CONFIG_SMP) && defined(CONFIG_GENERIC_CLOCKEVENTS_BROADCAST)
>>>> void tick_broadcast(const struct cpumask *mask)
{
}
#endif
vs
# ifdef CONFIG_GENERIC_CLOCKEVENTS_BROADCAST
# ifdef CONFIG_ARCH_HAS_TICK_BROADCAST
extern void tick_broadcast(const struct cpumask *mask);
# else
>>>> # define tick_broadcast NULL
# endif
extern int tick_receive_broadcast(void);
# endif
So, I'm dropping this change.
--
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
More information about the linux-arm-kernel
mailing list