Move microcode to offset 0 of BIOS region.
authorMang Guo <mang.guo@intel.com>
Tue, 28 Apr 2015 03:31:12 +0000 (03:31 +0000)
committerzwei4 <zwei4@Edk2>
Tue, 28 Apr 2015 03:31:12 +0000 (03:31 +0000)
Move microcode, whose address is fixed by SEC binary, to offset 0 of BIOS region.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Mang Guo <mang.guo@intel.com>
Reviewed-by: David Wei <david.wei@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17224 6f19259b-4bc3-4df7-8a09-765794883524

Vlv2TbltDevicePkg/PlatformPkg.fdf
Vlv2TbltDevicePkg/PlatformPkgGcc.fdf
Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc
Vlv2TbltDevicePkg/PlatformPkgIA32.dsc
Vlv2TbltDevicePkg/PlatformPkgX64.dsc

index ff0da1e834bdb89f60289beb534b606052dae782..396715ca1b4ed23ab5db295c54e46578ce1933b1 100644 (file)
@@ -22,54 +22,39 @@ DEFINE FLASH_NUM_BLOCKS = 0x300           #The number of blocks in 3Mb FLASH Dev
 DEFINE FLASH_AREA_BASE_ADDRESS                                = 0xFF800000
 DEFINE FLASH_AREA_SIZE                                        = 0x00800000
 
+DEFINE FLASH_REGION_VLVMICROCODE_OFFSET                       = 0x00000000 
+DEFINE FLASH_REGION_VLVMICROCODE_SIZE                         = 0x00030000
+DEFINE FLASH_REGION_VLVMICROCODE_BASE                         = 0xFFD00000
 
-DEFINE FLASH_REGION_VPD_OFFSET                                = 0x00000000
+DEFINE FLASH_REGION_VPD_OFFSET                                = 0x00030000
 DEFINE FLASH_REGION_VPD_SIZE                                  = 0x0003E000
 
-DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET = 0x0003E000
+DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET = 0x0006E000
 DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_SIZE   = 0x00002000
 
 
-DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET   = 0x00040000
+DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET   = 0x00070000
 DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_SIZE     = 0x00040000
 
 !if $(MINNOW2_FSP_BUILD) == TRUE
-DEFINE FLASH_REGION_FSPBIN_OFFSET                             = 0x00080000
+DEFINE FLASH_REGION_FSPBIN_OFFSET                             = 0x000B0000
 DEFINE FLASH_REGION_FSPBIN_SIZE                               = 0x00048000
-DEFINE FLASH_REGION_FSPBIN_BASE                               = 0xFFD80000
+DEFINE FLASH_REGION_FSPBIN_BASE                               = 0xFFDB0000
 
-DEFINE FLASH_REGION_AZALIABIN_OFFSET                          = 0x000C8000
+DEFINE FLASH_REGION_AZALIABIN_OFFSET                          = 0x000F8000
 DEFINE FLASH_REGION_AZALIABIN_SIZE                            = 0x00008000
-DEFINE FLASH_REGION_AZALIABIN_BASE                            = 0xFFDC8000
+DEFINE FLASH_REGION_AZALIABIN_BASE                            = 0xFFDF8000
 
 !endif
 
-DEFINE FLASH_REGION_VLVMICROCODE_OFFSET                       = 0x000D0000 
-DEFINE FLASH_REGION_VLVMICROCODE_SIZE                         = 0x00030000
-DEFINE FLASH_REGION_VLVMICROCODE_BASE                         = 0xFFDD0000
-
-!if $(TARGET) == RELEASE
 DEFINE FLASH_REGION_FVMAIN_OFFSET                             = 0x00100000
-DEFINE FLASH_REGION_FVMAIN_SIZE                               = 0x001AF000
-!else
-DEFINE FLASH_REGION_FVMAIN_OFFSET                             = 0x00100000
-DEFINE FLASH_REGION_FVMAIN_SIZE                               = 0x001A6000
-!endif
+DEFINE FLASH_REGION_FVMAIN_SIZE                               = 0x001A5000
 
-!if $(TARGET) == RELEASE
-DEFINE FLASH_REGION_FV_RECOVERY2_OFFSET                       = 0x002AF000
-DEFINE FLASH_REGION_FV_RECOVERY2_SIZE                         = 0x00021000
-
-DEFINE FLASH_REGION_FV_RECOVERY_OFFSET                        = 0x002D0000
-DEFINE FLASH_REGION_FV_RECOVERY_SIZE                          = 0x00030000
-!else
-
-DEFINE FLASH_REGION_FV_RECOVERY2_OFFSET                       = 0x002A6000
+DEFINE FLASH_REGION_FV_RECOVERY2_OFFSET                       = 0x002A5000
 DEFINE FLASH_REGION_FV_RECOVERY2_SIZE                         = 0x0002D000
 
-DEFINE FLASH_REGION_FV_RECOVERY_OFFSET                        = 0x002D3000
-DEFINE FLASH_REGION_FV_RECOVERY_SIZE                          = 0x0002D000
-!endif
+DEFINE FLASH_REGION_FV_RECOVERY_OFFSET                        = 0x002D2000
+DEFINE FLASH_REGION_FV_RECOVERY_SIZE                          = 0x0002E000
 
 ################################################################################
 #
@@ -124,6 +109,13 @@ SET gPlatformModuleTokenSpaceGuid.PcdFlashAreaSize                   = $(FLASH_A
 # Fv Size can be adjusted; FVMAIN_COMPACT can be reduced to 0x120000, and FV_RECOVERY can be enlarged to 0x80000
 #
 ################################################################################
+  #
+  # CPU Microcodes
+  #
+
+$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE)
+gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize
+FV = MICROCODE_FV
 $(FLASH_REGION_VPD_OFFSET)|$(FLASH_REGION_VPD_SIZE)
 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
 #NV_VARIABLE_STORE
@@ -195,13 +187,6 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTok
   FILE = Vlv2TbltDevicePkg/FspAzaliaConfigData/AzaliaConfig.bin
 
 !endif
-  #
-  # CPU Microcodes
-  #
-
-$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE)
-gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize
-FV = MICROCODE_FV
 
   #
   # Main Block
index 875bfb7ba9a9a8ab17f1715d365cd88be839a19c..547d6a07e492be23fbc88a3fbc6ccddb33b5998c 100644 (file)
@@ -22,32 +22,31 @@ DEFINE FLASH_NUM_BLOCKS = 0x300           #The number of blocks in 3Mb FLASH Dev
 DEFINE FLASH_AREA_BASE_ADDRESS                                = 0xFF800000
 DEFINE FLASH_AREA_SIZE                                        = 0x00800000
 
+DEFINE FLASH_REGION_VLVMICROCODE_OFFSET                       = 0x00000000 
+DEFINE FLASH_REGION_VLVMICROCODE_SIZE                         = 0x00030000
+DEFINE FLASH_REGION_VLVMICROCODE_BASE                         = 0xFFD00000
 
-DEFINE FLASH_REGION_VPD_OFFSET                                = 0x00000000
+DEFINE FLASH_REGION_VPD_OFFSET                                = 0x00030000
 DEFINE FLASH_REGION_VPD_SIZE                                  = 0x0003E000
 
-DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET = 0x0003E000
+DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET = 0x0006E000
 DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_SIZE   = 0x00002000
 
 
-DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET   = 0x00040000
+DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET   = 0x00070000
 DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_SIZE     = 0x00040000
 
 !if $(MINNOW2_FSP_BUILD) == TRUE
-DEFINE FLASH_REGION_FSPBIN_OFFSET                             = 0x00080000
+DEFINE FLASH_REGION_FSPBIN_OFFSET                             = 0x000B0000
 DEFINE FLASH_REGION_FSPBIN_SIZE                               = 0x00048000
-DEFINE FLASH_REGION_FSPBIN_BASE                               = 0xFFD80000
+DEFINE FLASH_REGION_FSPBIN_BASE                               = 0xFFDB0000
 
-DEFINE FLASH_REGION_AZALIABIN_OFFSET                          = 0x000C8000
+DEFINE FLASH_REGION_AZALIABIN_OFFSET                          = 0x000F8000
 DEFINE FLASH_REGION_AZALIABIN_SIZE                            = 0x00008000
-DEFINE FLASH_REGION_AZALIABIN_BASE                            = 0xFFDC8000
+DEFINE FLASH_REGION_AZALIABIN_BASE                            = 0xFFDF8000
 
 !endif
 
-DEFINE FLASH_REGION_VLVMICROCODE_OFFSET                       = 0x000D0000 
-DEFINE FLASH_REGION_VLVMICROCODE_SIZE                         = 0x00030000
-DEFINE FLASH_REGION_VLVMICROCODE_BASE                         = 0xFFDD0000
-
 DEFINE FLASH_REGION_FVMAIN_OFFSET                             = 0x00100000
 DEFINE FLASH_REGION_FVMAIN_SIZE                               = 0x00196000
 
@@ -114,6 +113,15 @@ SET gPlatformModuleTokenSpaceGuid.PcdFlashAreaSize                   = $(FLASH_A
 # Since the Fce tool don't have gcc version, we can't handle default variable in Linux, 
 # so we hardcode the default value of variable here.
 # Please note that we MUST update the binary once the default value is changed. 
+
+#
+  # CPU Microcodes
+  #
+
+$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE)
+gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize
+FV = MICROCODE_FV
+
 $(FLASH_REGION_VPD_OFFSET)|$(FLASH_REGION_VPD_SIZE)
 gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
 FILE = $(WORKSPACE)/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin
@@ -137,13 +145,6 @@ FILE = $(WORKSPACE)/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageFtwSpare.bin
   FILE = Vlv2TbltDevicePkg/FspAzaliaConfigData/AzaliaConfig.bin
 
 !endif
-  #
-  # CPU Microcodes
-  #
-
-$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE)
-gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize
-FV = MICROCODE_FV
 
   #
   # Main Block
index 8959a9e5fecc391916c82656ab5ca7a98b436378..21936e0c1287ced1828e196009211d6146874d7f 100644 (file)
 
 [PcdsFixedAtBuild.common]
 !if $(MINNOW2_FSP_BUILD) == TRUE
-# $(FLASH_REGION_VLVMICROCODE_BASE)
-  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFDD0000
+# $(FLASH_REGION_VLVMICROCODE_BASE) 
+  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFD00000
 # $(FLASH_REGION_VLVMICROCODE_SIZE)
   gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x00030000
   gFspWrapperTokenSpaceGuid.PcdFlashMicroCodeOffset|0x60
 # $(FLASH_AREA_SIZE)
   gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheSize|0x00800000
 # $(FLASH_REGION_FSPBIN_BASE)
-  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFD80000
+  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFDB0000
+
 !endif
 
 !if $(PERFORMANCE_ENABLE) == TRUE
index e9865db5c775524922f596859d8324c1fae594b2..9ba5a69734b2da89c2e3f9c2610ad94092f1c6b4 100644 (file)
 [PcdsFixedAtBuild.common]
 !if $(MINNOW2_FSP_BUILD) == TRUE
 # $(FLASH_REGION_VLVMICROCODE_BASE)
-  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFDD0000
+  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFD00000
 # $(FLASH_REGION_VLVMICROCODE_SIZE)
   gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x00030000
   gFspWrapperTokenSpaceGuid.PcdFlashMicroCodeOffset|0x60
 # $(FLASH_AREA_SIZE)
   gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheSize|0x00800000
 # $(FLASH_REGION_FSPBIN_BASE)
-  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFD80000
+  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFDB0000
 !endif
 
 !if $(PERFORMANCE_ENABLE) == TRUE
index 70fc016d039c5c535cc5c41aad3e8535ece2f8c9..264b3b1ea428ca3a44e0aeec11b9a5bccd442660 100644 (file)
 [PcdsFixedAtBuild.common]
 !if $(MINNOW2_FSP_BUILD) == TRUE
 # $(FLASH_REGION_VLVMICROCODE_BASE)
-  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFDD0000
+  gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress|0xFFD00000
 # $(FLASH_REGION_VLVMICROCODE_SIZE)
   gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize|0x00030000
   gFspWrapperTokenSpaceGuid.PcdFlashMicroCodeOffset|0x60
 # $(FLASH_AREA_SIZE)
   gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheSize|0x00800000
 # $(FLASH_REGION_FSPBIN_BASE)
-  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFD80000
+  gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|0xFFDB0000
 !endif
 
 !if $(PERFORMANCE_ENABLE) == TRUE