security: tf_driver: integrate latest TL release
Hyung Taek Ryoo [Thu, 12 Sep 2013 17:30:36 +0000 (10:30 -0700)]
Tegra4 version: TF_TEGRA4_AC02.08p5.40671

This version fixes the corruption of secure os(TF) stack which is caused by
unexpected hardware cache activities at the time of core #0 wakes up from
per-core power gating.
Caches ON while go to sleep and L1 cache is all cleaned before the sleep,
while L2 cache is selectively cleaned because it's preserved during
the sleep of the cores so L2 cache has some dirty lines from the secure world.
When core #0 wakes up, it turns on i-, d-caches but MMU is still off at this
moment. During this time the wake up process starts synching (flushing) cache
to SDRAM. Until MMU is ON, core #0 uses stacks data from SDRAM, not from the
data cache. It is enough to flush the old line of stack to SDRAM in order to
corrupt call-return linkage if it accidently happens during such stack usage.
To fix this issue, TF cleans the cache lines related to secure os stack
after they have been used last time just before returning to normal OS.

Bug 1330053
Bug 1356121

Change-Id: I1b8ba453f9e4e0f21e65667b54ed5ce4bcee8ff1
Signed-off-by: Hyung Taek Ryoo <hryoo@nvidia.com>
Reviewed-on: http://git-master/r/276089
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bo Yan <byan@nvidia.com>

security/tf_driver/s_version.h

index a1b41f5..e2d41b0 100644 (file)
@@ -63,7 +63,7 @@
 #define S_VERSION_PLATFORM "C"
 #define S_VERSION_MAIN  "02.08"
 #define S_VERSION_ENG 0
-#define S_VERSION_PATCH 3
+#define S_VERSION_PATCH 5
 
 #else
 #define S_VERSION_OS "Z"          /* Unknown platform */