1 ## @file 2 # Pei Timer Library which uses the Time Stamp Counter in the processor. 3 # 4 # Note: This library is a sample implementation that depends on chipset ACPI timer. 5 # It may not work on new generation chipset. PcAtChipsetPkg AcpiTimerLib is 6 # the generic timer library that can replace this one. 7 # 8 # A version of the Timer Library using the processor's TSC. 9 # The time stamp counter in newer processors may support an enhancement, referred to as invariant TSC. 10 # The invariant TSC runs at a constant rate in all ACPI P-, C-. and T-states. 11 # This is the architectural behavior moving forward. 12 # TSC reads are much more efficient and do not incur the overhead associated with a ring transition or 13 # access to a platform resource. 14 # 15 # Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR> 16 # This program and the accompanying materials 17 # are licensed and made available under the terms and conditions of the BSD License 18 # which accompanies this distribution. The full text of the license may be found at 19 # http://opensource.org/licenses/bsd-license.php 20 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 21 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 22 # 23 ## 24 25 [Defines] 26 INF_VERSION = 0x00010005 27 BASE_NAME = PeiTscTimerLib 28 FILE_GUID = 342C36C0-15DF-43b4-9EC9-FBF748BFB3D1 29 MODULE_TYPE = PEIM 30 VERSION_STRING = 1.0 31 LIBRARY_CLASS = TimerLib|PEIM PEI_CORE 32 33 34 # 35 # VALID_ARCHITECTURES = IA32 X64 36 # 37 38 [Sources.common] 39 TscTimerLibShare.c 40 PeiTscTimerLib.c 41 TscTimerLibInternal.h 42 43 44 [Packages] 45 MdePkg/MdePkg.dec 46 PerformancePkg/PerformancePkg.dec 47 48 49 [LibraryClasses] 50 PcdLib 51 PciLib 52 IoLib 53 BaseLib 54 HobLib 55 56 [Guids] 57 gEfiTscFrequencyGuid ## PRODUCES ## HOB 58 59 [Pcd.common] 60 gPerformancePkgTokenSpaceGuid.PcdPerfPkgAcpiIoPortBaseAddress ## SOMETIMES_CONSUMES 61