##  @file
# Provides 'initrd' dynamic UEFI shell command to load a Linux initrd
# via its GUIDed vendor media path
#
# Copyright (c) 2020, Arm, Ltd. All rights reserved.<BR>
#
#  SPDX-License-Identifier: BSD-2-Clause-Patent
#
#
##

[Defines]
  INF_VERSION                    = 1.27
  BASE_NAME                      = LinuxInitrdDynamicShellCommand
  FILE_GUID                      = 2f30da26-f51b-4b6f-85c4-31873c281bca
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = LinuxInitrdDynamicShellCommandEntryPoint
  UNLOAD_IMAGE                   = LinuxInitrdDynamicShellCommandUnload
  UEFI_HII_RESOURCE_SECTION      = TRUE

#
#  VALID_ARCHITECTURES           = IA32 X64 ARM AARCH64 EBC
#

[Sources.common]
  LinuxInitrdDynamicShellCommand.c
  LinuxInitrdDynamicShellCommand.uni

[Packages]
  MdePkg/MdePkg.dec
  ShellPkg/ShellPkg.dec
  MdeModulePkg/MdeModulePkg.dec
  OvmfPkg/OvmfPkg.dec

[LibraryClasses]
  DebugLib
  DevicePathLib
  HiiLib
  MemoryAllocationLib
  ShellLib
  UefiBootServicesTableLib
  UefiDriverEntryPoint
  UefiHiiServicesLib

[Protocols]
  gEfiDevicePathProtocolGuid                      ## SOMETIMES_PRODUCES
  gEfiHiiPackageListProtocolGuid                  ## CONSUMES
  gEfiLoadFile2ProtocolGuid                       ## SOMETIMES_PRODUCES
  gEfiShellDynamicCommandProtocolGuid             ## PRODUCES

[DEPEX]
  TRUE
