#/** @file
#  Build file for the MMC DXE driver
#
#  Copyright (c) 2011-2014, ARM Limited. All rights reserved.
#
#  This program and the accompanying materials
#  are licensed and made available under the terms and conditions of the BSD License
#  which accompanies this distribution.  The full text of the license may be found at
#  http://opensource.org/licenses/bsd-license.php
#
#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
#**/

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = MmcDxe
  FILE_GUID                      = b6f44cc0-9e45-11df-be21-0002a5d5c51b
  MODULE_TYPE                    = DXE_DRIVER
  VERSION_STRING                 = 1.0

  ENTRY_POINT                    = MmcDxeInitialize

[Sources.common]
  ComponentName.c
  Mmc.c
  MmcBlockIo.c
  MmcIdentification.c
  MmcDebug.c
  Diagnostics.c

[Packages]
  EmbeddedPkg/EmbeddedPkg.dec
  MdePkg/MdePkg.dec

[LibraryClasses]
  BaseLib
  UefiLib
  UefiDriverEntryPoint
  BaseMemoryLib
  TimerLib

[Protocols]
  gEfiDiskIoProtocolGuid
  gEfiBlockIoProtocolGuid
  gEfiDevicePathProtocolGuid
  gEfiMmcHostProtocolGuid
  gEfiDriverDiagnostics2ProtocolGuid

[Depex]
  TRUE
