From 4faa50287ee70f2140ab81efbacfb0bb0ac891b8 Mon Sep 17 00:00:00 2001 From: vanjeff Date: Fri, 2 Feb 2007 05:36:42 +0000 Subject: 1. removed BaseTimerLibLocalApic from MdePkg and Nt32TimerLib from EdkNt32Pkg. 2. added BaseTimerlibNullTemplate in MdePkg and SecPeiDxeTimerLibCpu in MdePkg. 3. modified the related spd and fpd files git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@2347 6f19259b-4bc3-4df7-8a09-765794883524 --- .../BaseTimerLibNullTemplate.msa | 43 ++++++++ .../BaseTimerLibNullTemplate/TimerLibNull.c | 111 +++++++++++++++++++++ 2 files changed, 154 insertions(+) create mode 100644 MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.msa create mode 100644 MdePkg/Library/BaseTimerLibNullTemplate/TimerLibNull.c (limited to 'MdePkg/Library/BaseTimerLibNullTemplate') diff --git a/MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.msa b/MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.msa new file mode 100644 index 0000000..65ea51d --- /dev/null +++ b/MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.msa @@ -0,0 +1,43 @@ + + + + BaseTimerLibNullTemplate + BASE + f4731d79-537e-4505-bd52-c03f9b1f6b89 + 1.0 + Timer library NULL template implementaton + This NULL Timer library provides one template API of TimerLib library, + this library do not impletement functionality completely. + Copyright (c) 2007, Intel Corporation. + All rights reserved. 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. + FRAMEWORK_BUILD_PACKAGING_SPECIFICATION 0x00000052 + + + IA32 X64 IPF EBC + false + BaseTimerLibNullTemplate + + + + TimerLib + + + DebugLib + + + + TimerLibNull.c + + + + + + EFI_SPECIFICATION_VERSION 0x00020000 + EDK_RELEASE_VERSION 0x00020000 + + \ No newline at end of file diff --git a/MdePkg/Library/BaseTimerLibNullTemplate/TimerLibNull.c b/MdePkg/Library/BaseTimerLibNullTemplate/TimerLibNull.c new file mode 100644 index 0000000..33a9736 --- /dev/null +++ b/MdePkg/Library/BaseTimerLibNullTemplate/TimerLibNull.c @@ -0,0 +1,111 @@ +/** @file + Timer Library functions for runtime drivers. + + Copyright (c) 2007, Intel Corporation
+ All rights reserved. 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. + + Module Name: RuntimeTimerLib.c + +**/ + +/** + Stalls the CPU for at least the given number of microseconds. + + Stalls the CPU for the number of microseconds specified by MicroSeconds. + + @param MicroSeconds The minimum number of microseconds to delay. + + @return MicroSeconds + +**/ +UINTN +EFIAPI +MicroSecondDelay ( + IN UINTN MicroSeconds + ) +{ + ASSERT (FALSE); + return MicroSeconds; +} + +/** + Stalls the CPU for at least the given number of nanoseconds. + + Stalls the CPU for the number of nanoseconds specified by NanoSeconds. + + @param NanoSeconds The minimum number of nanoseconds to delay. + + @return NanoSeconds + +**/ +UINTN +EFIAPI +NanoSecondDelay ( + IN UINTN NanoSeconds + ) +{ + ASSERT (FALSE); + return 0; +} + +/** + Retrieves the current value of a 64-bit free running performance counter. + + Retrieves the current value of a 64-bit free running performance counter. The + counter can either count up by 1 or count down by 1. If the physical + performance counter counts by a larger increment, then the counter values + must be translated. The properties of the counter can be retrieved from + GetPerformanceCounterProperties(). + + @return The current value of the free running performance counter. + +**/ +UINT64 +EFIAPI +GetPerformanceCounter ( + VOID + ) +{ + ASSERT (FALSE); + return 0; +} + +/** + Retrieves the 64-bit frequency in Hz and the range of performance counter + values. + + If StartValue is not NULL, then the value that the performance counter starts + with immediately after is it rolls over is returned in StartValue. If + EndValue is not NULL, then the value that the performance counter end with + immediately before it rolls over is returned in EndValue. The 64-bit + frequency of the performance counter in Hz is always returned. If StartValue + is less than EndValue, then the performance counter counts up. If StartValue + is greater than EndValue, then the performance counter counts down. For + example, a 64-bit free running counter that counts up would have a StartValue + of 0 and an EndValue of 0xFFFFFFFFFFFFFFFF. A 24-bit free running counter + that counts down would have a StartValue of 0xFFFFFF and an EndValue of 0. + + @param StartValue The value the performance counter starts with when it + rolls over. + @param EndValue The value that the performance counter ends with before + it rolls over. + + @return The frequency in Hz. + +**/ +UINT64 +EFIAPI +GetPerformanceCounterProperties ( + OUT UINT64 *StartValue, OPTIONAL + OUT UINT64 *EndValue OPTIONAL + ) +{ + ASSERT (FALSE); + return 0; +} -- cgit v1.1