]> git.proxmox.com Git - mirror_edk2.git/blobdiff - Nt32Pkg/Library/PeiNt32PeCoffExtraActionLib/PeiNt32PeCoffExtraActionLib.c
UefiCpuPkg: Remove double \r
[mirror_edk2.git] / Nt32Pkg / Library / PeiNt32PeCoffExtraActionLib / PeiNt32PeCoffExtraActionLib.c
index d19b4a2652d5cee8fb5fe4ca9c36c1581cbd5864..1035b92a10700c461017d2b98743e715347f87e3 100644 (file)
@@ -1,13 +1,7 @@
 /**@file\r
 \r
-Copyright (c) 2006, Intel Corporation\r
-All rights reserved. This program and the accompanying materials\r
-are licensed and made available under the terms and conditions of the BSD License\r
-which accompanies this distribution.  The full text of the license may be found at\r
-http://opensource.org/licenses/bsd-license.php\r
-\r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 Module Name:\r
 \r
@@ -24,8 +18,7 @@ Abstract:
 //\r
 // The package level header files this module uses\r
 //\r
-#include <FrameworkPei.h>\r
-#include <FrameworkModulePei.h>\r
+#include <PiPei.h>\r
 #include <WinNtPeim.h>\r
 \r
 //\r
@@ -126,15 +119,14 @@ AsciiToUnicode (
 }\r
 \r
 /**\r
-  Applies additional actions to relocate fixups to a PE/COFF image.\r
+  Performs additional actions after a PE/COFF image has been loaded and relocated.\r
 \r
-  Generally this function is called after sucessfully Applying relocation fixups \r
-  to a PE/COFF image for some specicial purpose. \r
-  As a example, For NT32 emulator, the function should be implemented and called\r
-  to support source level debug.  \r
-  \r
-  @param  ImageContext        Pointer to the image context structure that describes the PE/COFF\r
-                              image that is being relocated.\r
+  For NT32, this function load symbols to support source level debugging.\r
+\r
+  If ImageContext is NULL, then ASSERT().\r
+\r
+  @param  ImageContext  Pointer to the image context structure that describes the\r
+                        PE/COFF image that has already been loaded and relocated.\r
 \r
 **/\r
 VOID\r
@@ -148,6 +140,8 @@ PeCoffLoaderRelocateImageExtraAction (
   HMODULE           Library;\r
   UINTN             Index;\r
   \r
+  ASSERT (ImageContext != NULL);\r
+\r
   if (mWinNt == NULL) {\r
     Nt32PeCoffGetWinNtThunkStucture ();\r
   }\r
@@ -155,7 +149,7 @@ PeCoffLoaderRelocateImageExtraAction (
   // If we load our own PE COFF images the Windows debugger can not source\r
   //  level debug our code. If a valid PDB pointer exists usw it to load\r
   //  the *.dll file as a library using Windows* APIs. This allows \r
-  //  source level debug. The image is still loaded and reloaced\r
+  //  source level debug. The image is still loaded and relocated\r
   //  in the Framework memory space like on a real system (by the code above),\r
   //  but the entry point points into the DLL loaded by the code bellow. \r
   //\r
@@ -200,11 +194,11 @@ PeCoffLoaderRelocateImageExtraAction (
     if (Library != NULL) {\r
       //\r
       // InitializeDriver is the entry point we put in all our EFI DLL's. The\r
-      // DONT_RESOLVE_DLL_REFERENCES argument to LoadLIbraryEx() supresses the \r
+      // DONT_RESOLVE_DLL_REFERENCES argument to LoadLIbraryEx() suppresses the \r
       // normal DLL entry point of DllMain, and prevents other modules that are\r
       // referenced in side the DllFileName from being loaded. There is no error \r
       // checking as the we can point to the PE32 image loaded by Tiano. This \r
-      // step is only needed for source level debuging\r
+      // step is only needed for source level debugging\r
       //\r
       DllEntryPoint = (VOID *) (UINTN) mWinNt->GetProcAddress (Library, "InitializeDriver");\r
 \r
@@ -229,17 +223,15 @@ PeCoffLoaderRelocateImageExtraAction (
 }  \r
 \r
 /**\r
-  Unloads a loaded PE/COFF image from memory and releases its taken resource.\r
-  \r
-  Releases any environment specific resources that were allocated when the image \r
-  specified by ImageContext was loaded using PeCoffLoaderLoadImage(). \r
-  For NT32 emulator, the PE/COFF image loaded by system needs to release.\r
-  For real platform, the PE/COFF image loaded by Core doesn't needs to be unloaded, \r
+  Performs additional actions just before a PE/COFF image is unloaded.  Any resources\r
+  that were allocated by PeCoffLoaderRelocateImageExtraAction() must be freed.\r
   \r
+  For NT32, this function unloads symbols for source level debugging.\r
+\r
   If ImageContext is NULL, then ASSERT().\r
   \r
-  @param  ImageContext              Pointer to the image context structure that describes the PE/COFF\r
-                                    image to be unloaded.\r
+  @param  ImageContext  Pointer to the image context structure that describes the\r
+                        PE/COFF image that is being unloaded.\r
 \r
 **/\r
 VOID\r
@@ -248,4 +240,5 @@ PeCoffLoaderUnloadImageExtraAction (
   IN OUT PE_COFF_LOADER_IMAGE_CONTEXT  *ImageContext\r
   )\r
 {\r
-}
\ No newline at end of file
+  ASSERT (ImageContext != NULL);\r
+}\r