As of SVN 15115 the PEI core needs a MigratePeiServicesTablePointer function.

Background: The ArmPkg variant of the PeiServicesTablePointerLib implements the 
standard PEI Services table retrieval mechanism as defined in the PI 
Specification Volume 1 section 5.4.4 using the PIDRURW registers.  No special 
action is required on ARM to migrate the PEI Services table pointer after main 
memory initialization but a function must be implemented nonetheless.

---
 .../PeiServicesTablePointer.c                      | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git 
a/ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointer.c 
b/ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointer.c
index c2a4a35..9320637 100644
--- a/ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointer.c
+++ b/ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointer.c
@@ -60,3 +60,26 @@ GetPeiServicesTablePointer (
 {
   return (CONST EFI_PEI_SERVICES **)ArmReadTpidrurw();
 }
+
+/**
+Perform CPU specific actions required to migrate the PEI Services Table
+pointer from temporary RAM to permanent RAM.
+
+For IA32 CPUs, the PEI Services Table pointer is stored in the 4 bytes
+immediately preceding the Interrupt Descriptor Table (IDT) in memory.
+For X64 CPUs, the PEI Services Table pointer is stored in the 8 bytes
+immediately preceding the Interrupt Descriptor Table (IDT) in memory.
+For Itanium and ARM CPUs, a the PEI Services Table Pointer is stored in
+a dedicated CPU register.  This means that there is no memory storage
+associated with storing the PEI Services Table pointer, so no additional
+migration actions are required for Itanium or ARM CPUs.
+
+**/
+VOID
+EFIAPI
+MigratePeiServicesTablePointer(
+VOID
+)
+{
+  return;
+}
-- 

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eugene Cohen <[email protected]>

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to