1#/** @file 2# FDF file of Platform. 3# 4# Copyright (c) 2008 - 2015, Intel Corporation. All rights reserved.<BR> 5# 6# This program and the accompanying materials are licensed and made available under 7# the terms and conditions of the BSD License that accompanies this distribution. 8# The full text of the license may be found at 9# http://opensource.org/licenses/bsd-license.php. 10# 11# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 12# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 13# 14# 15#**/ 16 17[Defines] 18DEFINE FLASH_BASE = 0xFFC00000 #The base address of the 4Mb FLASH Device. 19DEFINE FLASH_SIZE = 0x00400000 #The flash size in bytes of the 4Mb FLASH Device. 20DEFINE FLASH_BLOCK_SIZE = 0x1000 #The block size in bytes of the 4Mb FLASH Device. 21DEFINE FLASH_NUM_BLOCKS = 0x400 #The number of blocks in 4Mb FLASH Device. 22DEFINE FLASH_AREA_BASE_ADDRESS = 0xFF800000 23DEFINE FLASH_AREA_SIZE = 0x00800000 24 25DEFINE FLASH_REGION_VLVMICROCODE_OFFSET = 0x00000000 26DEFINE FLASH_REGION_VLVMICROCODE_SIZE = 0x00040000 27DEFINE FLASH_REGION_VLVMICROCODE_BASE = 0xFFC00000 28 29DEFINE FLASH_REGION_VPD_OFFSET = 0x00130000 30DEFINE FLASH_REGION_VPD_SIZE = 0x0003E000 31 32DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET = 0x0016E000 33DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_SIZE = 0x00002000 34 35 36DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET = 0x00170000 37DEFINE FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_SIZE = 0x00040000 38 39!if $(MINNOW2_FSP_BUILD) == TRUE 40DEFINE FLASH_REGION_FSPBIN_OFFSET = 0x001B0000 41DEFINE FLASH_REGION_FSPBIN_SIZE = 0x00048000 42DEFINE FLASH_REGION_FSPBIN_BASE = 0xFFDB0000 43 44DEFINE FLASH_REGION_AZALIABIN_OFFSET = 0x001F8000 45DEFINE FLASH_REGION_AZALIABIN_SIZE = 0x00008000 46DEFINE FLASH_REGION_AZALIABIN_BASE = 0xFFDF8000 47 48!endif 49 50DEFINE FLASH_REGION_FVMAIN_OFFSET = 0x00200000 51DEFINE FLASH_REGION_FVMAIN_SIZE = 0x001A5000 52 53DEFINE FLASH_REGION_FV_RECOVERY2_OFFSET = 0x003A5000 54DEFINE FLASH_REGION_FV_RECOVERY2_SIZE = 0x0002B000 55 56DEFINE FLASH_REGION_FV_RECOVERY_OFFSET = 0x003D0000 57DEFINE FLASH_REGION_FV_RECOVERY_SIZE = 0x00030000 58 59################################################################################ 60# 61# FD Section 62# The [FD] Section is made up of the definition statements and a 63# description of what goes into the Flash Device Image. Each FD section 64# defines one flash "device" image. A flash device image may be one of 65# the following: Removable media bootable image (like a boot floppy 66# image,) an Option ROM image (that would be "flashed" into an add-in 67# card,) a System "Flash" image (that would be burned into a system's 68# flash) or an Update ("Capsule") image that will be used to update and 69# existing system flash. 70# 71################################################################################ 72[FD.Vlv] 73BaseAddress = $(FLASH_BASE)|gPlatformModuleTokenSpaceGuid.PcdFlashAreaBaseAddress #The base address of the 3Mb FLASH Device. 74Size = $(FLASH_SIZE)|gPlatformModuleTokenSpaceGuid.PcdFlashAreaSize #The flash size in bytes of the 3Mb FLASH Device. 75ErasePolarity = 1 76BlockSize = $(FLASH_BLOCK_SIZE) #The block size in bytes of the 3Mb FLASH Device. 77NumBlocks = $(FLASH_NUM_BLOCKS) #The number of blocks in 3Mb FLASH Device. 78 79# 80#Flash location override based on actual flash map 81# 82SET gPlatformModuleTokenSpaceGuid.PcdFlashAreaBaseAddress = $(FLASH_AREA_BASE_ADDRESS) 83SET gPlatformModuleTokenSpaceGuid.PcdFlashAreaSize = $(FLASH_AREA_SIZE) 84 85!if $(MINNOW2_FSP_BUILD) == TRUE 86# put below PCD value setting into dsc file 87#SET gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchAddress = $(FLASH_REGION_VLVMICROCODE_BASE) 88#SET gFspWrapperTokenSpaceGuid.PcdCpuMicrocodePatchRegionSize = $(FLASH_REGION_VLVMICROCODE_SIZE) 89#SET gFspWrapperTokenSpaceGuid.PcdFlashMicroCodeOffset = 0x60 90#SET gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheAddress = $(FLASH_AREA_BASE_ADDRESS) 91#SET gFspWrapperTokenSpaceGuid.PcdFlashCodeCacheSize = $(FLASH_AREA_SIZE) 92#SET gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase = $(FLASH_REGION_FSPBIN_BASE) 93#SET gFspWrapperTokenSpaceGuid.PcdFlashFvFspSize = $(FLASH_REGION_FSPBIN_SIZE) 94 95!endif 96################################################################################ 97# 98# Following are lists of FD Region layout which correspond to the locations of different 99# images within the flash device. 100# 101# Regions must be defined in ascending order and may not overlap. 102# 103# A Layout Region start with a eight digit hex offset (leading "0x" required) followed by 104# the pipe "|" character, followed by the size of the region, also in hex with the leading 105# "0x" characters. Like: 106# Offset|Size 107# PcdOffsetCName|PcdSizeCName 108# RegionType <FV, DATA, or FILE> 109# Fv Size can be adjusted; FVMAIN_COMPACT can be reduced to 0x120000, and FV_RECOVERY can be enlarged to 0x80000 110# 111################################################################################ 112 # 113 # CPU Microcodes 114 # 115 116$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE) 117gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize 118FV = MICROCODE_FV 119$(FLASH_REGION_VPD_OFFSET)|$(FLASH_REGION_VPD_SIZE) 120gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize 121#NV_VARIABLE_STORE 122DATA = { 123 ## This is the EFI_FIRMWARE_VOLUME_HEADER 124 # ZeroVector [] 125 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 126 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 127 # FileSystemGuid: gEfiSystemNvDataFvGuid = 128 # { 0xFFF12B8D, 0x7696, 0x4C8B, { 0xA9, 0x85, 0x27, 0x47, 0x07, 0x5B, 0x4F, 0x50 }} 129 0x8D, 0x2B, 0xF1, 0xFF, 0x96, 0x76, 0x8B, 0x4C, 130 0xA9, 0x85, 0x27, 0x47, 0x07, 0x5B, 0x4F, 0x50, 131 # FvLength: 0x80000 132 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 133 #Signature "_FVH" #Attributes 134 0x5f, 0x46, 0x56, 0x48, 0xff, 0xfe, 0x04, 0x00, 135 #HeaderLength #CheckSum #ExtHeaderOffset #Reserved #Revision 136 0x48, 0x00, 0x2A, 0x09, 0x00, 0x00, 0x00, 0x02, 137 #Blockmap[0]: 7 Blocks * 0x10000 Bytes / Block 138 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 139 #Blockmap[1]: End 140 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 141 ## This is the VARIABLE_STORE_HEADER 142!if $(SECURE_BOOT_ENABLE) == TRUE 143 #Signature: gEfiAuthenticatedVariableGuid = 144 # { 0xaaf32c78, 0x947b, 0x439a, { 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92 }} 145 0x78, 0x2c, 0xf3, 0xaa, 0x7b, 0x94, 0x9a, 0x43, 146 0xa1, 0x80, 0x2e, 0x14, 0x4e, 0xc3, 0x77, 0x92, 147!else 148 #Signature: gEfiVariableGuid = 149 # { 0xddcf3616, 0x3275, 0x4164, { 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d }} 150 0x16, 0x36, 0xcf, 0xdd, 0x75, 0x32, 0x64, 0x41, 151 0x98, 0xb6, 0xfe, 0x85, 0x70, 0x7f, 0xfe, 0x7d, 152!endif 153 #Size: 0x3E000 (gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize) - 0x48 (size of EFI_FIRMWARE_VOLUME_HEADER) = 0x03DFB8 154 # This can speed up the Variable Dispatch a bit. 155 0xB8, 0xDF, 0x03, 0x00, 156 #FORMATTED: 0x5A #HEALTHY: 0xFE #Reserved: UINT16 #Reserved1: UINT32 157 0x5A, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 158} 159 160 161$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET)|$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_SIZE) 162gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize 163#NV_FTW_WORKING 164DATA = { 165 # EFI_FAULT_TOLERANT_WORKING_BLOCK_HEADER->Signature = gEdkiiWorkingBlockSignatureGuid = 166 # { 0x9e58292b, 0x7c68, 0x497d, { 0xa0, 0xce, 0x65, 0x0, 0xfd, 0x9f, 0x1b, 0x95 }} 167 0x2B, 0x29, 0x58, 0x9E, 0x68, 0x7C, 0x7D, 0x49, 168 0xA0, 0xCE, 0x65, 0x0, 0xFD, 0x9F, 0x1B, 0x95, 169 170 # Crc:UINT32 #WorkingBlockValid:1, WorkingBlockInvalid:1, Reserved 171 0xE2, 0x33, 0xF2, 0x3, 0xFE, 0xFF, 0xFF, 0xFF, 172 # WriteQueueSize: UINT64 #Size: 0x2000 - 0x20 (FTW_WORKING_HEADER) = 0x1FE0 173 0xE0, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 174} 175 176$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET)|$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_SIZE) 177gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize 178 179!if $(MINNOW2_FSP_BUILD) == TRUE 180 181 $(FLASH_REGION_FSPBIN_OFFSET)|$(FLASH_REGION_FSPBIN_SIZE) 182 gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|gFspWrapperTokenSpaceGuid.PcdFlashFvFspSize 183 FILE = Vlv2MiscBinariesPkg/FspBinary/FvFsp.bin 184 185 186 $(FLASH_REGION_AZALIABIN_OFFSET)|$(FLASH_REGION_AZALIABIN_SIZE) 187 FILE = Vlv2TbltDevicePkg/FspAzaliaConfigData/AzaliaConfig.bin 188 189!endif 190 191 # 192 # Main Block 193 # 194$(FLASH_REGION_FVMAIN_OFFSET)|$(FLASH_REGION_FVMAIN_SIZE) 195gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase|gPlatformModuleTokenSpaceGuid.PcdFlashFvMainSize 196FV = FVMAIN_COMPACT 197 198 # 199 # FV Recovery#2 200 # 201$(FLASH_REGION_FV_RECOVERY2_OFFSET)|$(FLASH_REGION_FV_RECOVERY2_SIZE) 202gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base|gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Size 203FV = FVRECOVERY2 204 205 # 206 # FV Recovery 207 # 208$(FLASH_REGION_FV_RECOVERY_OFFSET)|$(FLASH_REGION_FV_RECOVERY_SIZE) 209gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase|gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoverySize 210FV = FVRECOVERY 211 212################################################################################ 213# 214# FV Section 215# 216# [FV] section is used to define what components or modules are placed within a flash 217# device file. This section also defines order the components and modules are positioned 218# within the image. The [FV] section consists of define statements, set statements and 219# module statements. 220# 221################################################################################ 222[FV.MICROCODE_FV] 223BlockSize = $(FLASH_BLOCK_SIZE) 224FvAlignment = 16 225ERASE_POLARITY = 1 226MEMORY_MAPPED = TRUE 227STICKY_WRITE = TRUE 228LOCK_CAP = TRUE 229LOCK_STATUS = FALSE 230WRITE_DISABLED_CAP = TRUE 231WRITE_ENABLED_CAP = TRUE 232WRITE_STATUS = TRUE 233WRITE_LOCK_CAP = TRUE 234WRITE_LOCK_STATUS = TRUE 235READ_DISABLED_CAP = TRUE 236READ_ENABLED_CAP = TRUE 237READ_STATUS = TRUE 238READ_LOCK_CAP = TRUE 239READ_LOCK_STATUS = TRUE 240 241FILE RAW = 197DB236-F856-4924-90F8-CDF12FB875F3 { 242 $(OUTPUT_DIRECTORY)\$(TARGET)_$(TOOL_CHAIN_TAG)\$(DXE_ARCHITECTURE)\MicrocodeUpdates.bin 243} 244 245################################################################################ 246# 247# FV Section 248# 249# [FV] section is used to define what components or modules are placed within a flash 250# device file. This section also defines order the components and modules are positioned 251# within the image. The [FV] section consists of define statements, set statements and 252# module statements. 253# 254################################################################################ 255[FV.FVRECOVERY2] 256BlockSize = $(FLASH_BLOCK_SIZE) 257FvAlignment = 16 #FV alignment and FV attributes setting. 258ERASE_POLARITY = 1 259MEMORY_MAPPED = TRUE 260STICKY_WRITE = TRUE 261LOCK_CAP = TRUE 262LOCK_STATUS = TRUE 263WRITE_DISABLED_CAP = TRUE 264WRITE_ENABLED_CAP = TRUE 265WRITE_STATUS = TRUE 266WRITE_LOCK_CAP = TRUE 267WRITE_LOCK_STATUS = TRUE 268READ_DISABLED_CAP = TRUE 269READ_ENABLED_CAP = TRUE 270READ_STATUS = TRUE 271READ_LOCK_CAP = TRUE 272READ_LOCK_STATUS = TRUE 273FvNameGuid = B73FE497-B92E-416e-8326-45AD0D270092 274 275 276 277INF $(PLATFORM_PACKAGE)/PlatformInitPei/PlatformInitPei.inf 278 279!if $(MINNOW2_FSP_BUILD) == FALSE 280INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSmbusArpDisabled.inf 281INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/VlvInitPeim.inf 282INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchInitPeim.inf 283INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSpiPeim.inf 284INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmAccess.inf 285INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmControl.inf 286INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf 287INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MpS3.inf 288INF EdkCompatibilityPkg/Compatibility/AcpiVariableHobOnSmramReserveHobThunk/AcpiVariableHobOnSmramReserveHobThunk.inf 289!endif 290 291INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PiSmmCommunicationPei.inf 292!if $(TPM_ENABLED) == TRUE 293INF SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf 294INF SecurityPkg/Tcg/TcgPei/TcgPei.inf 295INF SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf 296!endif 297!if $(FTPM_ENABLE) == TRUE 298INF SecurityPkg/Tcg/TrEEPei/TrEEPei.inf #use PCD config 299!endif 300INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf 301 302!if $(ACPI50_ENABLE) == TRUE 303 INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf 304!endif 305!if $(PERFORMANCE_ENABLE) == TRUE 306INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf 307!endif 308 309[FV.FVRECOVERY] 310BlockSize = $(FLASH_BLOCK_SIZE) 311FvAlignment = 16 #FV alignment and FV attributes setting. 312ERASE_POLARITY = 1 313MEMORY_MAPPED = TRUE 314STICKY_WRITE = TRUE 315LOCK_CAP = TRUE 316LOCK_STATUS = TRUE 317WRITE_DISABLED_CAP = TRUE 318WRITE_ENABLED_CAP = TRUE 319WRITE_STATUS = TRUE 320WRITE_LOCK_CAP = TRUE 321WRITE_LOCK_STATUS = TRUE 322READ_DISABLED_CAP = TRUE 323READ_ENABLED_CAP = TRUE 324READ_STATUS = TRUE 325READ_LOCK_CAP = TRUE 326READ_LOCK_STATUS = TRUE 327FvNameGuid = B73FE497-B92E-416e-8326-45AD0D270091 328 329 330!if $(MINNOW2_FSP_BUILD) == TRUE 331INF IntelFspWrapperPkg/FspWrapperSecCore/FspWrapperSecCore.inf 332!else 333INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SecCore.inf 334!endif 335 336INF MdeModulePkg/Core/Pei/PeiMain.inf 337!if $(MINNOW2_FSP_BUILD) == TRUE 338INF Vlv2TbltDevicePkg/FspSupport/BootModePei/BootModePei.inf 339INF IntelFspWrapperPkg/FspInitPei/FspInitPei.inf 340!endif 341INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/CpuPeim.inf 342INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf 343INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf 344 345INF $(PLATFORM_PACKAGE)/PlatformPei/PlatformPei.inf 346 347!if $(MINNOW2_FSP_BUILD) == FALSE 348INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SeCUma.inf 349!endif 350 351!if $(FTPM_ENABLE) == TRUE 352INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/fTPMInitPeim.inf 353!endif 354 355!if $(SOURCE_DEBUG_ENABLE) == TRUE 356 INF SourceLevelDebugPkg/DebugAgentPei/DebugAgentPei.inf 357!endif 358 359 360!if $(CAPSULE_ENABLE) == TRUE 361INF MdeModulePkg/Universal/CapsulePei/CapsulePei.inf 362!if $(DXE_ARCHITECTURE) == "X64" 363INF MdeModulePkg/Universal/CapsulePei/CapsuleX64.inf 364!endif 365!endif 366 367!if $(MINNOW2_FSP_BUILD) == FALSE 368!if $(PCIESC_ENABLE) == TRUE 369INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchEarlyInitPeim.inf 370!endif 371INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MemoryInit.inf 372!endif 373 374INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf 375 376[FV.FVMAIN] 377BlockSize = $(FLASH_BLOCK_SIZE) 378FvAlignment = 16 379ERASE_POLARITY = 1 380MEMORY_MAPPED = TRUE 381STICKY_WRITE = TRUE 382LOCK_CAP = TRUE 383LOCK_STATUS = TRUE 384WRITE_DISABLED_CAP = TRUE 385WRITE_ENABLED_CAP = TRUE 386WRITE_STATUS = TRUE 387WRITE_LOCK_CAP = TRUE 388WRITE_LOCK_STATUS = TRUE 389READ_DISABLED_CAP = TRUE 390READ_ENABLED_CAP = TRUE 391READ_STATUS = TRUE 392READ_LOCK_CAP = TRUE 393READ_LOCK_STATUS = TRUE 394FvNameGuid = A881D567-6CB0-4eee-8435-2E72D33E45B5 395 396APRIORI DXE { 397 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf 398 INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf 399 INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf 400 } 401 402FILE FREEFORM = C3E36D09-8294-4b97-A857-D5288FE33E28 { 403 SECTION RAW = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/$(DXE_ARCHITECTURE)/BiosId.bin 404 } 405 406 # 407 # EDK II Related Platform codes 408 # 409 410 !if $(MINNOW2_FSP_BUILD) == TRUE 411 INF IntelFspWrapperPkg/FspNotifyDxe/FspNotifyDxe.inf 412 !endif 413 414INF MdeModulePkg/Core/Dxe/DxeMain.inf 415INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf 416!if $(ACPI50_ENABLE) == TRUE 417INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf 418INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.inf 419!endif 420 421 422INF IntelFrameworkModulePkg/Universal/CpuIoDxe/CpuIoDxe.inf 423INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf 424INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf 425INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf 426INF MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf 427INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf 428INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MpCpu.inf 429INF $(PLATFORM_PACKAGE)/Metronome/Metronome.inf 430INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf 431INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf 432INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf 433INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf 434INF IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf 435 436INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf 437INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf 438INF $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbSmm.inf 439INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf 440INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiSmm.inf 441!if $(SECURE_BOOT_ENABLE) 442INF SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf 443!endif 444 445INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf 446 447INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf 448INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf 449INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf 450INF $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbRuntimeDxe.inf 451 452 453INF $(PLATFORM_PACKAGE)/PlatformSetupDxe/PlatformSetupDxe.inf 454 455!if $(DATAHUB_ENABLE) == TRUE 456INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf 457!endif 458INF IntelFrameworkModulePkg/Universal/StatusCode/DatahubStatusCodeHandlerDxe/DatahubStatusCodeHandlerDxe.inf 459INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf 460 461INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Dptf.inf 462 463 # 464 # EDK II Related Silicon codes 465 # 466INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchS3SupportDxe.inf 467 468!if $(USE_HPET_TIMER) == TRUE 469INF PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf 470!else 471INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmartTimer.inf 472!endif 473INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmControl.inf 474 475INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmbusDxe.inf 476 477INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/IntelPchLegacyInterrupt.inf 478INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchReset.inf 479 480!if $(MINNOW2_FSP_BUILD) == FALSE 481INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchInitDxe.inf 482!endif 483INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmiDispatcher.inf 484!if $(PCIESC_ENABLE) == TRUE 485INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPcieSmm.inf 486!endif 487 488INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiRuntime.inf 489INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPolicyInitDxe.inf 490INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchBiosWriteProtect.inf 491INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmAccess.inf 492INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PciHostBridge.inf 493!if $(MINNOW2_FSP_BUILD) == FALSE 494INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/VlvInitDxe.inf 495!else 496INF IntelFrameworkModulePkg/Universal/LegacyRegionDxe/LegacyRegionDxe.inf 497INF Vlv2TbltDevicePkg/VlvPlatformInitDxe/VlvPlatformInitDxe.inf 498!endif 499!if $(MINNOW2_FSP_BUILD) == FALSE 500 !if $(SEC_ENABLE) == TRUE 501 INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/HeciDrv.inf 502 INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SeCPolicyInitDxe.inf 503 !endif 504!endif 505!if $(TPM_ENABLED) == TRUE 506INF SecurityPkg/Tcg/TcgConfigDxe/TcgConfigDxe.inf 507INF SecurityPkg/Tcg/TcgDxe/TcgDxe.inf 508INF RuleOverride = DRIVER_ACPITABLE SecurityPkg/Tcg/TcgSmm/TcgSmm.inf 509!endif 510!if $(FTPM_ENABLE) == TRUE 511INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/Tpm2DeviceSeCPei.inf 512INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Tpm2DeviceSeCDxe.inf 513INF SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf 514INF SecurityPkg/Tcg/TrEEDxe/TrEEDxe.inf 515INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/FtpmSmm.inf 516!endif 517 518# 519# EDK II Related Platform codes 520# 521INF $(PLATFORM_PACKAGE)/PlatformSmm/PlatformSmm.inf 522INF $(PLATFORM_PACKAGE)/PlatformInfoDxe/PlatformInfoDxe.inf 523INF $(PLATFORM_PACKAGE)/PlatformCpuInfoDxe/PlatformCpuInfoDxe.inf 524INF $(PLATFORM_PACKAGE)/PlatformDxe/PlatformDxe.inf 525INF $(PLATFORM_PACKAGE)/PciPlatform/PciPlatform.inf 526INF $(PLATFORM_PACKAGE)/SaveMemoryConfig/SaveMemoryConfig.inf 527INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PlatformCpuPolicy.inf 528INF $(PLATFORM_PACKAGE)/PpmPolicy/PpmPolicy.inf 529INF $(PLATFORM_PACKAGE)/SmramSaveInfoHandlerSmm/SmramSaveInfoHandlerSmm.inf 530!if $(GOP_DRIVER_ENABLE) == TRUE 531 INF $(PLATFORM_PACKAGE)/PlatformGopPolicy/PlatformGopPolicy.inf 532 FILE DRIVER = FF0C8745-3270-4439-B74F-3E45F8C77064 { 533 SECTION DXE_DEPEX_EXP = {gPlatformGOPPolicyGuid} 534 SECTION PE32 = Vlv2MiscBinariesPkg/GOP/7.2.1011/RELEASE_VS2008x86/$(DXE_ARCHITECTURE)/IntelGopDriver.efi 535 SECTION UI = "IntelGopDriver" 536} 537!endif 538 539INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PnpDxe.inf 540 # 541 # SMM 542 # 543INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf 544INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf 545INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCpuDxeSmm.inf 546 547INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf 548INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf 549INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCommunicationSmm.inf 550INF $(PLATFORM_PACKAGE)/SmmSwDispatch2OnSmmSwDispatchThunk/SmmSwDispatch2OnSmmSwDispatchThunk.inf 551INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PowerManagement2.inf 552# INF Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/Smm/DigitalThermalSensor.inf 553INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/DigitalThermalSensor.inf 554 # 555 # ACPI 556 # 557INF MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf 558INF $(PLATFORM_PACKAGE)/BootScriptSaveDxe/BootScriptSaveDxe.inf 559INF IntelFrameworkModulePkg/Universal/Acpi/AcpiSupportDxe/AcpiSupportDxe.inf 560INF RuleOverride = ACPITABLE2 Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/AcpiTables/PowerManagementAcpiTables.inf 561 562INF RuleOverride = ACPITABLE $(PLATFORM_RC_PACKAGE)/AcpiTablesPCAT/AcpiTables.inf 563 564INF $(PLATFORM_PACKAGE)/AcpiPlatform/AcpiPlatform.inf 565 566 # 567 # PCI 568 # 569INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf 570 571INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/ISPDxe.inf 572 573 574# 575# ISA 576# 577INF $(PLATFORM_PACKAGE)/Wpce791/Wpce791.inf 578INF IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf 579INF IntelFrameworkModulePkg/Bus/Isa/IsaIoDxe/IsaIoDxe.inf 580!if $(SOURCE_DEBUG_ENABLE) != TRUE 581INF IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf 582!endif 583#INF IntelFrameworkModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf 584#INF IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf 585 586# 587# SDIO 588# 589INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcHost.inf 590INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcMediaDevice.inf 591# 592# IDE/SCSI/AHCI 593# 594INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf 595 596INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf 597 598INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf 599!if $(SATA_ENABLE) == TRUE 600INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SataController.inf 601# 602 603# 604INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf 605INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf 606!if $(SCSI_ENABLE) == TRUE 607INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf 608INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf 609!endif 610# 611!endif 612# Console 613# 614INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf 615INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf 616INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf 617INF IntelFrameworkModulePkg/Universal/Console/VgaClassDxe/VgaClassDxe.inf 618INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf 619INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf 620INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf 621INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf 622 # 623 # USB 624 # 625!if $(USB_ENABLE) == TRUE 626INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf 627INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf 628INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf 629INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf 630INF MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf 631INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf 632INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf 633!endif 634 635 # 636 # ECP 637 # 638INF EdkCompatibilityPkg/Compatibility/LegacyRegion2OnLegacyRegionThunk/LegacyRegion2OnLegacyRegionThunk.inf 639INF EdkCompatibilityPkg/Compatibility/SmmBaseOnSmmBase2Thunk/SmmBaseOnSmmBase2Thunk.inf 640INF EdkCompatibilityPkg/Compatibility/SmmBaseHelper/SmmBaseHelper.inf 641INF EdkCompatibilityPkg/Compatibility/SmmAccess2OnSmmAccessThunk/SmmAccess2OnSmmAccessThunk.inf 642INF EdkCompatibilityPkg/Compatibility/SmmControl2OnSmmControlThunk/SmmControl2OnSmmControlThunk.inf 643INF EdkCompatibilityPkg/Compatibility/FvOnFv2Thunk/FvOnFv2Thunk.inf 644 # 645 # SMBIOS 646 # 647INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf 648INF $(PLATFORM_PACKAGE)/SmBiosMiscDxe/SmBiosMiscDxe.inf 649 650INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmbiosMemory.inf 651 652 # 653 # Legacy Modules 654 # 655INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf 656 657# 658# FAT file system 659# 660FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F { 661 SECTION PE32 = FatBinPkg/EnhancedFatDxe/$(EDK_DXE_ARCHITECTURE)/Fat.efi 662 } 663# 664# UEFI Shell 665# 666FILE APPLICATION = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile) { 667# SECTION PE32 = EdkShellBinPkg/FullShell/$(EDK_DXE_ARCHITECTURE)/Shell_Full.efi 668 SECTION PE32 = ShellBinPkg/UefiShell/$(EDK_DXE_ARCHITECTURE)/Shell.efi 669 } 670 671 672 673!if $(GOP_DRIVER_ENABLE) == TRUE 674FILE FREEFORM = 878AC2CC-5343-46F2-B563-51F89DAF56BA { 675 SECTION RAW = Vlv2MiscBinariesPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin 676 SECTION UI = "IntelGopVbt" 677} 678!endif 679 680# 681# Network Modules 682# 683!if $(NETWORK_ENABLE) == TRUE 684 FILE DRIVER = 22DE1691-D65D-456a-993E-A253DD1F308C { 685 SECTION PE32 = Vlv2MiscBinariesPkg/UNDI/RtkUndiDxe/$(DXE_ARCHITECTURE)/RtkUndiDxe.efi 686 SECTION UI = "UNDI" 687 } 688 INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf 689 INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf 690 INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf 691 INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf 692 INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf 693 INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf 694 INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf 695 INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf 696 !if $(NETWORK_IP6_ENABLE) == TRUE 697 INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf 698 INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf 699 INF NetworkPkg/IpSecDxe/IpSecDxe.inf 700 INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf 701 INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf 702 !endif 703 !if $(NETWORK_IP6_ENABLE) == TRUE 704 INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf 705 INF NetworkPkg/TcpDxe/TcpDxe.inf 706 !else 707 INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf 708 INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf 709 !endif 710 !if $(NETWORK_VLAN_ENABLE) == TRUE 711 INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf 712 !endif 713 !if $(NETWORK_ISCSI_ENABLE) == TRUE 714 !if $(NETWORK_IP6_ENABLE) == TRUE 715 INF NetworkPkg/IScsiDxe/IScsiDxe.inf 716 !else 717 INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf 718 !endif 719 !endif 720!endif 721 722[FV.FVMAIN_COMPACT] 723BlockSize = $(FLASH_BLOCK_SIZE) 724FvAlignment = 16 725ERASE_POLARITY = 1 726MEMORY_MAPPED = TRUE 727STICKY_WRITE = TRUE 728LOCK_CAP = TRUE 729LOCK_STATUS = TRUE 730WRITE_DISABLED_CAP = TRUE 731WRITE_ENABLED_CAP = TRUE 732WRITE_STATUS = TRUE 733WRITE_LOCK_CAP = TRUE 734WRITE_LOCK_STATUS = TRUE 735READ_DISABLED_CAP = TRUE 736READ_ENABLED_CAP = TRUE 737READ_STATUS = TRUE 738READ_LOCK_CAP = TRUE 739READ_LOCK_STATUS = TRUE 740 741 742 743FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { 744!if $(LZMA_ENABLE) == TRUE 745# LZMA Compress 746 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { 747 SECTION FV_IMAGE = FVMAIN 748 } 749!else 750!if $(DXE_COMPRESS_ENABLE) == TRUE 751# Tiano Compress 752 SECTION GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE { 753 SECTION FV_IMAGE = FVMAIN 754 } 755!else 756# No Compress 757 SECTION COMPRESS PI_NONE { 758 SECTION FV_IMAGE = FVMAIN 759 } 760!endif 761!endif 762 } 763 764[FV.SETUP_DATA] 765BlockSize = $(FLASH_BLOCK_SIZE) 766#NumBlocks = 0x10 767FvAlignment = 16 768ERASE_POLARITY = 1 769MEMORY_MAPPED = TRUE 770STICKY_WRITE = TRUE 771LOCK_CAP = TRUE 772LOCK_STATUS = TRUE 773WRITE_DISABLED_CAP = TRUE 774WRITE_ENABLED_CAP = TRUE 775WRITE_STATUS = TRUE 776WRITE_LOCK_CAP = TRUE 777WRITE_LOCK_STATUS = TRUE 778READ_DISABLED_CAP = TRUE 779READ_ENABLED_CAP = TRUE 780READ_STATUS = TRUE 781READ_LOCK_CAP = TRUE 782READ_LOCK_STATUS = TRUE 783 784 785[FV.Update_Data] 786BlockSize = $(FLASH_BLOCK_SIZE) 787FvAlignment = 16 788ERASE_POLARITY = 1 789MEMORY_MAPPED = TRUE 790STICKY_WRITE = TRUE 791LOCK_CAP = TRUE 792LOCK_STATUS = TRUE 793WRITE_DISABLED_CAP = TRUE 794WRITE_ENABLED_CAP = TRUE 795WRITE_STATUS = TRUE 796WRITE_LOCK_CAP = TRUE 797WRITE_LOCK_STATUS = TRUE 798READ_DISABLED_CAP = TRUE 799READ_ENABLED_CAP = TRUE 800READ_STATUS = TRUE 801READ_LOCK_CAP = TRUE 802READ_LOCK_STATUS = TRUE 803 804FILE RAW = 88888888-8888-8888-8888-888888888888 { 805 FD = Vlv 806 } 807 808[FV.BiosUpdateCargo] 809BlockSize = $(FLASH_BLOCK_SIZE) 810FvAlignment = 16 811ERASE_POLARITY = 1 812MEMORY_MAPPED = TRUE 813STICKY_WRITE = TRUE 814LOCK_CAP = TRUE 815LOCK_STATUS = TRUE 816WRITE_DISABLED_CAP = TRUE 817WRITE_ENABLED_CAP = TRUE 818WRITE_STATUS = TRUE 819WRITE_LOCK_CAP = TRUE 820WRITE_LOCK_STATUS = TRUE 821READ_DISABLED_CAP = TRUE 822READ_ENABLED_CAP = TRUE 823READ_STATUS = TRUE 824READ_LOCK_CAP = TRUE 825READ_LOCK_STATUS = TRUE 826 827 828 829[FV.BiosUpdate] 830BlockSize = $(FLASH_BLOCK_SIZE) 831FvAlignment = 16 832ERASE_POLARITY = 1 833MEMORY_MAPPED = TRUE 834STICKY_WRITE = TRUE 835LOCK_CAP = TRUE 836LOCK_STATUS = TRUE 837WRITE_DISABLED_CAP = TRUE 838WRITE_ENABLED_CAP = TRUE 839WRITE_STATUS = TRUE 840WRITE_LOCK_CAP = TRUE 841WRITE_LOCK_STATUS = TRUE 842READ_DISABLED_CAP = TRUE 843READ_ENABLED_CAP = TRUE 844READ_STATUS = TRUE 845READ_LOCK_CAP = TRUE 846READ_LOCK_STATUS = TRUE 847 848[Capsule.Capsule_Boot] 849# 850# gEfiCapsuleGuid supported by platform 851# { 0x3B6686BD, 0x0D76, 0x4030, { 0xB7, 0x0E, 0xB5, 0x51, 0x9E, 0x2F, 0xC5, 0xA0 }} 852# 853CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0 854CAPSULE_FLAGS = PersistAcrossReset 855CAPSULE_HEADER_SIZE = 0x20 856 857FV = BiosUpdate 858 859[Capsule.Capsule_Reset] 860# 861# gEfiCapsuleGuid supported by platform 862# { 0x3B6686BD, 0x0D76, 0x4030, { 0xB7, 0x0E, 0xB5, 0x51, 0x9E, 0x2F, 0xC5, 0xA0 }} 863# 864CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0 865CAPSULE_FLAGS = PersistAcrossReset 866CAPSULE_HEADER_SIZE = 0x20 867 868FV = BiosUpdate 869 870################################################################################ 871# 872# Rules are use with the [FV] section's module INF type to define 873# how an FFS file is created for a given INF file. The following Rule are the default 874# rules for the different module type. User can add the customized rules to define the 875# content of the FFS file. 876# 877################################################################################ 878[Rule.Common.SEC] 879 FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED { 880 PE32 PE32 Align = 8 $(INF_OUTPUT)/$(MODULE_NAME).efi 881 RAW BIN Align = 16 |.com 882 } 883 884[Rule.Common.SEC.BINARY] 885 FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED { 886 PE32 PE32 Align = 8 |.efi 887 RAW BIN Align = 16 |.com 888 } 889 890[Rule.Common.PEI_CORE] 891 FILE PEI_CORE = $(NAMED_GUID) { 892 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 893 UI STRING="$(MODULE_NAME)" Optional 894 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 895 } 896 897[Rule.Common.PEIM] 898 FILE PEIM = $(NAMED_GUID) { 899 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 900 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 901 UI STRING="$(MODULE_NAME)" Optional 902 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 903 } 904 905[Rule.Common.PEIM.BINARY] 906 FILE PEIM = $(NAMED_GUID) { 907 PEI_DEPEX PEI_DEPEX Optional |.depex 908 PE32 PE32 Align = Auto |.efi 909 UI STRING="$(MODULE_NAME)" Optional 910 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 911 } 912 913[Rule.Common.PEIM.BIOSID] 914 FILE PEIM = $(NAMED_GUID) { 915 RAW BIN BiosId.bin 916 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 917 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 918 UI STRING="$(MODULE_NAME)" Optional 919 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 920 } 921 922[Rule.Common.USER_DEFINED.APINIT] 923 FILE RAW = $(NAMED_GUID) Fixed Align=4K { 924 RAW SEC_BIN |.com 925 } 926#cjia 2011-07-21 927[Rule.Common.USER_DEFINED.LEGACY16] 928 FILE FREEFORM = $(NAMED_GUID) { 929 UI STRING="$(MODULE_NAME)" Optional 930 RAW BIN |.bin 931 } 932#cjia 933 934[Rule.Common.USER_DEFINED.ASM16] 935 FILE FREEFORM = $(NAMED_GUID) { 936 UI STRING="$(MODULE_NAME)" Optional 937 RAW BIN |.com 938 } 939 940[Rule.Common.DXE_CORE] 941 FILE DXE_CORE = $(NAMED_GUID) { 942 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 943 UI STRING="$(MODULE_NAME)" Optional 944 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 945 } 946 947[Rule.Common.UEFI_DRIVER] 948 FILE DRIVER = $(NAMED_GUID) { 949 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 950 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 951 UI STRING="$(MODULE_NAME)" Optional 952 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 953 } 954 955[Rule.Common.UEFI_DRIVER.BINARY] 956 FILE DRIVER = $(NAMED_GUID) { 957 DXE_DEPEX DXE_DEPEX Optional |.depex 958 PE32 PE32 |.efi 959 UI STRING="$(MODULE_NAME)" Optional 960 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 961 } 962 963[Rule.Common.UEFI_DRIVER.NATIVE_BINARY] 964 FILE DRIVER = $(NAMED_GUID) { 965 DXE_DEPEX DXE_DEPEX Optional $(WORKSPACE)/$(PLATFORM_PACKAGE)/IntelGopDepex/IntelGopDriver.depex 966 PE32 PE32 |.efi 967 UI STRING="$(MODULE_NAME)" Optional 968 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 969 } 970 971[Rule.Common.DXE_DRIVER] 972 FILE DRIVER = $(NAMED_GUID) { 973 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 974 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 975 UI STRING="$(MODULE_NAME)" Optional 976 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 977 } 978 979[Rule.Common.DXE_DRIVER.BINARY] 980 FILE DRIVER = $(NAMED_GUID) { 981 DXE_DEPEX DXE_DEPEX Optional |.depex 982 PE32 PE32 |.efi 983 UI STRING="$(MODULE_NAME)" Optional 984 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 985 } 986 987[Rule.Common.DXE_DRIVER.DRIVER_ACPITABLE] 988 FILE DRIVER = $(NAMED_GUID) { 989 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 990 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 991 UI STRING="$(MODULE_NAME)" Optional 992 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 993 RAW ACPI Optional |.acpi 994 RAW ASL Optional |.aml 995 } 996 997[Rule.Common.DXE_RUNTIME_DRIVER] 998 FILE DRIVER = $(NAMED_GUID) { 999 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 1000 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1001 UI STRING="$(MODULE_NAME)" Optional 1002 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1003 } 1004 1005[Rule.Common.DXE_RUNTIME_DRIVER.BINARY] 1006 FILE DRIVER = $(NAMED_GUID) { 1007 DXE_DEPEX DXE_DEPEX Optional |.depex 1008 PE32 PE32 |.efi 1009 UI STRING="$(MODULE_NAME)" Optional 1010 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1011 } 1012 1013[Rule.Common.DXE_SMM_DRIVER] 1014 FILE SMM = $(NAMED_GUID) { 1015 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 1016 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1017 UI STRING="$(MODULE_NAME)" Optional 1018 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1019 } 1020 1021[Rule.Common.DXE_SMM_DRIVER.BINARY] 1022 FILE SMM = $(NAMED_GUID) { 1023 SMM_DEPEX SMM_DEPEX |.depex 1024 PE32 PE32 |.efi 1025 RAW BIN Optional |.aml 1026 UI STRING="$(MODULE_NAME)" Optional 1027 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1028 } 1029 1030[Rule.Common.DXE_SMM_DRIVER.DRIVER_ACPITABLE] 1031 FILE SMM = $(NAMED_GUID) { 1032 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 1033 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1034 UI STRING="$(MODULE_NAME)" Optional 1035 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1036 RAW ACPI Optional |.acpi 1037 RAW ASL Optional |.aml 1038 } 1039 1040[Rule.Common.SMM_CORE] 1041 FILE SMM_CORE = $(NAMED_GUID) { 1042 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 1043 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1044 UI STRING="$(MODULE_NAME)" Optional 1045 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1046 } 1047 1048[Rule.Common.SMM_CORE.BINARY] 1049 FILE SMM_CORE = $(NAMED_GUID) { 1050 DXE_DEPEX DXE_DEPEX Optional |.depex 1051 PE32 PE32 |.efi 1052 UI STRING="$(MODULE_NAME)" Optional 1053 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1054 } 1055 1056[Rule.Common.UEFI_APPLICATION] 1057 FILE APPLICATION = $(NAMED_GUID) { 1058 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 1059 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1060 UI STRING="$(MODULE_NAME)" Optional 1061 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1062 } 1063 1064[Rule.Common.UEFI_APPLICATION.UI] 1065 FILE APPLICATION = $(NAMED_GUID) { 1066 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1067 UI STRING="Enter Setup" 1068 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1069 } 1070 1071[Rule.Common.USER_DEFINED] 1072 FILE FREEFORM = $(NAMED_GUID) { 1073 UI STRING="$(MODULE_NAME)" Optional 1074 RAW BIN |.bin 1075 } 1076 1077[Rule.Common.USER_DEFINED.ACPITABLE] 1078 FILE FREEFORM = $(NAMED_GUID) { 1079 RAW ACPI Optional |.acpi 1080 RAW ASL Optional |.aml 1081 } 1082 1083[Rule.Common.USER_DEFINED.ACPITABLE2] 1084 FILE FREEFORM = $(NAMED_GUID) { 1085 RAW ASL Optional |.aml 1086 } 1087 1088[Rule.Common.ACPITABLE] 1089 FILE FREEFORM = $(NAMED_GUID) { 1090 RAW ACPI Optional |.acpi 1091 RAW ASL Optional |.aml 1092 } 1093 1094