## @file
#  Component description file for QEMU Flash Firmware Volume Block SMM driver
#  module.
#
#  This SMM driver implements and produces the SMM Firmware Volue Block Protocol
#  for a QEMU flash device.
#
#  Copyright (C) 2015, Red Hat, Inc.
#  Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = FvbServicesSmm
  FILE_GUID                      = 2E7DB7A7-608E-4041-B45F-00359E0766C6
  MODULE_TYPE                    = DXE_SMM_DRIVER
  VERSION_STRING                 = 1.0
  PI_SPECIFICATION_VERSION       = 0x0001000A
  ENTRY_POINT                    = FvbInitialize

#
# The following information is for reference only and not required by the build
# tools.
#
#  VALID_ARCHITECTURES           = X64
#

[Sources]
  FvbInfo.c
  FwBlockService.c
  FwBlockService.h
  FwBlockServiceSmm.c
  QemuFlash.c
  QemuFlash.h
  QemuFlashSmm.c

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  OvmfPkg/OvmfPkg.dec

[LibraryClasses]
  BaseLib
  BaseMemoryLib
  DebugLib
  DevicePathLib
  DxeServicesTableLib
  MemoryAllocationLib
  MemEncryptSevLib
  PcdLib
  SmmServicesTableLib
  UefiBootServicesTableLib
  UefiDriverEntryPoint

[Guids]

[Protocols]
  gEfiSmmFirmwareVolumeBlockProtocolGuid        # PROTOCOL ALWAYS_PRODUCED
  gEfiDevicePathProtocolGuid                    # PROTOCOL ALWAYS_PRODUCED

[FixedPcd]
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize
  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageVariableBase
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashNvStorageEventLogSize
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFdBaseAddress
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFirmwareFdSize
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFirmwareBlockSize

[Pcd]
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfFlashVariablesEnable

[FeaturePcd]
  gUefiOvmfPkgTokenSpaceGuid.PcdSmmSmramRequire

[Depex]
  TRUE
