#include <Library/DebugLib.h>\r
\r
/**\r
- The function returns the pointer to PeiServices.\r
+ Retrieves the cached value of the PEI Services Table pointer.\r
\r
- The function returns the pointer to PeiServices.\r
- It will ASSERT() if the pointer to PeiServices is NULL.\r
+ Returns the cached value of the PEI Services Table pointer in a CPU specific manner \r
+ as specified in the CPU binding section of the Platform Initialization Pre-EFI \r
+ Initialization Core Interface Specification.\r
+ \r
+ If the cached PEI Services Table pointer is NULL, then ASSERT().\r
\r
@return The pointer to PeiServices.\r
\r
return PeiServices;\r
}\r
\r
+\r
/**\r
+ Caches a pointer PEI Services Table. \r
+ \r
+ Caches the pointer to the PEI Services Table specified by PeiServicesTablePointer \r
+ in a CPU specific manner as specified in the CPU binding section of the Platform Initialization \r
+ Pre-EFI Initialization Core Interface Specification. \r
The function set the pointer of PEI services in KR7 register \r
according to PI specification.\r
\r
+ If PeiServicesTablePointer is NULL, then ASSERT().\r
+ \r
@param PeiServicesTablePointer The address of PeiServices pointer.\r
**/\r
VOID\r
IN CONST EFI_PEI_SERVICES ** PeiServicesTablePointer\r
)\r
{\r
+ ASSERT (PeiServicesTablePointer != NULL);\r
AsmWriteKr7 ((UINT64)(UINTN)PeiServicesTablePointer);\r
}\r
\r