]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmPkg/BdsLib: AArch64 MPCore Linux 'spin-table' boot cache fix
authorHarry Liebel <Harry.Liebel@arm.com>
Wed, 24 Jul 2013 11:54:02 +0000 (11:54 +0000)
committeroliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 24 Jul 2013 11:54:02 +0000 (11:54 +0000)
Clean data cache after initialising mailboxes.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Harry Liebel <Harry.Liebel@arm.com>
Reviewed-by: Olivier Martin <olivier.martin@arm.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14501 6f19259b-4bc3-4df7-8a09-765794883524

ArmPkg/Library/BdsLib/AArch64/BdsLinuxLoader.c

index b66d96f05c9bdd3f0933ac1c5132f455e3a58127..887058bafe60b0be73589617e3f68798904bd2b0 100644 (file)
@@ -298,9 +298,6 @@ BdsBootLinuxFdt (
     // Update the MailboxBase variable used in the pen code\r
     *(UINTN*)(PenBase + ((UINTN)&AsmMailboxbase - (UINTN)&SecondariesPenStart)) = MailBoxBase;\r
 \r
-    // Flush caches to make sure our pen gets to mem before we free the cores.\r
-    ArmCleanDataCache();\r
-\r
     for (Index=0; Index < gST->NumberOfTableEntries; Index++) {\r
       // Check for correct GUID type\r
       if (CompareGuid (&gArmMpCoreInfoGuid, &(gST->ConfigurationTable[Index].VendorGuid))) {\r
@@ -323,6 +320,8 @@ BdsBootLinuxFdt (
         }\r
       }\r
     }\r
+    // Flush caches to make sure our pen gets to mem before we free the cores.\r
+    ArmCleanDataCache();\r
   }\r
 \r
   // By setting address=0 we leave the memory allocation to the function\r