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....@intel.com>
CC: Feng Tian <feng.t...@intel.com>
CC: Jiewen Yao <jiewen....@intel.com>
CC: Michael Kinney <michael.d.kin...@intel.com>
---
 UefiCpuPkg/CpuMpPei/CpuMpPei.c        |  41 +++++++++++++++++++++++++++
 UefiCpuPkg/CpuMpPei/CpuMpPei.h        |  26 +++++++++++++++++
 UefiCpuPkg/CpuMpPei/CpuMpPei.inf      |  51 ++++++++++++++++++++++++++++++++++
 UefiCpuPkg/CpuMpPei/CpuMpPei.uni      | Bin 0 -> 1706 bytes
 UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni | Bin 0 -> 1344 bytes
 UefiCpuPkg/UefiCpuPkg.dsc             |   1 +
 6 files changed, 119 insertions(+)
 create mode 100644 UefiCpuPkg/CpuMpPei/CpuMpPei.c
 create mode 100644 UefiCpuPkg/CpuMpPei/CpuMpPei.h
 create mode 100644 UefiCpuPkg/CpuMpPei/CpuMpPei.inf
 create mode 100644 UefiCpuPkg/CpuMpPei/CpuMpPei.uni
 create mode 100644 UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni

diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPei.c b/UefiCpuPkg/CpuMpPei/CpuMpPei.c
new file mode 100644
index 0000000..c1684c2
--- /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 0000000..00e95cf
--- /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 0000000..05db141
--- /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
new file mode 100644
index 
0000000000000000000000000000000000000000..00c41e2faa60bc9dd497538c9c19f1a14f41ab5c
GIT binary patch
literal 1706
zcmc(gU60aW5QXR3#Q)H+H)?i4H}S?8BP>-Lb!iredS%MTvQ1!1pzO+@cYV$j+O5Ip
zg~pJ+Uo-E_nKP&5?t9Bx7Vtdb7uajNwAAJ{wTJeAQ`ycewjuMxR@iQ^t=Oe@ZEMRd
z!F$fC@{28E_t7?-=lGr2k{g+gxw+<-`Tdxvku}Ra|1)0(!mU>~vnwzM_6W3(nNRJh
zJ+tR_%sQgtoEqk=&%BDIkBL{AVQpe*J0HQlXyRt&wTn6NH^K9zb?m}k9jJc*hSV7?
zc$;x6u?0~Qa!i<WJf^-MgEPanblcXuGQ+Z9FRbdAI<zkHD2mVooTlCr^--9r__{sW
zWw>E2MI<(2)V+<PC{(aVQsi1V>OD#!6W+AsM@(cWtg4`6ee1ISP{UGb;nukrGYVb3
z+7vX3C=3N($|X&z>Jd1lzI|T;6R*O5>B>|Wh58%g&#3Cm6l`ws8tv|9I}U^?zsIb!
zlhcbA{^m$kQy7rqH(-+fo2*wh!(Pv^=46EDgtw(`X%gj%XV1xgRz2@51XYZVdiIvF
z&08m(_8GfA4>*lb+7R#1nI76XbI5rWq3S|}vO_%j9=XR#iq_a*R$N7IFn4^f-EoO6
zuus^9tLGWDZ<9&L&N+{Wsu(@be!))Ib*7vHyyT;-h1VN=b@L1Jdn`h(H!<90DXIwV
za~Y?K9>GP7u9UNT@H?X~UdyqIQ$0tedamhF01EN<l}J5e42c%9Yg2n+X~Wh4zhC{1
y{Jl}E4N950dZdUGVhL#jbbsS3+9<2|vkKJzKG>y=xa9m$6~C|G-~KyPmHhy=@&yb4

literal 0
HcmV?d00001

diff --git a/UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni 
b/UefiCpuPkg/CpuMpPei/CpuMpPeiExtra.uni
new file mode 100644
index 
0000000000000000000000000000000000000000..55ca4f0292bf02765477f80a582ccae533be83d1
GIT binary patch
literal 1344
zcmZ9MS#Q%&5QXO%iT_}Q7eGw{NW36~NE!ncZDM5+@Kj}MYAKB)Cus>k9{A39Ya+|{
z-r3HaJ2Upbzin$<!26mfu+MgDiLGsE&+Qpn*)DBs2fJpC(I;rGEVa2!@k{Ivx&^wC
z?JYyz*vfXuQ%=%f;=94N^tD7S_uRg<qsOl74$r_|g8qvAoxQQQ_TDZyM+M5dz|7#2
z5;Y|v@f<BI9XQEDOmZ}F$;iIr&FsP1w(O&IZD^mWTh@HWa7g?HTl`Z{l;a+h@<w|+
zmM+iXnPS_z?O5DCKqFSlmvCBxR^w06Dq6LhbJ{pFRjR~S^rFb{z*+s6+Kg3k2O?z6
zIG0TFT=&kpL=iK2CRKe@iIo1<ab3FBL%urUQgeOuTFhC+?)0_^9E2zidA*cthpb!A
z;Q6#KfvK+Ie~TsWky!u6>zvhTW%6ns@tPI!X;A}l+CQnRW@k??KKR_Gobu|*Kl56*
zxPL}R+h^6^p_##bVa+p33zR$FvL@xO`+TzyRxxulu&=Bgz7fsoh_&bY7;VI)P4EuA
z(i7{mhv;jBx(g9sONhtFkq4YK(OMhq!WDXhz3Z~1i;7!dKd_6}z%xqjkV(w?=p#^t
zG4Sj|BypEcImdX(M_F^PFZe3*7yEZCVy-VSEVAUc2<>NuQ=>=JB4)0XvuCY}V_iS}
zZ`!Vx?nN~@`hVzeqT1aQ)r~<JRyVi-djRSL{1Bf$EU!7`IQmwEabREh#Aphdc#qtp
oL5*XifEZ1prnE_i^{wlB-0^5i)LGqBJ?$YU{_n`BzVejse?!L4(EtDd

literal 0
HcmV?d00001

diff --git a/UefiCpuPkg/UefiCpuPkg.dsc b/UefiCpuPkg/UefiCpuPkg.dsc
index f533a14..5fcff15 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
-- 
1.9.5.msysgit.0


------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to