diff options
author | Jeff Fan <jeff.fan@intel.com> | 2015-07-15 03:28:04 +0000 |
---|---|---|
committer | vanjeff <vanjeff@Edk2> | 2015-07-15 03:28:04 +0000 |
commit | 65e79f931f9c1ca72e853ce788e0bcaf0e205c9c (patch) | |
tree | e58bfdb097c477667130dc0806646ecf7e98b96e | |
parent | c83965bf7fd7b33c996691c5cec930706e4fd0fb (diff) | |
download | edk2-platforms-65e79f931f9c1ca72e853ce788e0bcaf0e205c9c.tar.xz |
UefiCpuPkg: Add CpuMpPei module
This module is to provide MP PPI services defined in PI 1.4.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jeff Fan <jeff.fan@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Reviewed-by: Jiewen Yao <jiewen.yao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17987 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPei.c | 41 | ||||
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPei.h | 26 | ||||
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPei.inf | 51 | ||||
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPei.uni | bin | 0 -> 1706 bytes | |||
-rw-r--r-- | UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni | bin | 0 -> 1344 bytes | |||
-rw-r--r-- | UefiCpuPkg/UefiCpuPkg.dsc | 1 |
6 files changed, 119 insertions, 0 deletions
diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.c b/UefiCpuPkg/CpuMpPei/CpuMpPei.c new file mode 100644 index 0000000000..c1684c23b7 --- /dev/null +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.c @@ -0,0 +1,41 @@ +/** @file + CPU PEI Module installs CPU Multiple Processor PPI. + + Copyright (c) 2015, Intel Corporation. All rights reserved.<BR> + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#include "CpuMpPei.h" + + +/** + The Entry point of the MP CPU PEIM. + + This function will wakeup APs and collect CPU AP count and install the + Mp Service Ppi. + + @param FileHandle Handle of the file being invoked. + @param PeiServices Describes the list of possible PEI Services. + + @retval EFI_SUCCESS MpServicePpi is installed successfully. + +**/ +EFI_STATUS +EFIAPI +CpuMpPeimInit ( + IN EFI_PEI_FILE_HANDLE FileHandle, + IN CONST EFI_PEI_SERVICES **PeiServices + ) +{ + + + + return EFI_SUCCESS; +} diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.h b/UefiCpuPkg/CpuMpPei/CpuMpPei.h new file mode 100644 index 0000000000..00e95cf899 --- /dev/null +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.h @@ -0,0 +1,26 @@ +/** @file + Definitions to install Multiple Processor PPI. + + Copyright (c) 2015, Intel Corporation. All rights reserved.<BR> + This program and the accompanying materials + are licensed and made available under the terms and conditions of the BSD License + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#ifndef _CPU_MP_PEI_H_ +#define _CPU_MP_PEI_H_ + +#include <PiPei.h> + + +#include <Library/BaseLib.h> +#include <Library/PeimEntryPoint.h> + + + +#endif diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.inf b/UefiCpuPkg/CpuMpPei/CpuMpPei.inf new file mode 100644 index 0000000000..05db141d79 --- /dev/null +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.inf @@ -0,0 +1,51 @@ +## @file +# CPU driver installs CPU PI Multi-processor PPI. +# +# Copyright (c) 2015, Intel Corporation. All rights reserved.<BR> +# This program and the accompanying materials +# are licensed and made available under the terms and conditions of the BSD License +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = CpuMpPei + MODULE_UNI_FILE = CpuMpPei.uni + FILE_GUID = EDADEB9D-DDBA-48BD-9D22-C1C169C8C5C6 + MODULE_TYPE = PEIM + VERSION_STRING = 1.0 + ENTRY_POINT = CpuMpPeimInit + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 +# + +[Sources] + CpuMpPei.h + CpuMpPei.c + + +[Packages] + MdePkg/MdePkg.dec + UefiCpuPkg/UefiCpuPkg.dec + +[LibraryClasses] + BaseLib + PeimEntryPoint + + + + +[Depex] + gEfiPeiMemoryDiscoveredPpiGuid + +[UserExtensions.TianoCore."ExtraFiles"] + CpuMpPeiExtra.uni + diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.uni b/UefiCpuPkg/CpuMpPei/CpuMpPei.uni Binary files differnew file mode 100644 index 0000000000..00c41e2faa --- /dev/null +++ b/UefiCpuPkg/CpuMpPei/CpuMpPei.uni diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni b/UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni Binary files differnew file mode 100644 index 0000000000..55ca4f0292 --- /dev/null +++ b/UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni diff --git a/UefiCpuPkg/UefiCpuPkg.dsc b/UefiCpuPkg/UefiCpuPkg.dsc index f533a142b4..5fcff1510d 100644 --- a/UefiCpuPkg/UefiCpuPkg.dsc +++ b/UefiCpuPkg/UefiCpuPkg.dsc @@ -83,6 +83,7 @@ UefiCpuPkg/Library/SecPeiDxeTimerLibUefiCpu/SecPeiDxeTimerLibUefiCpu.inf
[Components.IA32, Components.X64]
+ UefiCpuPkg/CpuMpPei/CpuMpPei.inf
UefiCpuPkg/CpuDxe/CpuDxe.inf
UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf
UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
|