1## @file
2# Instance of Timer Library only using CPU resources.
3#
4# Timer Library that only uses CPU resources to provide calibrated delays
5#  on IA-32, x64, and IPF.
6# Note: A driver of type DXE_RUNTIME_DRIVER and DXE_SMM_DRIVER can use this TimerLib
7#  in their initialization without any issues. They only have to be careful in
8#  the implementation of runtime services and SMI handlers.
9#  Because CPU Local APIC and ITC could be programmed by OS, it cannot be
10#  used by SMM drivers and runtime drivers, ACPI timer is recommended for SMM
11#  drivers and runtime drivers.
12#
13# This library differs with the SecPeiDxeTimerLibCpu library in the MdePkg in
14# that it uses the local APIC library so that it supports x2APIC mode.
15#
16# Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>
17#
18#  This program and the accompanying materials
19#  are licensed and made available under the terms and conditions of the BSD License
20#  which accompanies this distribution. The full text of the license may be found at
21#  http://opensource.org/licenses/bsd-license.php.
22#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
23#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
24#
25#
26##
27
28[Defines]
29  INF_VERSION                    = 0x00010005
30  BASE_NAME                      = SecPeiDxeTimerLibUefiCpu
31  MODULE_UNI_FILE                = SecPeiDxeTimerLibUefiCpu.uni
32  FILE_GUID                      = 4FFF2014-2086-4ee6-9B58-886D1967861C
33  MODULE_TYPE                    = BASE
34  VERSION_STRING                 = 1.0
35  LIBRARY_CLASS                  = TimerLib
36
37
38#
39#  VALID_ARCHITECTURES           = IA32 X64 IPF
40#
41
42[Sources.Ia32, Sources.X64]
43  X86TimerLib.c
44
45[Sources.IPF]
46  IpfTimerLib.c
47
48
49[Packages]
50  MdePkg/MdePkg.dec
51  UefiCpuPkg/UefiCpuPkg.dec
52
53[LibraryClasses]
54  BaseLib
55
56[LibraryClasses.IA32, LibraryClasses.X64]
57  PcdLib
58  DebugLib
59  LocalApicLib
60
61[LibraryClasses.IPF]
62  PalLib
63
64
65[Pcd.IA32, Pcd.X64]
66  gEfiMdePkgTokenSpaceGuid.PcdFSBClock  ## SOMETIMES_CONSUMES
67
68