ARM: tegra: Make outer_disable() open-coded
authorDmitry Osipenko <digetx@gmail.com>
Mon, 24 Feb 2020 22:40:48 +0000 (01:40 +0300)
committerThierry Reding <treding@nvidia.com>
Fri, 13 Mar 2020 10:23:08 +0000 (11:23 +0100)
commit7ed50dd5dd12c2e69a591b2dc4d242b0e6c32dd3
tree7a53c98d1f28c4708857fa444b91f28827728441
parent1f3e18ec95f61589404d1471dc01c9599352dd93
ARM: tegra: Make outer_disable() open-coded

The outer_disable() of Tegra's suspend code is open-coded now since
that helper produces spurious warning message about secondary CPUs being
online when CPU enters into LP2 from cpuidle. The secondaries are actually
halted by the cpuidle driver on entering into LP2 idle-state, but the
online status is not touched by the cpuidle. This fixes a storm of
warnings once LP2 idling state is enabled on Tegra30. The outer_disable()
helper has sanity checks for interrupts and secondary CPUs being disabled
and we are pretty confident about the interrupts state during of CPU
idling / system suspend. The rail-off status check is added in this patch
as equivalent for the "num_online_cpus() > 1".

Acked-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Tested-by: Peter Geis <pgwipeout@gmail.com>
Tested-by: Jasper Korten <jja2000@gmail.com>
Tested-by: David Heidelberg <david@ixit.cz>
Tested-by: Nicolas Chauvet <kwizart@gmail.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
arch/arm/mach-tegra/pm.c