## @file
#  This driver installs SMBIOS information for OVMF
#
#  Copyright (c) 2011, Bei Guan <gbtju85@gmail.com>
#  Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = SmbiosPlatformDxe
  FILE_GUID                      = 4110465d-5ff3-4f4b-b580-24ed0d06747a
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0

  ENTRY_POINT                    = SmbiosTablePublishEntry

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC ARM AARCH64
#

[Sources]
  CloudHv.c
  EntryPoint.c
  Qemu.c
  SmbiosPlatformDxe.c
  SmbiosPlatformDxe.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  OvmfPkg/OvmfPkg.dec

[LibraryClasses]
  BaseLib
  BaseMemoryLib
  DebugLib
  MemoryAllocationLib
  PcdLib
  QemuFwCfgLib
  UefiBootServicesTableLib
  UefiDriverEntryPoint

[Pcd]
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId
  gUefiOvmfPkgTokenSpaceGuid.PcdQemuSmbiosValidated
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVendor
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString
  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareReleaseDateString

[Protocols]
  gEfiSmbiosProtocolGuid                      # PROTOCOL ALWAYS_CONSUMED

[Depex]
  gEfiSmbiosProtocolGuid

