One of these things (CONFIG_HZ) is not like the others..
Russell King - ARM Linux
linux at arm.linux.org.uk
Mon Jan 21 16:03:41 EST 2013
On Mon, Jan 21, 2013 at 08:41:17PM +0000, Arnd Bergmann wrote:
> On Monday 21 January 2013, Matt Sealey wrote:
> >
> > ARM seems to be the only "major" platform not using the
> > kernel/Kconfig.hz definitions, instead rolling it's own and setting
> > what could be described as both reasonable and unreasonable defaults
> > for platforms.
No, you've got this totally wrong.
They're not defaults. And I object to your use of "unreasonable" too.
I've no idea where you get that from.
There's a reason why we have different HZ rates - some platforms just
can't do the standard 100Hz tick rate. No way - their timers can't
divide down to that interrupt rate. Sorry to spoil your ivory tower
with a few facts, but your statement is just rediculous.
The reason we don't use kernel/Kconfig.hz is precisely because of that;
we _HAVE_ to have different HZ definitions on different platforms, and
you'll notice that kernel/Kconfig.hz makes _no_ prevision for this.
Now, while things have moved forwards and we have clocksource/clockevent
support, not every platform can support this timekeeping structure;
ebsa110 certainly can't. There's one timer and one timer only which
is usable, which even needs to be manually reloaded by the CPU. No
other independent counter to act as a clock source.
As for Samsung and the rest I can't comment. The original reason OMAP
used this though was because the 32768Hz counter can't produce 100Hz
without a .1% error - too much error under pre-clocksource
implementations for timekeeping. Whether that's changed with the
clocksource/clockevent support needs to be checked.
It's entirely possible with the modern clocksource/clockevent support
that many of these platforms can have their alternative HZ tick rates
removed - but there will continue to be a subset which can't, and all
the time that we have such a subset, kernel/Kconfig.hz can't be used
without modification.
More information about the linux-arm-kernel
mailing list