Reviewed-by: Liming Gao <liming....@intel.com>

> -----Original Message-----
> From: Bi, Dandan
> Sent: Wednesday, April 11, 2018 9:27 AM
> To: edk2-devel@lists.01.org
> Cc: Gao, Liming <liming....@intel.com>
> Subject: [patch] MdeModulePkg/FPDT: Add error message for unsupported case
> 
> We have updated performance infrastructure in previous commits:
> between
> https://github.com/tianocore/edk2/commit/73fef64f14d1b97ae9bd4705df3becc022391eba
> and
> https://github.com/tianocore/edk2/commit/115eae650bfd2be2c2bc37360f4a755065e774c4
> Update FPDT drivers to collect the performance data reported by
> gEdkiiFpdtExtendedFirmwarePerformanceGuid.
> The old implementation which collected performance data through
> gEfiFirmwarePerformanceGuid is not supported now.
> We should add error message to remind user for this unsupported
> case in case anyone use it by mistake.
> 
> Cc: Liming Gao <liming....@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Dandan Bi <dandan...@intel.com>
> ---
>  .../Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c    | 3 +++
>  .../Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c    | 5 
> +++++
>  2 files changed, 8 insertions(+)
> 
> diff --git 
> a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> index e5a38121e9d..e719e9e482c 100644
> --- 
> a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> +++ 
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableDxe/FirmwarePerformanceDxe.c
> @@ -552,10 +552,13 @@ FpdtStatusCodeListenerDxe (
>    } else if (Data != NULL && CompareGuid (&Data->Type, 
> &gEdkiiFpdtExtendedFirmwarePerformanceGuid)) {
>      //
>      // Get the Boot performance table and then install it to ACPI table.
>      //
>      CopyMem (&mReceivedAcpiBootPerformanceTable, Data + 1, Data->Size);
> +  } else if (Data != NULL && CompareGuid (&Data->Type, 
> &gEfiFirmwarePerformanceGuid)) {
> +    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerDxe: Performance data 
> reported through gEfiFirmwarePerformanceGuid will
> not be collected by FirmwarePerformanceDataTableDxe\n"));
> +    Status = EFI_UNSUPPORTED;
>    } else {
>      //
>      // Ignore else progress code.
>      //
>      Status = EFI_UNSUPPORTED;
> diff --git 
> a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> index d4ac849ed00..b011ec11030 100644
> --- 
> a/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> +++ 
> b/MdeModulePkg/Universal/Acpi/FirmwarePerformanceDataTableSmm/FirmwarePerformanceSmm.c
> @@ -104,10 +104,15 @@ FpdtStatusCodeListenerSmm (
> 
>      ReleaseSpinLock (&mSmmFpdtLock);
>      return EFI_SUCCESS;
>    }
> 
> +  if (Data != NULL && CompareGuid (&Data->Type, 
> &gEfiFirmwarePerformanceGuid)) {
> +    DEBUG ((DEBUG_ERROR, "FpdtStatusCodeListenerSmm: Performance data 
> reported through gEfiFirmwarePerformanceGuid will
> not be collected by FirmwarePerformanceDataTableSmm\n"));
> +    return EFI_UNSUPPORTED;
> +  }
> +
>    if ((Value != PcdGet32 (PcdProgressCodeS3SuspendStart)) &&
>        (Value != PcdGet32 (PcdProgressCodeS3SuspendEnd))) {
>      return EFI_UNSUPPORTED;
>    }
> 
> --
> 2.14.3.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to