## @file
#
#  Copyright (c) 2017, Linaro, Ltd. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION               = 0x00010019
  BASE_NAME                 = DtPlatformDxe
  FILE_GUID                 = FC097B3C-2EBD-4A75-A3DA-121DCAB365CC
  MODULE_TYPE               = DXE_DRIVER
  VERSION_STRING            = 1.0
  ENTRY_POINT               = DtPlatformDxeEntryPoint

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES      = IA32 X64 ARM AARCH64
#

[Sources]
  DtPlatformDxe.c
  DtPlatformHii.vfr
  DtPlatformHii.uni

[Packages]
  EmbeddedPkg/EmbeddedPkg.dec
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  BaseLib
  DebugLib
  DtPlatformDtbLoaderLib
  HiiLib
  MemoryAllocationLib
  UefiBootServicesTableLib
  UefiDriverEntryPoint
  UefiRuntimeServicesTableLib

[Guids]
  gDtPlatformFormSetGuid
  gDtPlatformDefaultDtbFileGuid
  gEdkiiPlatformHasAcpiGuid
  gFdtTableGuid

[Pcd]
  gEmbeddedTokenSpaceGuid.PcdDefaultDtPref

[Depex]
  gEfiVariableArchProtocolGuid        AND
  gEfiVariableWriteArchProtocolGuid
