From d9c69d99ff57ce61619b497cb4ddf197e9ab90b8 Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Tue, 28 Feb 2012 17:30:20 +0000 Subject: ArmPlatformPkg/Sec: Add ASSERT() for checking the Secure Monitor Stack PCD values git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13062 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPlatformPkg/Sec/Sec.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'ArmPlatformPkg/Sec/Sec.c') diff --git a/ArmPlatformPkg/Sec/Sec.c b/ArmPlatformPkg/Sec/Sec.c index 00d042cf09..97895532c5 100644 --- a/ArmPlatformPkg/Sec/Sec.c +++ b/ArmPlatformPkg/Sec/Sec.c @@ -106,6 +106,11 @@ CEntryPoint ( ArmCpuSetupSmpNonSecure (GET_CORE_ID(MpId)); } + // Either we use the Secure Stacks for Secure Monitor (in this case (Base == 0) && (Size == 0)) + // Or we use separate Secure Monitor stacks (but (Base != 0) && (Size != 0)) + ASSERT (((PcdGet32(PcdCPUCoresSecMonStackBase) == 0) && (PcdGet32(PcdCPUCoreSecMonStackSize) == 0)) || + ((PcdGet32(PcdCPUCoresSecMonStackBase) != 0) && (PcdGet32(PcdCPUCoreSecMonStackSize) != 0))); + // Enter Monitor Mode enter_monitor_mode ((UINTN)TrustedWorldInitialization, MpId, (VOID*)(PcdGet32(PcdCPUCoresSecMonStackBase) + (PcdGet32(PcdCPUCoreSecMonStackSize) * (GET_CORE_POS(MpId) + 1)))); } else { -- cgit v1.2.3