Best regards,
Marvin.
> -----Original Message-----
> From: Gao, Liming <[email protected]>
> Sent: Monday, July 23, 2018 8:46 AM
> To: [email protected]; [email protected]
> Cc: Ni, Ruiyu <[email protected]>
> Subject: RE: [PATCH] PcAtChipsetPkg/AcpiTimerLib: Support Standalone MM.
>
> Marvin:
> If this library supports standalone MM module only, I agree its source file
> includes Standalone MM
> But, this library instance also supports DXE, SMM. I don't think
> StandaloneMm name is good for them.
I called all files "DxeStandaloneMm", the same way as other libraries append
environment types ("PeiDxePostCodeLib", etc).
Did I overlook something?
>
> Besides, I want to know why you changes this library instance. Are there the
> standalone MM module to depend on this AcpiTimerLib?
I wanted to try out porting a private module which happened to depend on
AcpiTimerLib and thus HobLib.
HobLib will follow once the MmServicesTableLib patch has been decided on and I
will adapt others too once I run into needing them.
>
> Thanks
> Liming
> >-----Original Message-----
> >From: edk2-devel [mailto:[email protected]] On Behalf Of
> >Marvin H?user
> >Sent: Monday, July 23, 2018 7:05 AM
> >To: [email protected]
> >Cc: Ni, Ruiyu <[email protected]>
> >Subject: [edk2] [PATCH] PcAtChipsetPkg/AcpiTimerLib: Support Standalone
> >MM.
> >
> >To support Standalone MM, the current DXE implementation, which is also
> >used to support DXE SMM Drivers, has been modified. Its type was
> >changed to BASE to make the constructor function generic,
> MM_STANDALONE
> >modules types have been added to the support list and the internal
> >files were adapted to show support.
> >
> >"DxeAcpiTimerLib.inf" has not been renamed to not break packages.
> >This might be addressed with a separate patch.
> >
> >Contributed-under: TianoCore Contribution Agreement 1.1
> >Signed-off-by: Marvin Haeuser <[email protected]>
> >---
> > PcAtChipsetPkg/Library/AcpiTimerLib/{DxeAcpiTimerLib.c =>
> >DxeStandaloneMmAcpiTimerLib.c} | 9 +++------
> > PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
> >| 14 +++++++-------
> > PcAtChipsetPkg/Library/AcpiTimerLib/{DxeAcpiTimerLib.uni =>
> >StandaloneMmDxeAcpiTimerLib.uni} | 2 +-
> > 3 files changed, 11 insertions(+), 14 deletions(-)
> >
> >diff --git a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c
> >b/PcAtChipsetPkg/Library/AcpiTimerLib/DxeStandaloneMmAcpiTimerLib.c
> >similarity index 88%
> >rename from PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c
> >rename to
> >PcAtChipsetPkg/Library/AcpiTimerLib/DxeStandaloneMmAcpiTimerLib.c
> >index 9ed10ef2e297..784f33871d75 100644
> >--- a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.c
> >+++
> >b/PcAtChipsetPkg/Library/AcpiTimerLib/DxeStandaloneMmAcpiTimerLib.c
> >@@ -13,6 +13,7 @@
> > **/
> >
> > #include <PiDxe.h>
> >+#include <PiMm.h>
> > #include <Library/TimerLib.h>
> > #include <Library/BaseLib.h>
> > #include <Library/HobLib.h>
> >@@ -78,17 +79,13 @@ InternalGetPerformanceCounterFrequency (
> > /**
> > The constructor function enables ACPI IO space, and caches
> >PerformanceCounterFrequency.
> >
> >- @param ImageHandle The firmware allocated handle for the EFI image.
> >- @param SystemTable A pointer to the EFI System Table.
> >-
> > @retval EFI_SUCCESS The constructor always returns RETURN_SUCCESS.
> >
> > **/
> > EFI_STATUS
> > EFIAPI
> >-DxeAcpiTimerLibConstructor (
> >- IN EFI_HANDLE ImageHandle,
> >- IN EFI_SYSTEM_TABLE *SystemTable
> >+DxeStandaloneMmAcpiTimerLibConstructor (
> >+ VOID
> > )
> > {
> > EFI_HOB_GUID_TYPE *GuidHob;
> >diff --git a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
> >b/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
> >index 601041c80137..f1f62247649e 100644
> >--- a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
> >+++ b/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
> >@@ -1,5 +1,5 @@
> > ## @file
> >-# DXE ACPI Timer Library
> >+# DXE and Standalone MM ACPI Timer Library
> > #
> > # Provides basic timer support using the ACPI timer hardware. The
> >performance # counter features are provided by the processors time
> >stamp counter.
> >@@ -20,17 +20,17 @@
> >
> > [Defines]
> > INF_VERSION = 0x00010005
> >- BASE_NAME = DxeAcpiTimerLib
> >+ BASE_NAME = DxeStandaloneMmAcpiTimerLib
> > FILE_GUID = E624B98C-845A-4b94-9B50-B20475D552B9
> >- MODULE_TYPE = DXE_DRIVER
> >+ MODULE_TYPE = BASE
> > VERSION_STRING = 1.0
> >- LIBRARY_CLASS = TimerLib|DXE_CORE DXE_DRIVER
> >DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION
> UEFI_DRIVER SMM_CORE
> >- CONSTRUCTOR = DxeAcpiTimerLibConstructor
> >- MODULE_UNI_FILE = DxeAcpiTimerLib.uni
> >+ LIBRARY_CLASS = TimerLib|DXE_CORE DXE_DRIVER
> >DXE_RUNTIME_DRIVER DXE_SMM_DRIVER MM_STANDALONE
> UEFI_APPLICATION
> >UEFI_DRIVER SMM_CORE MM_CORE_STANDALONE
> >+ CONSTRUCTOR = DxeStandaloneMmAcpiTimerLibConstructor
> >+ MODULE_UNI_FILE = DxeStandaloneMmAcpiTimerLib.uni
> >
> > [Sources]
> > AcpiTimerLib.c
> >- DxeAcpiTimerLib.c
> >+ DxeStandaloneMmAcpiTimerLib.c
> >
> > [Packages]
> > MdePkg/MdePkg.dec
> >diff --git a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.uni
> >b/PcAtChipsetPkg/Library/AcpiTimerLib/StandaloneMmDxeAcpiTimerLib.u
> ni
> >similarity index 92%
> >rename from PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.uni
> >rename to
> >PcAtChipsetPkg/Library/AcpiTimerLib/StandaloneMmDxeAcpiTimerLib.uni
> >index bf31abf81d68..6b3abb85ebc8 100644
> >--- a/PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.uni
> >+++
> >b/PcAtChipsetPkg/Library/AcpiTimerLib/StandaloneMmDxeAcpiTimerLib.u
> ni
> >@@ -1,5 +1,5 @@
> > // /** @file
> >-// DXE ACPI Timer Library
> >+// DXE and Standalone MM ACPI Timer Library
> > //
> > // Provides basic timer support using the ACPI timer hardware. The
> >performance // counter features are provided by the processors time
> >stamp counter.
> >--
> >2.18.0.windows.1
> >
> >_______________________________________________
> >edk2-devel mailing list
> >[email protected]
> >https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel