linux/arch/arm/mach-tegra
Joseph Lo 57886616ca 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>
2013-01-28 10:21:44 -07:00
..
include/mach ARM: tegra: move debug-macro.S to include/debug 2012-11-16 12:22:18 -07:00
Kconfig ARM: tegra: fix Kconfig warnings when !SMP 2013-01-28 10:21:33 -07:00
Makefile ARM: tegra: move timer.c to drivers/clocksource/ 2013-01-28 10:21:21 -07:00
Makefile.boot
apbio.c ARM: tegra: Make variables static 2013-01-28 10:21:28 -07:00
apbio.h
board-dt-tegra20.c ARM: tegra: Make variables static 2013-01-28 10:21:28 -07:00
board-dt-tegra30.c ARM: tegra: Make variables static 2013-01-28 10:21:28 -07:00
board-harmony-pcie.c
board-paz00.c
board-paz00.h
board.h ARM: tegra: move timer.c to drivers/clocksource/ 2013-01-28 10:21:21 -07:00
clock.c ARM: tegra: remove unnecessary includes of <mach/*.h> 2012-11-05 11:36:05 -07:00
clock.h
common.c Merge tag 'tegra-for-3.8-fixes-for-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into fixes 2012-12-17 10:04:27 -08:00
common.h
cpu-tegra.c ARM: tegra: cpufreq: move clk_get/put out of function tegra_cpu_init/exit 2013-01-28 10:21:37 -07:00
cpuidle-tegra20.c ARM: tegra: cpuidle: separate cpuidle driver for different chips 2012-11-15 15:09:20 -07:00
cpuidle-tegra30.c ARM: tegra30: cpuidle: add powered-down state for CPU0 2012-11-15 15:09:22 -07:00
cpuidle.c ARM: tegra: cpuidle: separate cpuidle driver for different chips 2012-11-15 15:09:20 -07:00
cpuidle.h ARM: tegra: cpuidle: separate cpuidle driver for different chips 2012-11-15 15:09:20 -07:00
flowctrl.c ARM: tegra: Make variables static 2013-01-28 10:21:28 -07:00
flowctrl.h ARM: tegra30: flowctrl: add cpu_suspend_exter/exit function 2012-11-15 15:09:21 -07:00
fuse.c ARM: tegra: Tegra30 speedo-based process identification 2012-11-15 14:36:59 -07:00
fuse.h ARM: tegra: Tegra30 speedo-based process identification 2012-11-15 14:36:59 -07:00
gpio-names.h
headsmp.S ARM: tegra: retain L2 content over CPU suspend/resume 2012-11-15 15:09:22 -07:00
hotplug.c ARM: tegra: update the cache maintenance order for CPU shutdown 2013-01-28 10:21:44 -07:00
io.c ARM: tegra: don't include iomap.h from debug-macro.S 2012-11-16 12:22:17 -07:00
iomap.h ARM: tegra: simplify DEBUG_LL UART selection options 2012-11-16 12:22:17 -07:00
irammap.h ARM: tegra: decouple uncompress.h and debug-macro.S 2012-11-16 12:22:17 -07:00
irq.c ARM: tegra: move iomap.h to mach-tegra 2012-11-05 11:36:06 -07:00
pcie.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
platsmp.c ARM: tegra30: fix power up sequence for boot_secondary 2013-01-28 10:21:41 -07:00
pm.c ARM: tegra: retain L2 content over CPU suspend/resume 2012-11-15 15:09:22 -07:00
pm.h ARM: tegra: retain L2 content over CPU suspend/resume 2012-11-15 15:09:22 -07:00
pmc.c ARM: tegra: move iomap.h to mach-tegra 2012-11-05 11:36:06 -07:00
pmc.h
powergate.c ARM: tegra: move iomap.h to mach-tegra 2012-11-05 11:36:06 -07:00
reset.c ARM: tegra: cpuidle: add CPU resume function 2012-11-15 15:09:21 -07:00
reset.h ARM: tegra30: cpuidle: add powered-down state for secondary CPUs 2012-11-15 15:09:21 -07:00
sleep-tegra20.S ARM: tegra: update the cache maintenance order for CPU shutdown 2013-01-28 10:21:44 -07:00
sleep-tegra30.S ARM: tegra: update the cache maintenance order for CPU shutdown 2013-01-28 10:21:44 -07:00
sleep.S ARM: tegra: update the cache maintenance order for CPU shutdown 2013-01-28 10:21:44 -07:00
sleep.h ARM: tegra: update the cache maintenance order for CPU shutdown 2013-01-28 10:21:44 -07:00
tegra2_emc.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
tegra2_emc.h
tegra20_clocks.c ARM: tegra: move iomap.h to mach-tegra 2012-11-05 11:36:06 -07:00
tegra20_clocks.h
tegra20_clocks_data.c ARM: tegra: Add Tegra20 host1x clock support 2012-11-15 14:46:26 -07:00
tegra20_speedo.c ARM: tegra: Add speedo-based process identification 2012-11-15 14:34:20 -07:00
tegra30_clocks.c Merge tag 'tegra-for-3.8-fixes-for-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into fixes 2012-12-17 10:04:27 -08:00
tegra30_clocks.h ARM: tegra30: clocks: add AHB and APB clocks 2012-11-05 11:36:22 -07:00
tegra30_clocks_data.c ARM: tegra: Make variables static 2013-01-28 10:21:28 -07:00
tegra30_speedo.c ARM: tegra: Tegra30 speedo-based process identification 2012-11-15 14:36:59 -07:00
tegra_cpu_car.h ARM: tegra30: clocks: add CPU low-power function into tegra_cpu_car_ops 2012-11-15 15:09:21 -07:00