## @file
# Instance of Timer Library only using CPU resources.
#
# Timer Library that only uses CPU resources to provide calibrated delays
#  on IA-32, x64, and IPF.
# Note: A driver of type DXE_RUNTIME_DRIVER and DXE_SMM_DRIVER can use this TimerLib 
#  in their initialization without any issues. They only have to be careful in 
#  the implementation of runtime services and SMI handlers.  
#  Because CPU Local APIC and ITC could be programmed by OS, it cannot be
#  used by SMM drivers and runtime drivers, ACPI timer is recommended for SMM
#  drivers and runtime drivers.
#
# Note that for IA-32 and x64, this library only supports xAPIC mode. If x2APIC
# support is desired, the SecPeiDxeTimerLibUefiCpu library can be used.
#
# Copyright (c) 2007 - 2014, Intel Corporation. All rights reserved.<BR>
#
#  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                      = SecPeiDxeTimerLibCpu
  MODULE_UNI_FILE                = SecPeiDxeTimerLibCpu.uni
  FILE_GUID                      = b5a05743-9b71-489b-a0ed-a0eb3950d23b
  MODULE_TYPE                    = BASE
  VERSION_STRING                 = 1.0
  LIBRARY_CLASS                  = TimerLib


#
#  VALID_ARCHITECTURES           = IA32 X64 IPF
#

[Sources.Ia32, Sources.X64]
  X86TimerLib.c

[Sources.IPF]
  IpfTimerLib.c


[Packages]
  MdePkg/MdePkg.dec


[LibraryClasses]
  BaseLib

[LibraryClasses.IA32, LibraryClasses.X64]
  PcdLib
  IoLib
  DebugLib

[LibraryClasses.IPF]
  PalLib


[Pcd.IA32, Pcd.X64]
  gEfiMdePkgTokenSpaceGuid.PcdFSBClock  ## CONSUMES