2 # Base Timer Library which uses the Time Stamp Counter in the processor.
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.
7 # Note: This library is a sample implementation that depends on chipset ACPI timer.
8 # It may not work on new generation chipset. PcAtChipsetPkg AcpiTimerLib is
9 # the generic timer library that can replace this one.
11 # A version of the Timer Library using the processor's TSC.
12 # The time stamp counter in newer processors may support an enhancement, referred to as invariant TSC.
13 # The invariant TSC runs at a constant rate in all ACPI P-, C-. and T-states.
14 # This is the architectural behavior moving forward.
15 # TSC reads are much more efficient and do not incur the overhead associated with a ring transition or
16 # access to a platform resource.
18 # Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
19 # This program and the accompanying materials
20 # are licensed and made available under the terms and conditions of the BSD License
21 # which accompanies this distribution. The full text of the license may be found at
22 # http://opensource.org/licenses/bsd-license.php
23 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
24 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
29 INF_VERSION = 0x00010005
30 BASE_NAME = BaseTscTimerLib
31 FILE_GUID = D29338B9-50FE-4e4f-B7D4-A150A2C1F4FB
34 LIBRARY_CLASS = TimerLib
38 # VALID_ARCHITECTURES = IA32 X64
49 PerformancePkg/PerformancePkg.dec
59 gPerformancePkgTokenSpaceGuid.PcdPerfPkgAcpiIoPortBaseAddress ## SOMETIMES_CONSUMES