## @file
#  Platform BDS customizations library.
#
#  Copyright (C) 2020 James Bottomley, IBM Corporation.
#  Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR>
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = PlatformBootManagerLibGrub
  FILE_GUID                      = 3a8f8431-f0c9-4c95-8a1d-04445c582d4e
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = PlatformBootManagerLib|DXE_DRIVER

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = X64
#

[Sources]
  BdsPlatform.c
  QemuKernel.c
  PlatformData.c
  BdsPlatform.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec
  SourceLevelDebugPkg/SourceLevelDebugPkg.dec
  OvmfPkg/OvmfPkg.dec
  SecurityPkg/SecurityPkg.dec
  ShellPkg/ShellPkg.dec

[LibraryClasses]
  BaseLib
  MemoryAllocationLib
  UefiBootServicesTableLib
  UefiRuntimeServicesTableLib
  BaseMemoryLib
  DebugLib
  PcdLib
  UefiBootManagerLib
  BootLogoLib
  DevicePathLib
  PciLib
  QemuLoadImageLib
  UefiLib
  PlatformBmPrintScLib
  Tcg2PhysicalPresenceLib

[Pcd]
  gUefiOvmfPkgTokenSpaceGuid.PcdOvmfHostBridgePciDevId
  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate         ## CONSUMES
  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits         ## CONSUMES
  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity           ## CONSUMES
  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits         ## CONSUMES

[Protocols]
  gEfiPciRootBridgeIoProtocolGuid
  gEfiDxeSmmReadyToLockProtocolGuid             # PROTOCOL SOMETIMES_PRODUCED
  gEfiLoadedImageProtocolGuid                   # PROTOCOL SOMETIMES_PRODUCED
  gEfiFirmwareVolume2ProtocolGuid               # PROTOCOL SOMETIMES_CONSUMED

[Guids]
  gEfiEndOfDxeEventGroupGuid
  gEfiGlobalVariableGuid
  gRootBridgesConnectedEventGroupGuid
  gUefiShellFileGuid
  gGrubFileGuid
