Hi Sami, I'm glad to get this precious "Reviewed-by", thanks!
BR Jianyong > -----Original Message----- > From: Sami Mujawar <sami.muja...@arm.com> > Sent: Monday, June 28, 2021 8:45 PM > To: Jianyong Wu <jianyong...@arm.com>; devel@edk2.groups.io > Cc: ler...@redhat.com; ardb+tianoc...@kernel.org; Justin He > <justin...@arm.com>; nd <n...@arm.com> > Subject: Re: [PATCH v3 1/3] Acpi: reimplement PlatformHasAcpi for Cloud > Hypervisor > > Hi Jianyong, > > Thank you for this patch. > > This patch looks good to me. > > Reviewed-by: Sami Mujawar <sami.muja...@arm.com> > > Regards, > > Sami Mujawar > > > On 28/06/2021 10:55 AM, Jianyong Wu wrote: > > The current implementation of PlatformHasAcpiDt is not a common > > library and is on behalf of qemu. So give a specific version for Cloud > > Hypervisor here. > > > > Signed-off-by: Jianyong Wu <jianyong...@arm.com> > > --- > > .../CloudHvHasAcpiDtDxe.inf | 43 ++++++++++++ > > .../CloudHvHasAcpiDtDxe.c | 69 +++++++++++++++++++ > > 2 files changed, 112 insertions(+) > > create mode 100644 > ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.inf > > create mode 100644 > > ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c > > > > diff --git > > a/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.inf > > b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.inf > > new file mode 100644 > > index 000000000000..eb63a4136545 > > --- /dev/null > > +++ > b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.inf > > @@ -0,0 +1,43 @@ > > +## @file > > +# Decide whether the firmware should expose an ACPI- and/or a Device > > +Tree-based # hardware description to the operating system. > > +# > > +# Copyright (c) 2021, Arm Limited. All rights reserved.<BR> # # > > +SPDX-License-Identifier: BSD-2-Clause-Patent ## > > + > > +[Defines] > > + INF_VERSION = 1.25 > > + BASE_NAME = CloudHvPlatformHasAcpiDtDxe > > + FILE_GUID = 71fe72f9-6dc1-199d-5054-13b4200ee88d > > + MODULE_TYPE = DXE_DRIVER > > + VERSION_STRING = 1.0 > > + ENTRY_POINT = PlatformHasAcpiDt > > + > > +[Sources] > > + CloudHvHasAcpiDtDxe.c > > + > > +[Packages] > > + ArmVirtPkg/ArmVirtPkg.dec > > + EmbeddedPkg/EmbeddedPkg.dec > > + MdeModulePkg/MdeModulePkg.dec > > + MdePkg/MdePkg.dec > > + OvmfPkg/OvmfPkg.dec > > + > > +[LibraryClasses] > > + BaseLib > > + DebugLib > > + PcdLib > > + UefiBootServicesTableLib > > + UefiDriverEntryPoint > > + > > +[Guids] > > + gEdkiiPlatformHasAcpiGuid ## SOMETIMES_PRODUCES ## PROTOCOL > > + gEdkiiPlatformHasDeviceTreeGuid ## SOMETIMES_PRODUCES ## > PROTOCOL > > + > > +[Pcd] > > + gArmVirtTokenSpaceGuid.PcdForceNoAcpi > > + > > +[Depex] > > + gEfiVariableArchProtocolGuid > > diff --git > > a/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c > > b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c > > new file mode 100644 > > index 000000000000..48a446c68a45 > > --- /dev/null > > +++ > b/ArmVirtPkg/CloudHvPlatformHasAcpiDtDxe/CloudHvHasAcpiDtDxe.c > > @@ -0,0 +1,69 @@ > > +/** @file > > + Decide whether the firmware should expose an ACPI- and/or a Device > > +Tree-based > > + hardware description to the operating system. > > + > > + Copyright (c) 2021, Arm Limited. All rights reserved.<BR> > > + > > + SPDX-License-Identifier: BSD-2-Clause-Patent **/ > > + > > +#include <Guid/PlatformHasAcpi.h> > > +#include <Guid/PlatformHasDeviceTree.h> #include <Library/BaseLib.h> > > +#include <Library/DebugLib.h> #include <Library/PcdLib.h> #include > > +<Library/UefiBootServicesTableLib.h> > > + > > +EFI_STATUS > > +EFIAPI > > +PlatformHasAcpiDt ( > > + IN EFI_HANDLE ImageHandle, > > + IN EFI_SYSTEM_TABLE *SystemTable > > + ) > > +{ > > + EFI_STATUS Status; > > + > > + // > > + // If we fail to install any of the necessary protocols below, the > > + OS will be // unbootable anyway (due to lacking hardware > > + description), so tolerate no // errors here. > > + // > > + if (MAX_UINTN == MAX_UINT64 && > > + !PcdGetBool (PcdForceNoAcpi)) > > + { > > + Status = gBS->InstallProtocolInterface ( > > + &ImageHandle, > > + &gEdkiiPlatformHasAcpiGuid, > > + EFI_NATIVE_INTERFACE, > > + NULL > > + ); > > + if (EFI_ERROR (Status)) { > > + goto Failed; > > + } > > + > > + return Status; > > + } > > + > > + // > > + // Expose the Device Tree otherwise. > > + // > > + Status = gBS->InstallProtocolInterface ( > > + &ImageHandle, > > + &gEdkiiPlatformHasDeviceTreeGuid, > > + EFI_NATIVE_INTERFACE, > > + NULL > > + ); > > + if (EFI_ERROR (Status)) { > > + goto Failed; > > + } > > + > > + return Status; > > + > > +Failed: > > + ASSERT_EFI_ERROR (Status); > > + CpuDeadLoop (); > > + // > > + // Keep compilers happy. > > + // > > + return Status; > > +} -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#77237): https://edk2.groups.io/g/devel/message/77237 Mute This Topic: https://groups.io/mt/83841320/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-