]> git.baikalelectronics.ru Git - kernel.git/commit
cs5535-clockevt: Don't ignore MFGPT on SMP-capable kernels
authorJens Rottmann <JRottmann@LiPPERTEmbedded.de>
Mon, 5 Mar 2012 23:07:54 +0000 (15:07 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 6 Mar 2012 13:17:44 +0000 (14:17 +0100)
commit4335b5b090ab3e9a235527be761a97aca3d408f9
treea1df7ae3d1a7b327ecaeb025d7b53c8253e5e2ca
parent26139829f3aa5f256442e41f692e909b5fe09cf1
cs5535-clockevt: Don't ignore MFGPT on SMP-capable kernels

On SMP-capable kernels (e.g.  generic distro kernel) the cs5535-clockevt
driver loads but is not actually used.

Setting cpumask to cpu_all_mask works for UP-only kernels, but if compiled
for SMP - though still running on the same UP hardware -
kernel/time/tick-common.c:tick_check_new_device() reads this as
"non-cpu-local" and silently ignores the device.

If we leave cpumask unset clockevents_register_device() will initialize it
and the cs5535-clockevt driver will be used no matter how the kernel was
compiled.  Should anyone ever manage to stick a CS553x in an SMP system
(is this even possible?) then a warning will be printed.  This is fine as
the cs5535-clockevt driver was never written/tested for SMP.

If bisecting led you here this patch may have exposed a pre-existing MFGPT
problem.  Configure for UP-only and re-check.

Signed-off-by: Jens Rottmann <JRottmann@LiPPERTEmbedded.de>
Acked-by: Andres Salomon <dilinger@queued.net>
Cc: John Stultz <john.stultz@linaro.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/clocksource/cs5535-clockevt.c