| 1 | ## @file\r |
| 2 | # Component description file for QEMU Flash Fimware Volume Block SMM driver\r |
| 3 | # module.\r |
| 4 | #\r |
| 5 | # This SMM driver implements and produces the SMM Fimware Volue Block Protocol\r |
| 6 | # for a QEMU flash device.\r |
| 7 | #\r |
| 8 | # Copyright (C) 2015, Red Hat, Inc.\r |
| 9 | # Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>\r |
| 10 | #\r |
| 11 | # This program and the accompanying materials are licensed and made available\r |
| 12 | # under the terms and conditions of the BSD License which accompanies this\r |
| 13 | # distribution. The full text of the license may be found at\r |
| 14 | # http://opensource.org/licenses/bsd-license.php\r |
| 15 | #\r |
| 16 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
| 17 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR\r |
| 18 | # IMPLIED.\r |
| 19 | #\r |
| 20 | ##\r |
| 21 | \r |
| 22 | [Defines]\r |
| 23 | INF_VERSION = 0x00010005\r |
| 24 | BASE_NAME = FvbServicesSmm\r |
| 25 | FILE_GUID = 2E7DB7A7-608E-4041-B45F-00359E0766C6\r |
| 26 | MODULE_TYPE = DXE_SMM_DRIVER\r |
| 27 | VERSION_STRING = 1.0\r |
| 28 | PI_SPECIFICATION_VERSION = 0x0001000A\r |
| 29 | ENTRY_POINT = FvbInitialize\r |
| 30 | \r |
| 31 | #\r |
| 32 | # The following information is for reference only and not required by the build\r |
| 33 | # tools.\r |
| 34 | #\r |
| 35 | # VALID_ARCHITECTURES = IA32 X64\r |
| 36 | #\r |
| 37 | \r |
| 38 | [Sources]\r |
| 39 | FvbInfo.c\r |
| 40 | FwBlockService.c\r |
| 41 | FwBlockService.h\r |
| 42 | FwBlockServiceSmm.c\r |
| 43 | QemuFlash.c\r |
| 44 | QemuFlash.h\r |
| 45 | QemuFlashSmm.c\r |
| 46 | \r |
| 47 | [Packages]\r |
| 48 | MdePkg/MdePkg.dec\r |
| 49 | MdeModulePkg/MdeModulePkg.dec\r |
| 50 | OvmfPkg/OvmfPkg.dec\r |
| 51 | \r |
| 52 | [LibraryClasses]\r |
| 53 | BaseLib\r |
| 54 | BaseMemoryLib\r |
| 55 | DebugLib\r |
| 56 | DevicePathLib\r |
| 57 | DxeServicesTableLib\r |
| 58 | MemoryAllocationLib\r |
| 59 | MemEncryptSevLib\r |
| 60 | PcdLib\r |
| 61 | SmmServicesTableLib\r |
| 62 | UefiBootServicesTableLib\r |
| 63 | UefiDriverEntryPoint\r |
| 64 | \r |
| 65 | [Guids]\r |
| 66 | \r |
| 67 | [Protocols]\r |
| 68 | gEfiSmmFirmwareVolumeBlockProtocolGuid # PROTOCOL ALWAYS_PRODUCED\r |
| 69 | gEfiDevicePathProtocolGuid # PROTOCOL ALWAYS_PRODUCED\r |
| 70 | \r |
| 71 | [FixedPcd]\r |
| 72 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize\r |
| 73 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize\r |
| 74 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize\r |
| 75 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageVariableBase\r |
| 76 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageFtwWorkingBase\r |
| 77 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageFtwSpareBase\r |
| 78 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageEventLogSize\r |
| 79 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFdBaseAddress\r |
| 80 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFirmwareFdSize\r |
| 81 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFirmwareBlockSize\r |
| 82 | \r |
| 83 | [Pcd]\r |
| 84 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase\r |
| 85 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase\r |
| 86 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase\r |
| 87 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageEventLogBase\r |
| 88 | gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64\r |
| 89 | gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashVariablesEnable\r |
| 90 | \r |
| 91 | [FeaturePcd]\r |
| 92 | gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire\r |
| 93 | \r |
| 94 | [Depex]\r |
| 95 | TRUE\r |