diff options
author | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-02-28 17:27:15 +0000 |
---|---|---|
committer | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-02-28 17:27:15 +0000 |
commit | 8cc852f79132897a0d371b05780762a0fcd959d8 (patch) | |
tree | 973bae3e6e869340416f3fac828f300f60a423da /ArmPlatformPkg/Sec/Sec.c | |
parent | 1377db63ff80bbb28da572c7b276ba56faea5f94 (diff) | |
download | edk2-platforms-8cc852f79132897a0d371b05780762a0fcd959d8.tar.xz |
ArmPlatformPkg: Move the Secure Monitor initialization into a separate 'ArmTrustedMonitorLib' library
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13059 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ArmPlatformPkg/Sec/Sec.c')
-rw-r--r-- | ArmPlatformPkg/Sec/Sec.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/ArmPlatformPkg/Sec/Sec.c b/ArmPlatformPkg/Sec/Sec.c index a32cd3857e..59012a1266 100644 --- a/ArmPlatformPkg/Sec/Sec.c +++ b/ArmPlatformPkg/Sec/Sec.c @@ -1,7 +1,7 @@ /** @file * Main file supporting the SEC Phase on ARM Platforms * -* Copyright (c) 2011, ARM Limited. All rights reserved. +* Copyright (c) 2011-2012, ARM Limited. All rights reserved. * * This program and the accompanying materials * are licensed and made available under the terms and conditions of the BSD License @@ -13,6 +13,7 @@ * **/ +#include <Library/ArmTrustedMonitorLib.h> #include <Library/DebugAgentLib.h> #include <Library/PrintLib.h> #include <Library/BaseMemoryLib.h> @@ -24,8 +25,6 @@ #define SerialPrint(txt) SerialPortWrite ((UINT8*)txt, AsciiStrLen(txt)+1); -extern VOID *monitor_vector_table; - VOID CEntryPoint ( IN UINTN MpId @@ -114,10 +113,11 @@ CEntryPoint ( // Enter Monitor Mode enter_monitor_mode ((VOID*)(PcdGet32(PcdCPUCoresSecMonStackBase) + (PcdGet32(PcdCPUCoreSecMonStackSize) * (GET_CORE_POS(MpId) + 1)))); - //Write the monitor mode vector table address - ArmWriteVMBar((UINT32) &monitor_vector_table); + //-------------------- Monitor Mode --------------------- + + // Set up Monitor World (Vector Table, etc) + ArmSecureMonitorWorldInitialize (); - //-------------------- Monitor Mode --------------------- // Setup the Trustzone Chipsets if (IS_PRIMARY_CORE(MpId)) { ArmPlatformTrustzoneInit (); |