]> git.karo-electronics.de Git - linux-beck.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)
commitfc579da75f0151eec4c465b0f79b4ef8e3dfb8c2
treea1df7ae3d1a7b327ecaeb025d7b53c8253e5e2ca
parentd93c4071b78f4676ef70ec8f2d4bae59b6cc5523
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