Reviewed-by: Zhichao Gao <zhichao....@intel.com> Thanks, Zhichao
> -----Original Message----- > From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Jeff > Brasen via groups.io > Sent: Saturday, July 1, 2023 1:30 AM > To: devel@edk2.groups.io > Cc: Wang, Jian J <jian.j.w...@intel.com>; Gao, Liming > <gaolim...@byosoft.com.cn>; Bi, Dandan <dandan...@intel.com>; Gao, > Zhichao <zhichao....@intel.com>; Jeff Brasen <jbra...@nvidia.com> > Subject: [edk2-devel] [PATCH v2 2/2] ShellPkg/Dp: Allow dp command to > work without ACPI > > If the system does not have ACPI setup use the configuration table to get the > performance info. > > Signed-off-by: Jeff Brasen <jbra...@nvidia.com> > --- > ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf | 1 + > .../DpDynamicCommand/DpDynamicCommand.inf | 1 + > ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c | 11 ++++++++- > -- > 3 files changed, 10 insertions(+), 3 deletions(-) > > diff --git a/ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf > b/ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf > index 4a58286b8c1a..d9e1c23a1ee7 100644 > --- a/ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf > +++ b/ShellPkg/DynamicCommand/DpDynamicCommand/DpApp.inf > @@ -54,6 +54,7 @@ [LibraryClasses] > > [Guids] > gPerformanceProtocolGuid ## CONSUMES ## > SystemTable > + gEdkiiFpdtExtendedFirmwarePerformanceGuid ## CONSUMES ## > SystemTable > > [Protocols] > gEfiLoadedImageProtocolGuid ## CONSUMES > diff --git > a/ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.i > nf > b/ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.i > nf > index 013bdbd4a07e..2723fee7066e 100644 > --- > a/ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.i > nf > +++ > b/ShellPkg/DynamicCommand/DpDynamicCommand/DpDynamicCommand.i > nf > @@ -55,6 +55,7 @@ [LibraryClasses] > > [Guids] > gPerformanceProtocolGuid ## CONSUMES ## > SystemTable > + gEdkiiFpdtExtendedFirmwarePerformanceGuid ## CONSUMES ## > SystemTable > > [Protocols] > gEfiLoadedImageProtocolGuid ## CONSUMES > diff --git a/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c > b/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c > index 512a146da6dd..98c84d2ef938 100644 > --- a/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c > +++ b/ShellPkg/DynamicCommand/DpDynamicCommand/Dp.c > @@ -129,17 +129,22 @@ EFI_STATUS > GetBootPerformanceTable ( > ) > { > + EFI_STATUS Status; > FIRMWARE_PERFORMANCE_TABLE *FirmwarePerformanceTable; > > FirmwarePerformanceTable = (FIRMWARE_PERFORMANCE_TABLE > *)EfiLocateFirstAcpiTable ( > > EFI_ACPI_5_0_FIRMWARE_PERFORMANCE_DATA_TABLE_SIGNATURE > ); > if (FirmwarePerformanceTable == NULL) { > - ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN > (STR_DP_GET_ACPI_FPDT_FAIL), mDpHiiHandle); > - return EFI_NOT_FOUND; > + Status = EfiGetSystemConfigurationTable > (&gEdkiiFpdtExtendedFirmwarePerformanceGuid, (VOID > **)&mBootPerformanceTable); > + if (EFI_ERROR (Status)) { > + ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN > (STR_DP_GET_ACPI_FPDT_FAIL), mDpHiiHandle); > + return EFI_NOT_FOUND; > + } > + } else { > + mBootPerformanceTable = (UINT8 > + *)(UINTN)FirmwarePerformanceTable- > >BootPointerRecord.BootPerformanceTa > + blePointer; > } > > - mBootPerformanceTable = (UINT8 > *)(UINTN)FirmwarePerformanceTable- > >BootPointerRecord.BootPerformanceTablePointer; > mBootPerformanceTableSize = ((BOOT_PERFORMANCE_TABLE > *)mBootPerformanceTable)->Header.Length; > > return EFI_SUCCESS; > -- > 2.25.1 > > > > > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107288): https://edk2.groups.io/g/devel/message/107288 Mute This Topic: https://groups.io/mt/99877763/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-