[edk2-devel] [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.

Zhiguang Liu posted 1 patch 1 week, 3 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/edk2 tags/patchew/20220114061518.503-1-zhiguang.liu@intel.com
UefiPayloadPkg/UefiPayloadPkg.dsc | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

[edk2-devel] [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.

Posted by Zhiguang Liu 1 week, 3 days ago
For recent X86 CPU, 0x15 CPUID instruction will return Time Stamp
Counter. This is recommended way to get the time, and also how
BaseCpuTimerLib works However, some CPU doesn't support this feature,
so disable it by default.

Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Benjamin You <benjamin.you@intel.com>
Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
---
 UefiPayloadPkg/UefiPayloadPkg.dsc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index 3d08edfe31..65c1bd610e 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -111,6 +111,11 @@
   DEFINE SERIAL_DRIVER_ENABLE = TRUE
   DEFINE PERFORMANCE_MEASUREMENT_ENABLE  = FALSE
 
+  # For recent X86 CPU, 0x15 CPUID instruction will return Time Stamp Counter.
+  # This is recommended way to get the time, and also how BaseCpuTimerLib works.
+  # However, some CPU doesn't support this feature, so disable it by default.
+  DEFINE CPU_TIMER_LIB_ENABLE  = FALSE
+
 [BuildOptions]
   *_*_*_CC_FLAGS                 = -D DISABLE_NEW_DEPRECATED_INTERFACES
   GCC:*_UNIXGCC_*_CC_FLAGS       = -DMDEPKG_NDEBUG
@@ -217,7 +222,7 @@
   #
   # Platform
   #
-!if $(UNIVERSAL_PAYLOAD) == TRUE
+!if $(CPU_TIMER_LIB_ENABLE) == TRUE
   TimerLib|UefiCpuPkg/Library/CpuTimerLib/BaseCpuTimerLib.inf
 !else
   TimerLib|UefiPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.inf
-- 
2.32.0.windows.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85709): https://edk2.groups.io/g/devel/message/85709
Mute This Topic: https://groups.io/mt/88415742/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.

Posted by Guo Dong 1 week ago
Reviewed-by: Guo Dong <guo.dong@intel.com>

-----Original Message-----
From: Liu, Zhiguang <zhiguang.liu@intel.com> 
Sent: Thursday, January 13, 2022 11:15 PM
To: devel@edk2.groups.io
Cc: Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Ma, Maurice <maurice.ma@intel.com>; You, Benjamin <benjamin.you@intel.com>
Subject: [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.

For recent X86 CPU, 0x15 CPUID instruction will return Time Stamp Counter. This is recommended way to get the time, and also how BaseCpuTimerLib works However, some CPU doesn't support this feature, so disable it by default.

Cc: Guo Dong <guo.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Maurice Ma <maurice.ma@intel.com>
Cc: Benjamin You <benjamin.you@intel.com>
Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
---
 UefiPayloadPkg/UefiPayloadPkg.dsc | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc b/UefiPayloadPkg/UefiPayloadPkg.dsc
index 3d08edfe31..65c1bd610e 100644
--- a/UefiPayloadPkg/UefiPayloadPkg.dsc
+++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
@@ -111,6 +111,11 @@
   DEFINE SERIAL_DRIVER_ENABLE = TRUE   DEFINE PERFORMANCE_MEASUREMENT_ENABLE  = FALSE +  # For recent X86 CPU, 0x15 CPUID instruction will return Time Stamp Counter.+  # This is recommended way to get the time, and also how BaseCpuTimerLib works.+  # However, some CPU doesn't support this feature, so disable it by default.+  DEFINE CPU_TIMER_LIB_ENABLE  = FALSE+ [BuildOptions]   *_*_*_CC_FLAGS                 = -D DISABLE_NEW_DEPRECATED_INTERFACES   GCC:*_UNIXGCC_*_CC_FLAGS       = -DMDEPKG_NDEBUG@@ -217,7 +222,7 @@
   #   # Platform   #-!if $(UNIVERSAL_PAYLOAD) == TRUE+!if $(CPU_TIMER_LIB_ENABLE) == TRUE   TimerLib|UefiCpuPkg/Library/CpuTimerLib/BaseCpuTimerLib.inf !else   TimerLib|UefiPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.inf-- 
2.32.0.windows.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85761): https://edk2.groups.io/g/devel/message/85761
Mute This Topic: https://groups.io/mt/88415742/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-


Re: [edk2-devel] [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.

Posted by Ma, Maurice 1 week, 3 days ago
Reviewed-by: Maurice Ma <maurice.ma@intel.com>

> -----Original Message-----
> From: Liu, Zhiguang <zhiguang.liu@intel.com>
> Sent: Thursday, January 13, 2022 22:15
> To: devel@edk2.groups.io
> Cc: Dong, Guo <guo.dong@intel.com>; Ni, Ray <ray.ni@intel.com>; Ma,
> Maurice <maurice.ma@intel.com>; You, Benjamin
> <benjamin.you@intel.com>
> Subject: [PATCH] UefiPayloadPkg: Not use BaseCpuTimerLib by default.
> 
> For recent X86 CPU, 0x15 CPUID instruction will return Time Stamp Counter.
> This is recommended way to get the time, and also how BaseCpuTimerLib
> works However, some CPU doesn't support this feature, so disable it by
> default.
> 
> Cc: Guo Dong <guo.dong@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Cc: Maurice Ma <maurice.ma@intel.com>
> Cc: Benjamin You <benjamin.you@intel.com>
> Signed-off-by: Zhiguang Liu <zhiguang.liu@intel.com>
> ---
>  UefiPayloadPkg/UefiPayloadPkg.dsc | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/UefiPayloadPkg/UefiPayloadPkg.dsc
> b/UefiPayloadPkg/UefiPayloadPkg.dsc
> index 3d08edfe31..65c1bd610e 100644
> --- a/UefiPayloadPkg/UefiPayloadPkg.dsc
> +++ b/UefiPayloadPkg/UefiPayloadPkg.dsc
> @@ -111,6 +111,11 @@
>    DEFINE SERIAL_DRIVER_ENABLE = TRUE   DEFINE
> PERFORMANCE_MEASUREMENT_ENABLE  = FALSE +  # For recent X86 CPU,
> 0x15 CPUID instruction will return Time Stamp Counter.+  # This is
> recommended way to get the time, and also how BaseCpuTimerLib works.+
> # However, some CPU doesn't support this feature, so disable it by default.+
> DEFINE CPU_TIMER_LIB_ENABLE  = FALSE+ [BuildOptions]
> *_*_*_CC_FLAGS                 = -D DISABLE_NEW_DEPRECATED_INTERFACES
> GCC:*_UNIXGCC_*_CC_FLAGS       = -DMDEPKG_NDEBUG@@ -217,7 +222,7
> @@
>    #   # Platform   #-!if $(UNIVERSAL_PAYLOAD) == TRUE+!if
> $(CPU_TIMER_LIB_ENABLE) == TRUE
> TimerLib|UefiCpuPkg/Library/CpuTimerLib/BaseCpuTimerLib.inf !else
> TimerLib|UefiPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.inf--
> 2.32.0.windows.2



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85715): https://edk2.groups.io/g/devel/message/85715
Mute This Topic: https://groups.io/mt/88415742/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-