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 = 0x00196000 52 53DEFINE FLASH_REGION_FV_RECOVERY2_OFFSET = 0x00396000 54DEFINE FLASH_REGION_FV_RECOVERY2_SIZE = 0x0002C000 55 56DEFINE FLASH_REGION_FV_RECOVERY_OFFSET = 0x003C2000 57DEFINE FLASH_REGION_FV_RECOVERY_SIZE = 0x0003E000 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# Since the Fce tool don't have gcc version, we can't handle default variable in Linux, 113# so we hardcode the default value of variable here. 114# Please note that we MUST update the binary once the default value is changed. 115 116# 117 # CPU Microcodes 118 # 119 120$(FLASH_REGION_VLVMICROCODE_OFFSET)|$(FLASH_REGION_VLVMICROCODE_SIZE) 121gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeAddress|gPlatformModuleTokenSpaceGuid.PcdFlashMicroCodeSize 122FV = MICROCODE_FV 123 124$(FLASH_REGION_VPD_OFFSET)|$(FLASH_REGION_VPD_SIZE) 125gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize 126FILE = $(WORKSPACE)/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageVariable.bin 127 128$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_OFFSET)|$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_WORKING_SIZE) 129gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize 130FILE = $(WORKSPACE)/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageFtwWorking.bin 131 132$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_OFFSET)|$(FLASH_REGION_NVSTORAGE_SUBREGION_NV_FTW_SPARE_SIZE) 133gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize 134FILE = $(WORKSPACE)/Vlv2TbltDevicePkg/Stitch/Gcc/NvStorageFtwSpare.bin 135 136!if $(MINNOW2_FSP_BUILD) == TRUE 137 138 $(FLASH_REGION_FSPBIN_OFFSET)|$(FLASH_REGION_FSPBIN_SIZE) 139 gFspWrapperTokenSpaceGuid.PcdFlashFvFspBase|gFspWrapperTokenSpaceGuid.PcdFlashFvFspSize 140 FILE = Vlv2MiscBinariesPkg/FspBinary/FvFsp.bin 141 142 143 $(FLASH_REGION_AZALIABIN_OFFSET)|$(FLASH_REGION_AZALIABIN_SIZE) 144 FILE = Vlv2TbltDevicePkg/FspAzaliaConfigData/AzaliaConfig.bin 145 146!endif 147 148 # 149 # Main Block 150 # 151$(FLASH_REGION_FVMAIN_OFFSET)|$(FLASH_REGION_FVMAIN_SIZE) 152gPlatformModuleTokenSpaceGuid.PcdFlashFvMainBase|gPlatformModuleTokenSpaceGuid.PcdFlashFvMainSize 153FV = FVMAIN_COMPACT 154 155 # 156 # FV Recovery#2 157 # 158$(FLASH_REGION_FV_RECOVERY2_OFFSET)|$(FLASH_REGION_FV_RECOVERY2_SIZE) 159gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Base|gPlatformModuleTokenSpaceGuid.PcdFlashFvRecovery2Size 160FV = FVRECOVERY2 161 162 # 163 # FV Recovery 164 # 165$(FLASH_REGION_FV_RECOVERY_OFFSET)|$(FLASH_REGION_FV_RECOVERY_SIZE) 166gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoveryBase|gPlatformModuleTokenSpaceGuid.PcdFlashFvRecoverySize 167FV = FVRECOVERY 168 169################################################################################ 170# 171# FV Section 172# 173# [FV] section is used to define what components or modules are placed within a flash 174# device file. This section also defines order the components and modules are positioned 175# within the image. The [FV] section consists of define statements, set statements and 176# module statements. 177# 178################################################################################ 179[FV.MICROCODE_FV] 180BlockSize = $(FLASH_BLOCK_SIZE) 181FvAlignment = 16 182ERASE_POLARITY = 1 183MEMORY_MAPPED = TRUE 184STICKY_WRITE = TRUE 185LOCK_CAP = TRUE 186LOCK_STATUS = FALSE 187WRITE_DISABLED_CAP = TRUE 188WRITE_ENABLED_CAP = TRUE 189WRITE_STATUS = TRUE 190WRITE_LOCK_CAP = TRUE 191WRITE_LOCK_STATUS = TRUE 192READ_DISABLED_CAP = TRUE 193READ_ENABLED_CAP = TRUE 194READ_STATUS = TRUE 195READ_LOCK_CAP = TRUE 196READ_LOCK_STATUS = TRUE 197 198FILE RAW = 197DB236-F856-4924-90F8-CDF12FB875F3 { 199 $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/$(DXE_ARCHITECTURE)/MicrocodeUpdates.bin 200} 201 202################################################################################ 203# 204# FV Section 205# 206# [FV] section is used to define what components or modules are placed within a flash 207# device file. This section also defines order the components and modules are positioned 208# within the image. The [FV] section consists of define statements, set statements and 209# module statements. 210# 211################################################################################ 212[FV.FVRECOVERY2] 213BlockSize = $(FLASH_BLOCK_SIZE) 214FvAlignment = 16 #FV alignment and FV attributes setting. 215ERASE_POLARITY = 1 216MEMORY_MAPPED = TRUE 217STICKY_WRITE = TRUE 218LOCK_CAP = TRUE 219LOCK_STATUS = TRUE 220WRITE_DISABLED_CAP = TRUE 221WRITE_ENABLED_CAP = TRUE 222WRITE_STATUS = TRUE 223WRITE_LOCK_CAP = TRUE 224WRITE_LOCK_STATUS = TRUE 225READ_DISABLED_CAP = TRUE 226READ_ENABLED_CAP = TRUE 227READ_STATUS = TRUE 228READ_LOCK_CAP = TRUE 229READ_LOCK_STATUS = TRUE 230FvNameGuid = B73FE497-B92E-416e-8326-45AD0D270092 231 232 233 234INF $(PLATFORM_PACKAGE)/PlatformInitPei/PlatformInitPei.inf 235 236!if $(MINNOW2_FSP_BUILD) == FALSE 237INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSmbusArpDisabled.inf 238INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/VlvInitPeim.inf 239INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchInitPeim.inf 240INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchSpiPeim.inf 241INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmAccess.inf 242INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PeiSmmControl.inf 243INF UefiCpuPkg/Universal/Acpi/S3Resume2Pei/S3Resume2Pei.inf 244INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MpS3.inf 245INF EdkCompatibilityPkg/Compatibility/AcpiVariableHobOnSmramReserveHobThunk/AcpiVariableHobOnSmramReserveHobThunk.inf 246!endif 247 248INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PiSmmCommunicationPei.inf 249!if $(TPM_ENABLED) == TRUE 250INF SecurityPkg/Tcg/TrEEConfig/TrEEConfigPei.inf 251INF SecurityPkg/Tcg/TcgPei/TcgPei.inf 252INF SecurityPkg/Tcg/PhysicalPresencePei/PhysicalPresencePei.inf 253!endif 254!if $(FTPM_ENABLE) == TRUE 255INF SecurityPkg/Tcg/TrEEPei/TrEEPei.inf #use PCD config 256!endif 257INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf 258 259!if $(ACPI50_ENABLE) == TRUE 260 INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTablePei/FirmwarePerformancePei.inf 261!endif 262!if $(PERFORMANCE_ENABLE) == TRUE 263INF MdeModulePkg/Universal/ReportStatusCodeRouter/Pei/ReportStatusCodeRouterPei.inf 264!endif 265 266[FV.FVRECOVERY] 267BlockSize = $(FLASH_BLOCK_SIZE) 268FvAlignment = 16 #FV alignment and FV attributes setting. 269ERASE_POLARITY = 1 270MEMORY_MAPPED = TRUE 271STICKY_WRITE = TRUE 272LOCK_CAP = TRUE 273LOCK_STATUS = TRUE 274WRITE_DISABLED_CAP = TRUE 275WRITE_ENABLED_CAP = TRUE 276WRITE_STATUS = TRUE 277WRITE_LOCK_CAP = TRUE 278WRITE_LOCK_STATUS = TRUE 279READ_DISABLED_CAP = TRUE 280READ_ENABLED_CAP = TRUE 281READ_STATUS = TRUE 282READ_LOCK_CAP = TRUE 283READ_LOCK_STATUS = TRUE 284FvNameGuid = B73FE497-B92E-416e-8326-45AD0D270091 285 286 287!if $(MINNOW2_FSP_BUILD) == TRUE 288INF IntelFspWrapperPkg/FspWrapperSecCore/FspWrapperSecCore.inf 289!else 290INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SecCore.inf 291!endif 292 293INF MdeModulePkg/Core/Pei/PeiMain.inf 294!if $(MINNOW2_FSP_BUILD) == TRUE 295INF Vlv2TbltDevicePkg/FspSupport/BootModePei/BootModePei.inf 296INF IntelFspWrapperPkg/FspInitPei/FspInitPei.inf 297!endif 298INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/CpuPeim.inf 299INF MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf 300INF MdeModulePkg/Universal/Variable/Pei/VariablePei.inf 301 302INF $(PLATFORM_PACKAGE)/PlatformPei/PlatformPei.inf 303 304!if $(MINNOW2_FSP_BUILD) == FALSE 305INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/SeCUma.inf 306!endif 307 308!if $(FTPM_ENABLE) == TRUE 309INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/fTPMInitPeim.inf 310!endif 311 312!if $(SOURCE_DEBUG_ENABLE) == TRUE 313 INF SourceLevelDebugPkg/DebugAgentPei/DebugAgentPei.inf 314!endif 315 316 317!if $(CAPSULE_ENABLE) == TRUE 318INF MdeModulePkg/Universal/CapsulePei/CapsulePei.inf 319!if $(DXE_ARCHITECTURE) == "X64" 320INF MdeModulePkg/Universal/CapsulePei/CapsuleX64.inf 321!endif 322!endif 323 324!if $(MINNOW2_FSP_BUILD) == FALSE 325!if $(PCIESC_ENABLE) == TRUE 326INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/PchEarlyInitPeim.inf 327!endif 328INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/MemoryInit.inf 329!endif 330 331INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf 332 333[FV.FVMAIN] 334BlockSize = $(FLASH_BLOCK_SIZE) 335FvAlignment = 16 336ERASE_POLARITY = 1 337MEMORY_MAPPED = TRUE 338STICKY_WRITE = TRUE 339LOCK_CAP = TRUE 340LOCK_STATUS = TRUE 341WRITE_DISABLED_CAP = TRUE 342WRITE_ENABLED_CAP = TRUE 343WRITE_STATUS = TRUE 344WRITE_LOCK_CAP = TRUE 345WRITE_LOCK_STATUS = TRUE 346READ_DISABLED_CAP = TRUE 347READ_ENABLED_CAP = TRUE 348READ_STATUS = TRUE 349READ_LOCK_CAP = TRUE 350READ_LOCK_STATUS = TRUE 351FvNameGuid = A881D567-6CB0-4eee-8435-2E72D33E45B5 352 353APRIORI DXE { 354 INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf 355 INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf 356 INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf 357 } 358 359FILE FREEFORM = C3E36D09-8294-4b97-A857-D5288FE33E28 { 360 SECTION RAW = $(OUTPUT_DIRECTORY)/$(TARGET)_$(TOOL_CHAIN_TAG)/$(DXE_ARCHITECTURE)/BiosId.bin 361 } 362 363 # 364 # EDK II Related Platform codes 365 # 366 367 !if $(MINNOW2_FSP_BUILD) == TRUE 368 INF IntelFspWrapperPkg/FspNotifyDxe/FspNotifyDxe.inf 369 !endif 370 371INF MdeModulePkg/Core/Dxe/DxeMain.inf 372INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf 373!if $(ACPI50_ENABLE) == TRUE 374INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.inf 375INF MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.inf 376!endif 377 378 379INF IntelFrameworkModulePkg/Universal/CpuIoDxe/CpuIoDxe.inf 380INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf 381INF MdeModulePkg/Universal/ReportStatusCodeRouter/RuntimeDxe/ReportStatusCodeRouterRuntimeDxe.inf 382INF MdeModulePkg/Universal/StatusCodeHandler/RuntimeDxe/StatusCodeHandlerRuntimeDxe.inf 383INF MdeModulePkg/Universal/ReportStatusCodeRouter/Smm/ReportStatusCodeRouterSmm.inf 384INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf 385INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MpCpu.inf 386INF $(PLATFORM_PACKAGE)/Metronome/Metronome.inf 387INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf 388INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf 389INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf 390INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf 391INF IntelFrameworkModulePkg/Universal/Acpi/AcpiS3SaveDxe/AcpiS3SaveDxe.inf 392 393INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmmRuntimeDxe.inf 394INF MdeModulePkg/Universal/Variable/RuntimeDxe/VariableSmm.inf 395INF $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbSmm.inf 396INF MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf 397INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiSmm.inf 398!if $(SECURE_BOOT_ENABLE) 399INF SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigDxe.inf 400!endif 401 402INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf 403 404INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf 405INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf 406INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf 407INF $(PLATFORM_PACKAGE)/FvbRuntimeDxe/FvbRuntimeDxe.inf 408 409 410INF $(PLATFORM_PACKAGE)/PlatformSetupDxe/PlatformSetupDxe.inf 411 412!if $(DATAHUB_ENABLE) == TRUE 413INF IntelFrameworkModulePkg/Universal/DataHubDxe/DataHubDxe.inf 414!endif 415INF IntelFrameworkModulePkg/Universal/StatusCode/DatahubStatusCodeHandlerDxe/DatahubStatusCodeHandlerDxe.inf 416INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf 417 418INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Dptf.inf 419 420 # 421 # EDK II Related Silicon codes 422 # 423INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchS3SupportDxe.inf 424 425!if $(USE_HPET_TIMER) == TRUE 426INF PcAtChipsetPkg/HpetTimerDxe/HpetTimerDxe.inf 427!else 428INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmartTimer.inf 429!endif 430INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmControl.inf 431 432INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmbusDxe.inf 433 434INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/IntelPchLegacyInterrupt.inf 435INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchReset.inf 436 437!if $(MINNOW2_FSP_BUILD) == FALSE 438INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchInitDxe.inf 439!endif 440INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSmiDispatcher.inf 441!if $(PCIESC_ENABLE) == TRUE 442INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPcieSmm.inf 443!endif 444 445INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchSpiRuntime.inf 446INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchPolicyInitDxe.inf 447INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PchBiosWriteProtect.inf 448INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmmAccess.inf 449INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PciHostBridge.inf 450!if $(MINNOW2_FSP_BUILD) == FALSE 451INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/VlvInitDxe.inf 452!else 453INF IntelFrameworkModulePkg/Universal/LegacyRegionDxe/LegacyRegionDxe.inf 454INF Vlv2TbltDevicePkg/VlvPlatformInitDxe/VlvPlatformInitDxe.inf 455!endif 456!if $(MINNOW2_FSP_BUILD) == FALSE 457 !if $(SEC_ENABLE) == TRUE 458 INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/HeciDrv.inf 459 INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SeCPolicyInitDxe.inf 460 !endif 461!endif 462!if $(TPM_ENABLED) == TRUE 463INF SecurityPkg/Tcg/TcgConfigDxe/TcgConfigDxe.inf 464INF SecurityPkg/Tcg/TcgDxe/TcgDxe.inf 465INF RuleOverride = DRIVER_ACPITABLE SecurityPkg/Tcg/TcgSmm/TcgSmm.inf 466!endif 467!if $(FTPM_ENABLE) == TRUE 468INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/IA32/Tpm2DeviceSeCPei.inf 469INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/Tpm2DeviceSeCDxe.inf 470INF SecurityPkg/Tcg/MemoryOverwriteControl/TcgMor.inf 471INF SecurityPkg/Tcg/TrEEDxe/TrEEDxe.inf 472INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/FtpmSmm.inf 473!endif 474 475# 476# EDK II Related Platform codes 477# 478INF $(PLATFORM_PACKAGE)/PlatformSmm/PlatformSmm.inf 479INF $(PLATFORM_PACKAGE)/PlatformInfoDxe/PlatformInfoDxe.inf 480INF $(PLATFORM_PACKAGE)/PlatformCpuInfoDxe/PlatformCpuInfoDxe.inf 481INF $(PLATFORM_PACKAGE)/PlatformDxe/PlatformDxe.inf 482INF $(PLATFORM_PACKAGE)/PciPlatform/PciPlatform.inf 483INF $(PLATFORM_PACKAGE)/SaveMemoryConfig/SaveMemoryConfig.inf 484INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PlatformCpuPolicy.inf 485INF $(PLATFORM_PACKAGE)/PpmPolicy/PpmPolicy.inf 486INF $(PLATFORM_PACKAGE)/SmramSaveInfoHandlerSmm/SmramSaveInfoHandlerSmm.inf 487!if $(GOP_DRIVER_ENABLE) == TRUE 488 INF $(PLATFORM_PACKAGE)/PlatformGopPolicy/PlatformGopPolicy.inf 489 FILE DRIVER = FF0C8745-3270-4439-B74F-3E45F8C77064 { 490 SECTION DXE_DEPEX_EXP = {gPlatformGOPPolicyGuid} 491 SECTION PE32 = Vlv2MiscBinariesPkg/GOP/7.2.1011/RELEASE_VS2008x86/$(DXE_ARCHITECTURE)/IntelGopDriver.efi 492 SECTION UI = "IntelGopDriver" 493} 494!endif 495 496INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PnpDxe.inf 497 # 498 # SMM 499 # 500INF MdeModulePkg/Core/PiSmmCore/PiSmmIpl.inf 501INF MdeModulePkg/Core/PiSmmCore/PiSmmCore.inf 502INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCpuDxeSmm.inf 503 504INF UefiCpuPkg/CpuIo2Smm/CpuIo2Smm.inf 505INF MdeModulePkg/Universal/LockBox/SmmLockBox/SmmLockBox.inf 506INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PiSmmCommunicationSmm.inf 507INF $(PLATFORM_PACKAGE)/SmmSwDispatch2OnSmmSwDispatchThunk/SmmSwDispatch2OnSmmSwDispatchThunk.inf 508INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/PowerManagement2.inf 509# INF Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/Dts/Smm/DigitalThermalSensor.inf 510INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/DigitalThermalSensor.inf 511 # 512 # ACPI 513 # 514INF MdeModulePkg/Universal/Acpi/BootScriptExecutorDxe/BootScriptExecutorDxe.inf 515INF $(PLATFORM_PACKAGE)/BootScriptSaveDxe/BootScriptSaveDxe.inf 516INF IntelFrameworkModulePkg/Universal/Acpi/AcpiSupportDxe/AcpiSupportDxe.inf 517INF RuleOverride = ACPITABLE2 Vlv2DeviceRefCodePkg/ValleyView2Soc/CPU/PowerManagement/AcpiTables/PowerManagementAcpiTables.inf 518 519INF RuleOverride = ACPITABLE $(PLATFORM_RC_PACKAGE)/AcpiTablesPCAT/AcpiTables.inf 520 521INF $(PLATFORM_PACKAGE)/AcpiPlatform/AcpiPlatform.inf 522 523 # 524 # PCI 525 # 526INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf 527 528INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/ISPDxe.inf 529 530 531# 532# ISA 533# 534INF $(PLATFORM_PACKAGE)/Wpce791/Wpce791.inf 535INF IntelFrameworkModulePkg/Bus/Isa/IsaBusDxe/IsaBusDxe.inf 536INF IntelFrameworkModulePkg/Bus/Isa/IsaIoDxe/IsaIoDxe.inf 537!if $(SOURCE_DEBUG_ENABLE) != TRUE 538INF IntelFrameworkModulePkg/Bus/Isa/IsaSerialDxe/IsaSerialDxe.inf 539!endif 540#INF IntelFrameworkModulePkg/Bus/Isa/Ps2MouseDxe/Ps2MouseDxe.inf 541#INF IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe.inf 542 543# 544# SDIO 545# 546INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcHost.inf 547INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/MmcMediaDevice.inf 548# 549# IDE/SCSI/AHCI 550# 551INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf 552 553INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf 554 555INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf 556!if $(SATA_ENABLE) == TRUE 557INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SataController.inf 558# 559 560# 561INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf 562INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf 563!if $(SCSI_ENABLE) == TRUE 564INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf 565INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf 566!endif 567# 568!endif 569# Console 570# 571INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf 572INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf 573INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf 574INF IntelFrameworkModulePkg/Universal/Console/VgaClassDxe/VgaClassDxe.inf 575INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf 576INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf 577INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf 578INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf 579 # 580 # USB 581 # 582!if $(USB_ENABLE) == TRUE 583INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf 584INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf 585INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf 586INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf 587INF MdeModulePkg/Bus/Usb/UsbMouseDxe/UsbMouseDxe.inf 588INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf 589INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf 590!endif 591 592 # 593 # ECP 594 # 595INF EdkCompatibilityPkg/Compatibility/LegacyRegion2OnLegacyRegionThunk/LegacyRegion2OnLegacyRegionThunk.inf 596INF EdkCompatibilityPkg/Compatibility/SmmBaseOnSmmBase2Thunk/SmmBaseOnSmmBase2Thunk.inf 597INF EdkCompatibilityPkg/Compatibility/SmmBaseHelper/SmmBaseHelper.inf 598INF EdkCompatibilityPkg/Compatibility/SmmAccess2OnSmmAccessThunk/SmmAccess2OnSmmAccessThunk.inf 599INF EdkCompatibilityPkg/Compatibility/SmmControl2OnSmmControlThunk/SmmControl2OnSmmControlThunk.inf 600INF EdkCompatibilityPkg/Compatibility/FvOnFv2Thunk/FvOnFv2Thunk.inf 601 # 602 # SMBIOS 603 # 604INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf 605INF $(PLATFORM_PACKAGE)/SmBiosMiscDxe/SmBiosMiscDxe.inf 606 607INF RuleOverride = BINARY $(PLATFORM_BINARY_PACKAGE)/$(DXE_ARCHITECTURE)$(TARGET)/$(DXE_ARCHITECTURE)/SmbiosMemory.inf 608 609 # 610 # Legacy Modules 611 # 612INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf 613 614# 615# FAT file system 616# 617FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F { 618 SECTION PE32 = FatBinPkg/EnhancedFatDxe/$(EDK_DXE_ARCHITECTURE)/Fat.efi 619 } 620# 621# UEFI Shell 622# 623FILE APPLICATION = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile) { 624# SECTION PE32 = EdkShellBinPkg/FullShell/$(EDK_DXE_ARCHITECTURE)/Shell_Full.efi 625 SECTION PE32 = EdkShellBinPkg/MinimumShell/$(EDK_DXE_ARCHITECTURE)/Shell.efi 626 } 627 628 629 630!if $(GOP_DRIVER_ENABLE) == TRUE 631FILE FREEFORM = 878AC2CC-5343-46F2-B563-51F89DAF56BA { 632 SECTION RAW = Vlv2MiscBinariesPkg/GOP/7.2.1011/VBT/MNW2/Vbt.bin 633 SECTION UI = "IntelGopVbt" 634} 635!endif 636 637# 638# Network Modules 639# 640!if $(NETWORK_ENABLE) == TRUE 641 FILE DRIVER = 22DE1691-D65D-456a-993E-A253DD1F308C { 642 SECTION PE32 = Vlv2MiscBinariesPkg/UNDI/RtkUndiDxe/$(DXE_ARCHITECTURE)/RtkUndiDxe.efi 643 SECTION UI = "UNDI" 644 } 645 INF MdeModulePkg/Universal/Network/SnpDxe/SnpDxe.inf 646 INF MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf 647 INF MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf 648 INF MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf 649 INF MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf 650 INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf 651 INF MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf 652 INF MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf 653 !if $(NETWORK_IP6_ENABLE) == TRUE 654 INF NetworkPkg/Ip6Dxe/Ip6Dxe.inf 655 INF NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf 656 INF NetworkPkg/IpSecDxe/IpSecDxe.inf 657 INF NetworkPkg/Udp6Dxe/Udp6Dxe.inf 658 INF NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf 659 !endif 660 !if $(NETWORK_IP6_ENABLE) == TRUE 661 INF NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf 662 INF NetworkPkg/TcpDxe/TcpDxe.inf 663 !else 664 INF MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf 665 INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf 666 !endif 667 !if $(NETWORK_VLAN_ENABLE) == TRUE 668 INF MdeModulePkg/Universal/Network/VlanConfigDxe/VlanConfigDxe.inf 669 !endif 670 !if $(NETWORK_ISCSI_ENABLE) == TRUE 671 !if $(NETWORK_IP6_ENABLE) == TRUE 672 INF NetworkPkg/IScsiDxe/IScsiDxe.inf 673 !else 674 INF MdeModulePkg/Universal/Network/IScsiDxe/IScsiDxe.inf 675 !endif 676 !endif 677!endif 678 679[FV.FVMAIN_COMPACT] 680BlockSize = $(FLASH_BLOCK_SIZE) 681FvAlignment = 16 682ERASE_POLARITY = 1 683MEMORY_MAPPED = TRUE 684STICKY_WRITE = TRUE 685LOCK_CAP = TRUE 686LOCK_STATUS = TRUE 687WRITE_DISABLED_CAP = TRUE 688WRITE_ENABLED_CAP = TRUE 689WRITE_STATUS = TRUE 690WRITE_LOCK_CAP = TRUE 691WRITE_LOCK_STATUS = TRUE 692READ_DISABLED_CAP = TRUE 693READ_ENABLED_CAP = TRUE 694READ_STATUS = TRUE 695READ_LOCK_CAP = TRUE 696READ_LOCK_STATUS = TRUE 697 698 699 700FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 { 701!if $(LZMA_ENABLE) == TRUE 702# LZMA Compress 703 SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF PROCESSING_REQUIRED = TRUE { 704 SECTION FV_IMAGE = FVMAIN 705 } 706!else 707!if $(DXE_COMPRESS_ENABLE) == TRUE 708# Tiano Compress 709 SECTION GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE { 710 SECTION FV_IMAGE = FVMAIN 711 } 712!else 713# No Compress 714 SECTION COMPRESS PI_NONE { 715 SECTION FV_IMAGE = FVMAIN 716 } 717!endif 718!endif 719 } 720 721[FV.SETUP_DATA] 722BlockSize = $(FLASH_BLOCK_SIZE) 723#NumBlocks = 0x10 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[FV.Update_Data] 743BlockSize = $(FLASH_BLOCK_SIZE) 744FvAlignment = 16 745ERASE_POLARITY = 1 746MEMORY_MAPPED = TRUE 747STICKY_WRITE = TRUE 748LOCK_CAP = TRUE 749LOCK_STATUS = TRUE 750WRITE_DISABLED_CAP = TRUE 751WRITE_ENABLED_CAP = TRUE 752WRITE_STATUS = TRUE 753WRITE_LOCK_CAP = TRUE 754WRITE_LOCK_STATUS = TRUE 755READ_DISABLED_CAP = TRUE 756READ_ENABLED_CAP = TRUE 757READ_STATUS = TRUE 758READ_LOCK_CAP = TRUE 759READ_LOCK_STATUS = TRUE 760 761FILE RAW = 88888888-8888-8888-8888-888888888888 { 762 FD = Vlv 763 } 764 765[FV.BiosUpdateCargo] 766BlockSize = $(FLASH_BLOCK_SIZE) 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 786[FV.BiosUpdate] 787BlockSize = $(FLASH_BLOCK_SIZE) 788FvAlignment = 16 789ERASE_POLARITY = 1 790MEMORY_MAPPED = TRUE 791STICKY_WRITE = TRUE 792LOCK_CAP = TRUE 793LOCK_STATUS = TRUE 794WRITE_DISABLED_CAP = TRUE 795WRITE_ENABLED_CAP = TRUE 796WRITE_STATUS = TRUE 797WRITE_LOCK_CAP = TRUE 798WRITE_LOCK_STATUS = TRUE 799READ_DISABLED_CAP = TRUE 800READ_ENABLED_CAP = TRUE 801READ_STATUS = TRUE 802READ_LOCK_CAP = TRUE 803READ_LOCK_STATUS = TRUE 804 805[Capsule.Capsule_Boot] 806# 807# gEfiCapsuleGuid supported by platform 808# { 0x3B6686BD, 0x0D76, 0x4030, { 0xB7, 0x0E, 0xB5, 0x51, 0x9E, 0x2F, 0xC5, 0xA0 }} 809# 810CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0 811CAPSULE_FLAGS = PersistAcrossReset 812CAPSULE_HEADER_SIZE = 0x20 813 814FV = BiosUpdate 815 816[Capsule.Capsule_Reset] 817# 818# gEfiCapsuleGuid supported by platform 819# { 0x3B6686BD, 0x0D76, 0x4030, { 0xB7, 0x0E, 0xB5, 0x51, 0x9E, 0x2F, 0xC5, 0xA0 }} 820# 821CAPSULE_GUID = 3B6686BD-0D76-4030-B70E-B5519E2FC5A0 822CAPSULE_FLAGS = PersistAcrossReset 823CAPSULE_HEADER_SIZE = 0x20 824 825FV = BiosUpdate 826 827################################################################################ 828# 829# Rules are use with the [FV] section's module INF type to define 830# how an FFS file is created for a given INF file. The following Rule are the default 831# rules for the different module type. User can add the customized rules to define the 832# content of the FFS file. 833# 834################################################################################ 835[Rule.Common.SEC] 836 FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED { 837 PE32 PE32 Align = 8 $(INF_OUTPUT)/$(MODULE_NAME).efi 838 RAW BIN Align = 16 |.com 839 } 840 841[Rule.Common.SEC.BINARY] 842 FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED { 843 PE32 PE32 Align = 8 |.efi 844 RAW BIN Align = 16 |.com 845 } 846 847[Rule.Common.PEI_CORE] 848 FILE PEI_CORE = $(NAMED_GUID) { 849 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 850 UI STRING="$(MODULE_NAME)" Optional 851 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 852 } 853 854[Rule.Common.PEIM] 855 FILE PEIM = $(NAMED_GUID) { 856 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 857 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 858 UI STRING="$(MODULE_NAME)" Optional 859 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 860 } 861 862[Rule.Common.PEIM.BINARY] 863 FILE PEIM = $(NAMED_GUID) { 864 PEI_DEPEX PEI_DEPEX Optional |.depex 865 PE32 PE32 Align = Auto |.efi 866 UI STRING="$(MODULE_NAME)" Optional 867 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 868 } 869 870[Rule.Common.PEIM.BIOSID] 871 FILE PEIM = $(NAMED_GUID) { 872 RAW BIN BiosId.bin 873 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 874 PE32 PE32 Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi 875 UI STRING="$(MODULE_NAME)" Optional 876 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 877 } 878 879[Rule.Common.USER_DEFINED.APINIT] 880 FILE RAW = $(NAMED_GUID) Fixed Align=4K { 881 RAW SEC_BIN |.com 882 } 883#cjia 2011-07-21 884[Rule.Common.USER_DEFINED.LEGACY16] 885 FILE FREEFORM = $(NAMED_GUID) { 886 UI STRING="$(MODULE_NAME)" Optional 887 RAW BIN |.bin 888 } 889#cjia 890 891[Rule.Common.USER_DEFINED.ASM16] 892 FILE FREEFORM = $(NAMED_GUID) { 893 UI STRING="$(MODULE_NAME)" Optional 894 RAW BIN |.com 895 } 896 897[Rule.Common.DXE_CORE] 898 FILE DXE_CORE = $(NAMED_GUID) { 899 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 900 UI STRING="$(MODULE_NAME)" Optional 901 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 902 } 903 904[Rule.Common.UEFI_DRIVER] 905 FILE DRIVER = $(NAMED_GUID) { 906 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 907 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 908 UI STRING="$(MODULE_NAME)" Optional 909 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 910 } 911 912[Rule.Common.UEFI_DRIVER.BINARY] 913 FILE DRIVER = $(NAMED_GUID) { 914 DXE_DEPEX DXE_DEPEX Optional |.depex 915 PE32 PE32 |.efi 916 UI STRING="$(MODULE_NAME)" Optional 917 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 918 } 919 920[Rule.Common.UEFI_DRIVER.NATIVE_BINARY] 921 FILE DRIVER = $(NAMED_GUID) { 922 DXE_DEPEX DXE_DEPEX Optional $(WORKSPACE)/$(PLATFORM_PACKAGE)/IntelGopDepex/IntelGopDriver.depex 923 PE32 PE32 |.efi 924 UI STRING="$(MODULE_NAME)" Optional 925 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 926 } 927 928[Rule.Common.DXE_DRIVER] 929 FILE DRIVER = $(NAMED_GUID) { 930 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 931 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 932 UI STRING="$(MODULE_NAME)" Optional 933 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 934 } 935 936[Rule.Common.DXE_DRIVER.BINARY] 937 FILE DRIVER = $(NAMED_GUID) { 938 DXE_DEPEX DXE_DEPEX Optional |.depex 939 PE32 PE32 |.efi 940 UI STRING="$(MODULE_NAME)" Optional 941 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 942 } 943 944[Rule.Common.DXE_DRIVER.DRIVER_ACPITABLE] 945 FILE DRIVER = $(NAMED_GUID) { 946 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 947 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 948 UI STRING="$(MODULE_NAME)" Optional 949 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 950 RAW ACPI Optional |.acpi 951 RAW ASL Optional |.aml 952 } 953 954[Rule.Common.DXE_RUNTIME_DRIVER] 955 FILE DRIVER = $(NAMED_GUID) { 956 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 957 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 958 UI STRING="$(MODULE_NAME)" Optional 959 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 960 } 961 962[Rule.Common.DXE_RUNTIME_DRIVER.BINARY] 963 FILE DRIVER = $(NAMED_GUID) { 964 DXE_DEPEX DXE_DEPEX Optional |.depex 965 PE32 PE32 |.efi 966 UI STRING="$(MODULE_NAME)" Optional 967 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 968 } 969 970[Rule.Common.DXE_SMM_DRIVER] 971 FILE SMM = $(NAMED_GUID) { 972 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex 973 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 974 UI STRING="$(MODULE_NAME)" Optional 975 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 976 } 977 978[Rule.Common.DXE_SMM_DRIVER.BINARY] 979 FILE SMM = $(NAMED_GUID) { 980 SMM_DEPEX SMM_DEPEX |.depex 981 PE32 PE32 |.efi 982 RAW BIN Optional |.aml 983 UI STRING="$(MODULE_NAME)" Optional 984 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 985 } 986 987[Rule.Common.DXE_SMM_DRIVER.DRIVER_ACPITABLE] 988 FILE SMM = $(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.SMM_CORE] 998 FILE SMM_CORE = $(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.SMM_CORE.BINARY] 1006 FILE SMM_CORE = $(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.UEFI_APPLICATION] 1014 FILE APPLICATION = $(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.UEFI_APPLICATION.UI] 1022 FILE APPLICATION = $(NAMED_GUID) { 1023 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi 1024 UI STRING="Enter Setup" 1025 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER) 1026 } 1027 1028[Rule.Common.USER_DEFINED] 1029 FILE FREEFORM = $(NAMED_GUID) { 1030 UI STRING="$(MODULE_NAME)" Optional 1031 RAW BIN |.bin 1032 } 1033 1034[Rule.Common.USER_DEFINED.ACPITABLE] 1035 FILE FREEFORM = $(NAMED_GUID) { 1036 RAW ACPI Optional |.acpi 1037 RAW ASL Optional |.aml 1038 } 1039 1040[Rule.Common.USER_DEFINED.ACPITABLE2] 1041 FILE FREEFORM = $(NAMED_GUID) { 1042 RAW ASL Optional |.aml 1043 } 1044 1045[Rule.Common.ACPITABLE] 1046 FILE FREEFORM = $(NAMED_GUID) { 1047 RAW ACPI Optional |.acpi 1048 RAW ASL Optional |.aml 1049 } 1050 1051