## @file
# IDE Controller Init driver that provide IDE_CONTROLLER_INIT protocol and will be used by
# IDE Bus driver to support platform dependent timing information.
#
# Copyright (c) 2008 - 2018, Intel Corporation. All rights reserved.<BR>
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = IdeController
  MODULE_UNI_FILE                = IdeController.uni
  FILE_GUID                      = 99549F44-49BB-4820-B9D2-901329412D67
  MODULE_TYPE                    = UEFI_DRIVER
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = InitializeIdeControllerDriver

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 EBC
#

[Sources]
  ComponentName.c
  IdeController.c
  IdeController.h

[Packages]
  MdePkg/MdePkg.dec

[LibraryClasses]
  UefiDriverEntryPoint
  DebugLib
  UefiLib
  BaseLib
  BaseMemoryLib
  MemoryAllocationLib
  UefiBootServicesTableLib

[Protocols]
  gEfiPciIoProtocolGuid             ## TO_START
  gEfiIdeControllerInitProtocolGuid ## BY_START
[UserExtensions.TianoCore."ExtraFiles"]
  IdeControllerExtra.uni
