ARM: tegra: update the cache maintenance order for CPU shutdown
authorJoseph Lo <josephl@nvidia.com>
Thu, 3 Jan 2013 06:42:59 +0000 (14:42 +0800)
committerStephen Warren <swarren@nvidia.com>
Mon, 28 Jan 2013 17:21:44 +0000 (10:21 -0700)
commit57886616ca7bff844a6427436d0c8faf74653f73
tree4c353be72a7f266727320189e8e91965b93fa0b0
parent130bfed72c75a36c76ecc82d73818c6fccd2a468
ARM: tegra: update the cache maintenance order for CPU shutdown

Updating the cache maintenance order before CPU shutdown when doing CPU
hotplug.
The old order:
* clean L1 by flush_cache_all
* exit SMP
* CPU shutdown
Adapt to:
* disable L1 data cache by clear C bit
* clean L1 by v7_flush_dcache_louis
* exit SMP
* CPU shutdown

For CPU hotplug case, it's no need to do "flush_cache_all". And we should
disable L1 data cache before clean L1 data cache. Then leaving the SMP
coherency.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Acked-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
arch/arm/mach-tegra/hotplug.c
arch/arm/mach-tegra/sleep-tegra20.S
arch/arm/mach-tegra/sleep-tegra30.S
arch/arm/mach-tegra/sleep.S
arch/arm/mach-tegra/sleep.h