BaseTscTimerLib.inf revision 034307a7ec57dd87b83b14e2c706b3e7c2d302c5
1## @file
2#  Base Timer Library which uses the Time Stamp Counter in the processor.
3#
4#  Note: There will be 1ms penalty to get TSC frequency every time
5#    by waiting for 3579 clocks of the ACPI timer, or 1ms.
6#
7#  A version of the Timer Library using the processor's TSC.
8#  The time stamp counter in newer processors may support an enhancement, referred to as invariant TSC.
9#  The invariant TSC runs at a constant rate in all ACPI P-, C-. and T-states.
10#  This is the architectural behavior moving forward.
11#  TSC reads are much more efficient and do not incur the overhead associated with a ring transition or
12#  access to a platform resource.
13#
14#  Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
15#  This program and the accompanying materials
16#  are licensed and made available under the terms and conditions of the BSD License
17#  which accompanies this distribution. The full text of the license may be found at
18#  http://opensource.org/licenses/bsd-license.php
19#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
20#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
21#
22##
23
24[Defines]
25  INF_VERSION                    = 0x00010005
26  BASE_NAME                      = BaseTscTimerLib
27  FILE_GUID                      = D29338B9-50FE-4e4f-B7D4-A150A2C1F4FB
28  MODULE_TYPE                    = BASE
29  VERSION_STRING                 = 1.0
30  LIBRARY_CLASS                  = TimerLib
31
32
33#
34#  VALID_ARCHITECTURES           = IA32 X64
35#
36
37[Sources.common]
38  TscTimerLibShare.c
39  BaseTscTimerLib.c
40
41
42[Packages]
43  MdePkg/MdePkg.dec
44  PerformancePkg/PerformancePkg.dec
45
46
47[LibraryClasses]
48  PcdLib
49  PciLib
50  IoLib
51  BaseLib
52
53[Pcd.common]
54  gPerformancePkgTokenSpaceGuid.PcdPerfPkgAcpiIoPortBaseAddress
55