## @file\r
+# CPU driver installs CPU Architecture Protocol and CPU MP protocol.\r
#\r
-# Component description file for simple CPU driver\r
+# Copyright (c) 2008 - 2019, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2017, AMD Incorporated. All rights reserved.<BR>\r
#\r
-# Copyright (c) 2008 - 2012, Intel Corporation. All rights reserved.<BR>\r
-# This program and the accompanying materials\r
-# are licensed and made available under the terms and conditions of the BSD License\r
-# which accompanies this distribution. The full text of the license may be found at\r
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
#\r
##\r
\r
[Defines]\r
INF_VERSION = 0x00010005\r
BASE_NAME = CpuDxe\r
+ MODULE_UNI_FILE = CpuDxe.uni\r
FILE_GUID = 1A1E4886-9517-440e-9FDE-3BE44CEE2136\r
MODULE_TYPE = DXE_DRIVER\r
VERSION_STRING = 1.0\r
-\r
ENTRY_POINT = InitializeCpu\r
\r
[Packages]\r
UefiDriverEntryPoint\r
LocalApicLib\r
UefiCpuLib\r
+ UefiLib\r
+ CpuExceptionHandlerLib\r
+ HobLib\r
+ ReportStatusCodeLib\r
+ MpInitLib\r
+ TimerLib\r
+ PeCoffGetEntryPointLib\r
\r
[Sources]\r
CpuDxe.c\r
CpuDxe.h\r
CpuGdt.c\r
-\r
- Ia32/IvtAsm.asm | MSFT\r
- Ia32/IvtAsm.asm | INTEL\r
- Ia32/IvtAsm.S | GCC\r
+ CpuGdt.h\r
+ CpuMp.c\r
+ CpuMp.h\r
+ CpuPageTable.h\r
+ CpuPageTable.c\r
\r
[Sources.IA32]\r
- Ia32/CpuAsm.asm | MSFT\r
- Ia32/CpuAsm.asm | INTEL\r
- Ia32/CpuAsm.S | GCC\r
+ Ia32/CpuAsm.nasm\r
+ Ia32/PagingAttribute.c\r
\r
[Sources.X64]\r
- X64/CpuAsm.asm | MSFT\r
- X64/CpuAsm.asm | INTEL\r
- X64/CpuAsm.S | GCC\r
+ X64/CpuAsm.nasm\r
+ X64/PagingAttribute.c\r
\r
[Protocols]\r
- gEfiCpuArchProtocolGuid\r
+ gEfiCpuArchProtocolGuid ## PRODUCES\r
+ gEfiMpServiceProtocolGuid ## PRODUCES\r
+ gEfiSmmBase2ProtocolGuid ## SOMETIMES_CONSUMES\r
\r
[Guids]\r
- gIdleLoopEventGuid ## CONSUMES ## GUID\r
+ gIdleLoopEventGuid ## CONSUMES ## Event\r
+ gEfiVectorHandoffTableGuid ## SOMETIMES_CONSUMES ## SystemTable\r
+\r
+[Ppis]\r
+ gEfiSecPlatformInformation2PpiGuid ## UNDEFINED # HOB\r
+ gEfiSecPlatformInformationPpiGuid ## UNDEFINED # HOB\r
+\r
+[Pcd]\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdPteMemoryEncryptionAddressOrMask ## CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdCpuStackGuard ## CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdHeapGuardPropertyMask ## CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdNullPointerDetectionPropertyMask ## CONSUMES\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuStackSwitchExceptionList ## CONSUMES\r
+ gUefiCpuPkgTokenSpaceGuid.PcdCpuKnownGoodStackSize ## CONSUMES\r
+ gEfiMdeModulePkgTokenSpaceGuid.PcdTdxSharedBitMask ## CONSUMES\r
\r
[Depex]\r
TRUE\r
\r
+[UserExtensions.TianoCore."ExtraFiles"]\r
+ CpuDxeExtra.uni\r