Optimize Cortex-A57 cluster power down sequence on Juno
This patch optimizes the Cortex-A57 cluster power down sequence by not
flushing the Level1 data cache. The L1 data cache and the L2 unified
cache are inclusive. A flush of the L2 by set/way flushes any dirty
lines from the L1 as well. This is a known safe deviation from the
Cortex-A57 TRM defined power down sequence. This optimization can be
enabled by the platform through the 'SKIP_A57_L1_FLUSH_PWR_DWN' build
flag. Each Cortex-A57 based platform must make its own decision on
whether to use the optimization.

This patch also renames the cpu-errata-workarounds.md to
cpu-specific-build-macros.md as this facilitates documentation
of both CPU Specific errata and CPU Specific Optimization
build macros.

Change-Id: I299b9fe79e9a7e08e8a0dffb7d345f9a00a71480
1 parent b1a9631 commit 5541bb3f61ae97b49203939f940931455b2f3037
@Soby Mathew Soby Mathew authored on 22 Sep 2014
Showing 8 changed files
View
Makefile
View
docs/cpu-errata-workarounds.md 100644 → 0
View
docs/cpu-specific-build-macros.md 0 → 100644
View
docs/firmware-design.md
View
lib/cpus/aarch64/cortex_a57.S
View
lib/cpus/cpu-errata.mk 100644 → 0
View
lib/cpus/cpu-ops.mk 0 → 100644
View
plat/juno/platform.mk