Reviewed-by: Zhichao Gao <[email protected]> Thanks, Zhichao
> -----Original Message----- > From: [email protected] <[email protected]> On Behalf Of Jeff > Brasen via groups.io > Sent: Saturday, July 1, 2023 1:30 AM > To: [email protected] > Cc: Wang, Jian J <[email protected]>; Gao, Liming > <[email protected]>; Bi, Dandan <[email protected]>; Gao, > Zhichao <[email protected]>; Jeff Brasen <[email protected]> > 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 <[email protected]> > --- > 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: [email protected] Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
