Modify minor error in Nt32Pkg.dsc
authorlgao4 <lgao4@de2fecce-e211-0410-80a6-f3fac2684e05>
Fri, 30 Nov 2007 09:18:29 +0000 (09:18 +0000)
committerlgao4 <lgao4@de2fecce-e211-0410-80a6-f3fac2684e05>
Fri, 30 Nov 2007 09:18:29 +0000 (09:18 +0000)
git-svn-id: https://edk2.tianocore.org/svn/edk2/trunk@4349 de2fecce-e211-0410-80a6-f3fac2684e05

edk2/Nt32Pkg/Nt32Pkg.dsc
edk2/Nt32Pkg/Nt32Pkg.fdf
edk2/Nt32Pkg/Sec/SecMain.c
edk2/Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf
edk2/Nt32Pkg/WinNtFirmwareVolumePei/WinntFwh.c

index 8f48005..261a352 100644 (file)
   Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
   Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
   Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
-  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {\r
-    <LibraryClasses>\r
-      NULL|MdeModulePkg/Library/PeiCrc32GuidedSectionExtractLib/PeiCrc32GuidedSectionExtractLib.inf\r
-  }\r
+  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
   ##\r
   #  DXE Phase modules\r
   ##\r
index 8809805..248dc6a 100644 (file)
@@ -80,6 +80,7 @@ DATA = {
 \r
 0x00290000|0x00010000\r
 gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r
+FV = FvDxe\r
 \r
 ################################################################################\r
 #\r
@@ -91,7 +92,8 @@ gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTok
 # module statements.\r
 #\r
 ################################################################################\r
-[FV.FvRecovery]\r
+[FV.FvDxe]\r
+BlockSize          = 0x10000\r
 FvAlignment        = 16         #FV alignment and FV attributes setting.\r
 ERASE_POLARITY     = 1\r
 MEMORY_MAPPED      = TRUE\r
@@ -109,48 +111,42 @@ READ_STATUS        = TRUE
 READ_LOCK_CAP      = TRUE\r
 READ_LOCK_STATUS   = TRUE\r
 \r
-################################################################################\r
-#\r
-# The INF statements point to EDK component and EDK II module INF files, which will be placed into this FV image.\r
-# Parsing tools will scan the INF file to determine the type of component or module.\r
-# The component or module type is used to reference the standard rules\r
-# defined elsewhere in the FDF file.\r
-#\r
-# The format for INF statements is:\r
-# INF $(PathAndInfFileName)\r
-#\r
-################################################################################\r
-  ##\r
-  #  PEI Phase modules\r
-  ##\r
-  ##\r
-  #  PEI Apriori file example, more PEIM module added later.\r
-  ##\r
-APRIORI PEI {\r
-  INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
-  INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
+#INF  MdeModulePkg/Core/Dxe/DxeMain.inf\r
+FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F {\r
+    SECTION COMPRESS PI_STD {\r
+      SECTION GUIDED {\r
+        SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi\r
+      }\r
+    }\r
   }\r
-APRIORI DXE {\r
-  INF  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
-  INF  Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
+FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {\r
+    SECTION COMPRESS PI_STD {\r
+      SECTION GUIDED {\r
+        SECTION RAW = MdeModulePkg/Logo/Logo.bmp\r
+      }\r
+    }\r
   }\r
 \r
-INF  MdeModulePkg/Core/Pei/PeiMain.inf\r
-INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
-INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
-INF  Nt32Pkg/BootModePei/BootModePei.inf\r
-INF  Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
-INF  MdeModulePkg/Universal/MemoryTest/BaseMemoryTestPei/BaseMemoryTestPei.inf\r
-INF  MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
-INF  Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
-INF  Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
-INF  Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
-INF  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
+[FV.FvMain]\r
+BlockSize          = 0x10000\r
+FvAlignment        = 16         #FV alignment and FV attributes setting.\r
+ERASE_POLARITY     = 1\r
+MEMORY_MAPPED      = TRUE\r
+STICKY_WRITE       = TRUE\r
+LOCK_CAP           = TRUE\r
+LOCK_STATUS        = TRUE\r
+WRITE_DISABLED_CAP = TRUE\r
+WRITE_ENABLED_CAP  = TRUE\r
+WRITE_STATUS       = TRUE\r
+WRITE_LOCK_CAP     = TRUE\r
+WRITE_LOCK_STATUS  = TRUE\r
+READ_DISABLED_CAP  = TRUE\r
+READ_ENABLED_CAP   = TRUE\r
+READ_STATUS        = TRUE\r
+READ_LOCK_CAP      = TRUE\r
+READ_LOCK_STATUS   = TRUE\r
 \r
-  ##\r
-  #  DXE Phase modules\r
-  ##\r
-INF  MdeModulePkg/Core/Dxe/DxeMain.inf\r
+#INF  MdeModulePkg/Core/Dxe/DxeMain.inf\r
 INF  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
 INF  Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
 INF  Nt32Pkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf\r
@@ -195,6 +191,83 @@ INF  Nt32Pkg/WinNtSimpleFileSystemDxe/WinNtSimpleFileSystemDxe.inf
 INF  IntelFrameworkModulePkg/Universal/DriverSampleDxe/DriverSampleDxe.inf\r
 INF  MdeModulePkg/Application/HelloWorld/HelloWorld.inf\r
 \r
+\r
+[FV.FvRecovery]\r
+FvAlignment        = 16         #FV alignment and FV attributes setting.\r
+ERASE_POLARITY     = 1\r
+MEMORY_MAPPED      = TRUE\r
+STICKY_WRITE       = TRUE\r
+LOCK_CAP           = TRUE\r
+LOCK_STATUS        = TRUE\r
+WRITE_DISABLED_CAP = TRUE\r
+WRITE_ENABLED_CAP  = TRUE\r
+WRITE_STATUS       = TRUE\r
+WRITE_LOCK_CAP     = TRUE\r
+WRITE_LOCK_STATUS  = TRUE\r
+READ_DISABLED_CAP  = TRUE\r
+READ_ENABLED_CAP   = TRUE\r
+READ_STATUS        = TRUE\r
+READ_LOCK_CAP      = TRUE\r
+READ_LOCK_STATUS   = TRUE\r
+\r
+################################################################################\r
+#\r
+# The INF statements point to EDK component and EDK II module INF files, which will be placed into this FV image.\r
+# Parsing tools will scan the INF file to determine the type of component or module.\r
+# The component or module type is used to reference the standard rules\r
+# defined elsewhere in the FDF file.\r
+#\r
+# The format for INF statements is:\r
+# INF $(PathAndInfFileName)\r
+#\r
+################################################################################\r
+  ##\r
+  #  PEI Phase modules\r
+  ##\r
+  ##\r
+  #  PEI Apriori file example, more PEIM module added later.\r
+  ##\r
+APRIORI PEI {\r
+  INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
+  INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
+  }\r
+APRIORI DXE {\r
+  INF  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf\r
+  INF  Nt32Pkg/MetronomeDxe/MetronomeDxe.inf\r
+  }\r
+\r
+INF  MdeModulePkg/Core/Pei/PeiMain.inf\r
+INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf\r
+INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/PeiStatusCode.inf\r
+INF  Nt32Pkg/BootModePei/BootModePei.inf\r
+INF  Nt32Pkg/WinNtFlashMapPei/WinNtFlashMapPei.inf\r
+INF  MdeModulePkg/Universal/MemoryTest/BaseMemoryTestPei/BaseMemoryTestPei.inf\r
+INF  MdeModulePkg/Universal/Variable/Pei/VariablePei.inf\r
+INF  Nt32Pkg/WinNtAutoScanPei/WinNtAutoScanPei.inf\r
+INF  Nt32Pkg/WinNtFirmwareVolumePei/WinNtFirmwareVolumePei.inf\r
+INF  Nt32Pkg/WinNtThunkPPIToProtocolPei/WinNtThunkPPIToProtocolPei.inf\r
+#FILE PEIM = 86D70125-BAA3-4296-A62F-602BEBBB9081 {\r
+#    SECTION PEI_DEPEX = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/IA32/MdeModulePkg/Core/DxeIplPeim/DxeIpl/OUTPUT/DxeIpl.depex\r
+#    SECTION UI = "DxeIpl"\r
+#    SECTION PE32 = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/IA32/MdeModulePkg/Core/DxeIplPeim/DxeIpl/DEBUG/DxeIpl.efi\r
+#  }\r
+\r
+INF  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf\r
+\r
+FILE FV_IMAGE = bdddaa2d-7f72-4a0d-b35a-bef1b64f6a09 {\r
+    SECTION PEI_DEPEX = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/IA32/MdeModulePkg/Core/Pei/PeiMain/OUTPUT/PeiMain.depex\r
+    SECTION DXE_DEPEX = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/IA32/MdeModulePkg/Core/Pei/PeiMain/OUTPUT/PeiMain.depex    \r
+    SECTION FV_IMAGE = FvMain\r
+  }\r
+  ##\r
+  #  DXE Phase modules\r
+  ##\r
+INF  MdeModulePkg/Core/Dxe/DxeMain.inf\r
+\r
+#FILE FV_IMAGE = cc00b922-8c49-4ea6-b6e9-17920bae36e0 {\r
+#    SECTION FV_IMAGE = FvDxe\r
+#  }\r
+\r
 ################################################################################\r
 #\r
 # FILE statements are provided so that a platform integrator can include\r
@@ -210,21 +283,6 @@ FILE APPLICATION = c57ad6b7-0515-40a8-9d21-551652854e37 {
       }\r
     }\r
   }\r
-FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F {\r
-    SECTION COMPRESS PI_STD {\r
-      SECTION GUIDED {\r
-        SECTION PE32 = FatBinPkg/EnhancedFatDxe/Ia32/Fat.efi\r
-      }\r
-    }\r
-  }\r
-FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {\r
-    SECTION COMPRESS PI_STD {\r
-      SECTION GUIDED {\r
-        SECTION RAW = MdeModulePkg/Logo/Logo.bmp\r
-      }\r
-    }\r
-  }\r
-\r
 \r
 ################################################################################\r
 #\r
@@ -264,7 +322,7 @@ FILE FREEFORM = 7BB28B99-61BB-11D5-9A5D-0090273FC14D {
 [Rule.Common.PEIM]\r
   FILE PEIM = $(NAMED_GUID) {\r
      PEI_DEPEX PEI_DEPEX Optional        |.depex\r
-     PE32      PE32                      |.efi\r
+     PE32     PE32                       |.efi\r
      UI       STRING="$(MODULE_NAME)" Optional         \r
      VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)   \r
   }\r
index 3058269..4054d61 100644 (file)
@@ -155,7 +155,7 @@ Returns:
   CHAR16                *MemorySizeStr;\r
   CHAR16                *FirmwareVolumesStr;\r
   UINTN                 *StackPointer;\r
-  \r
+\r
   MemorySizeStr      = (CHAR16 *) FixedPcdGetPtr (PcdWinNtMemorySizeForSecMain);\r
   FirmwareVolumesStr = (CHAR16 *) FixedPcdGetPtr (PcdWinNtFirmwareVolume);\r
 \r
index d881114..444ffbd 100644 (file)
@@ -57,6 +57,7 @@
   gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogBase\r
   gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageEventLogSize\r
   gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageVariableBase\r
+  gEfiNt32PkgTokenSpaceGuid.PcdWinNtFlashNvStorageFtwSpareBase\r
 \r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize\r
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r
index b5afe10..e780593 100644 (file)
@@ -117,14 +117,16 @@ Returns:
         // Hard code the address of the spare block and variable services.\r
         //  Assume it's a hard coded offset from FV0 in FD0.\r
         //\r
-        FdBase  = FdBase + PcdGet32 (PcdWinNtFlashNvStorageVariableBase);\r
+        // FdBase  = FdBase + PcdGet32 (PcdWinNtFlashNvStorageVariableBase);\r
         FdSize  = \r
           PcdGet32 (PcdFlashNvStorageVariableSize) +\r
           PcdGet32 (PcdFlashNvStorageFtwWorkingSize) +\r
           PcdGet32 (PcdFlashNvStorageFtwSpareSize) +\r
           PcdGet32 (PcdWinNtFlashNvStorageEventLogSize);\r
 \r
-        BuildFvHob (FdBase, FdSize);\r
+        BuildFvHob (FdBase + PcdGet32 (PcdWinNtFlashNvStorageVariableBase), FdSize);\r
+        \r
+        BuildFvHob (FdBase + PcdGet32 (PcdWinNtFlashNvStorageFtwSpareBase), PcdGet32 (PcdFlashNvStorageFtwSpareSize));\r
       } else {\r
         //\r
         // For other FD's just map them in.\r