]> git.proxmox.com Git - mirror_edk2.git/blobdiff - DuetPkg/EfiLdr/EfiLoader.c
Support X64 build for DUET platform.
[mirror_edk2.git] / DuetPkg / EfiLdr / EfiLoader.c
index c8c749ba4d0941ba6d83c6cf6ac50c0b3ba7d4d4..b3f8d8cc3e51658701f100a2a7964f8c60ee1b45 100644 (file)
@@ -93,7 +93,7 @@ EfiLoader (
   // Decompress the image\r
   //\r
 \r
-  AsciiSPrint (PrintBuffer, 256, "Decompress BFV image, Image Address=0x%x! Offset=0x%x\n", \r
+  AsciiSPrint (PrintBuffer, 256, "Decompress BFV image, Image Address=0x%x Offset=0x%x\n", \r
                (UINTN)(EFILDR_HEADER_ADDRESS + EFILDRImage->Offset),\r
                EFILDRImage->Offset);\r
   PrintString (PrintBuffer);\r
@@ -145,9 +145,10 @@ EfiLoader (
   //\r
   // Decompress the image\r
   //\r
-  AsciiSPrint (PrintBuffer, 256, "Decompress DxeIpl image, Image Address=0x%x! Offset=0x%x\n", \r
+  AsciiSPrint (PrintBuffer, 256, "Decompress DxeIpl image, Image Address=0x%x Offset=0x%x\n", \r
                (UINTN)(EFILDR_HEADER_ADDRESS + EFILDRImage->Offset),\r
                EFILDRImage->Offset);\r
+  PrintString (PrintBuffer);\r
 \r
   Status = TianoGetInfo (\r
              (VOID *)(UINTN)(EFILDR_HEADER_ADDRESS + EFILDRImage->Offset),\r
@@ -192,6 +193,9 @@ EfiLoader (
     PrintString (PrintBuffer);\r
     SystemHang();\r
   }\r
+  AsciiSPrint (PrintBuffer, 256, "DxeIpl PE image is successed loaded at 0x%x, entry=0x%x\n",\r
+               (UINTN)DxeIplImage.ImageBasePage, (UINTN)DxeIplImage.EntryPoint);\r
+  PrintString (PrintBuffer);  \r
 \r
 //  PrintString("Image.NoPages = ");   \r
 //  PrintValue(Image.NoPages);\r
@@ -208,6 +212,10 @@ PrintHeader ('C');
   //\r
   // Decompress the image\r
   //\r
+  AsciiSPrint (PrintBuffer, 256, "Decompress DXEMain FV image, Image Address=0x%x! Offset=0x%x\n", \r
+               (UINTN)(EFILDR_HEADER_ADDRESS + EFILDRImage->Offset),\r
+               EFILDRImage->Offset);\r
+  PrintString (PrintBuffer);\r
 \r
   Status = TianoGetInfo (\r
              (VOID *)(UINTN)(EFILDR_HEADER_ADDRESS + EFILDRImage->Offset),\r
@@ -216,6 +224,8 @@ PrintHeader ('C');
              &ScratchSize\r
              );\r
   if (EFI_ERROR (Status)) {\r
+    AsciiSPrint (PrintBuffer, 256, "Fail to get decompress information for DXEMain FV image!\n");\r
+    PrintString (PrintBuffer);\r
     SystemHang();\r
   }\r
 \r
@@ -243,6 +253,9 @@ PrintHeader ('C');
   if (EFI_ERROR (Status)) {\r
     SystemHang();\r
   }\r
+  AsciiSPrint (PrintBuffer, 256, "DxeCore PE image is successed loaded at 0x%x, entry=0x%x\n",\r
+               (UINTN)DxeCoreImage.ImageBasePage, (UINTN)DxeCoreImage.EntryPoint);\r
+  PrintString (PrintBuffer);  \r
 \r
 PrintHeader ('E');\r
 \r
@@ -282,6 +295,9 @@ PrintHeader ('E');
     Handoff.DxeCoreImageSize  = DxeCoreImage.NoPages * EFI_PAGE_SIZE;\r
     Handoff.DxeCoreEntryPoint = (VOID *)(UINTN)DxeCoreImage.EntryPoint;\r
 \r
+    AsciiSPrint (PrintBuffer, 256, "Transfer to DxeIpl ...Address=0x%x\n", (UINTN)DxeIplImage.EntryPoint);\r
+    PrintString (PrintBuffer);\r
+    \r
     EfiMainEntrypoint = (EFI_MAIN_ENTRYPOINT)(UINTN)DxeIplImage.EntryPoint;\r
     EfiMainEntrypoint (&Handoff);\r
   }\r
@@ -295,3 +311,14 @@ PrintHeader ('F');
   SystemHang();\r
 }\r
 \r
+EFI_STATUS\r
+EFIAPI\r
+_ModuleEntryPoint (\r
+  UINT32    BiosMemoryMapBaseAddress\r
+  )\r
+{\r
+  EfiLoader(BiosMemoryMapBaseAddress);\r
+  return EFI_SUCCESS;\r
+}\r
+\r
+\r