Refine code for BasePalCallLibNull & PeiPalCallLib.
[people/mcb30/edk2.git] / edk2 / MdePkg / Library / PeiPalCallLib / PalCallLib.c
index b1a9b10..aa423c9 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   PAL Call Services Function.\r
 \r
-  Copyright (c) 2006 - 2007 Intel Corporation. All rights reserved\r
+  Copyright (c) 2006 - 2008 Intel Corporation. All rights reserved\r
   This software and associated documentation (if any) is furnished\r
   under a license and may only be used or copied in accordance\r
   with the terms of the license. Except as permitted by such\r
@@ -26,8 +26,8 @@
 #include <Library/DebugLib.h>\r
 \r
 /**\r
-\r
   Makes a PAL procedure call.\r
+\r
   This is a wrapper function to make a PAL procedure call.  Based on the Index value,\r
   this API will make static or stacked PAL call. Architected procedures may be designated\r
   as required or optional.  If a PAL procedure is specified as optional, a unique return\r
   returned or undefined result may occur during the execution of the procedure.\r
   This function is only available on IPF.\r
 \r
-  @param Index - The PAL procedure Index number.\r
-  @param Arg2  - The 2nd parameter for PAL procedure calls.\r
-  @param Arg3  - The 3rd parameter for PAL procedure calls.\r
-  @param Arg4  - The 4th parameter for PAL procedure calls.\r
+  @param  Index  The PAL procedure Index number.\r
+  @param  Arg2   The 2nd parameter for PAL procedure calls.\r
+  @param  Arg3   The 3rd parameter for PAL procedure calls.\r
+  @param  Arg4   The 4th parameter for PAL procedure calls.\r
 \r
-  @return structure returned from the PAL Call procedure, including the status and return value.\r
+  @return Structure returned from the PAL Call procedure, including the status and return value.\r
 \r
 **/\r
 PAL_CALL_RETURN\r
@@ -68,28 +68,30 @@ PalCall (
   UINT64                            RecordSize;\r
 \r
   //\r
-  // Get Pei Service Table Pointer\r
+  // Get PEI Service Table Pointer\r
   //\r
   PeiServices = (CONST EFI_PEI_SERVICES **) GetPeiServicesTablePointer ();\r
 \r
   //\r
-  // Locate SEC Ppi\r
+  // Locate SEC Platform Information PPI\r
   //\r
-\r
   Status = PeiServicesLocatePpi (\r
-                             &gEfiSecPlatformInformationPpiGuid,\r
-                             0,\r
-                             NULL,\r
-                             (VOID **)&SecPlatformPpi\r
-                             );\r
+             &gEfiSecPlatformInformationPpiGuid,\r
+             0,\r
+             NULL,\r
+             (VOID **)&SecPlatformPpi\r
+             );\r
   ASSERT_EFI_ERROR (Status);\r
 \r
+  //\r
+  // Retrieve PAL call address from platform information reported by the PPI\r
+  //\r
   RecordSize = sizeof (IpfStatus);\r
   SecPlatformPpi->PlatformInformation (\r
-                        PeiServices,\r
-                        &RecordSize,\r
-                        (EFI_SEC_PLATFORM_INFORMATION_RECORD *) &IpfStatus\r
-                        );\r
+                    PeiServices,\r
+                    &RecordSize,\r
+                    (EFI_SEC_PLATFORM_INFORMATION_RECORD *) &IpfStatus\r
+                    );\r
   PalCallAddress = IpfStatus.PalCallAddress;\r
 \r
   ReturnVal = AsmPalCall (PalCallAddress, Index, Arg2, Arg3, Arg4);\r