/** @file\r
\r
- Copyright (c) 2011, ARM Limited. All rights reserved.\r
+ Copyright (c) 2011-2012, ARM Limited. All rights reserved.\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
#include <Base.h>\r
#include <Library/ArmLib.h>\r
#include <Library/ArmCpuLib.h>\r
-#include <Library/ArmGicLib.h>\r
#include <Library/ArmV7ArchTimerLib.h>\r
#include <Library/DebugLib.h>\r
#include <Library/IoLib.h>\r
\r
#include <Chipset/ArmV7.h>\r
\r
-VOID\r
-ArmCpuSynchronizeSignal (\r
- IN ARM_CPU_SYNCHRONIZE_EVENT Event\r
- )\r
-{\r
- if (Event == ARM_CPU_EVENT_BOOT_MEM_INIT) {\r
- // Do nothing, Cortex A15 secondary cores are waiting for the GIC Distributor\r
- // to be enabled (done by the Sec module itself) as a way to know when the Init Boot\r
- // Mem as been initialized\r
- } else {\r
- // Send SGI to all Secondary core to wake them up from WFI state.\r
- ArmGicSendSgiTo (PcdGet32(PcdGicDistributorBase), ARM_GIC_ICDSGIR_FILTER_EVERYONEELSE, 0x0E);\r
- }\r
-}\r
-\r
-VOID\r
-CArmCpuSynchronizeWait (\r
- IN ARM_CPU_SYNCHRONIZE_EVENT Event\r
- )\r
-{\r
- // Waiting for the SGI from the primary core\r
- ArmCallWFI ();\r
-\r
- // Acknowledge the interrupt and send End of Interrupt signal.\r
- ArmGicAcknowledgeSgiFrom (PcdGet32(PcdGicInterruptInterfaceBase), PRIMARY_CORE_ID);\r
-}\r
-\r
VOID\r
ArmCpuSetup (\r
IN UINTN MpId\r