+Thomas for info
Zhichao - please update subject line to
Platform/ARM: Add a new API ResetSystem to VExpress ResetSystemLib
and drop the spaces before ;.
With that:
Reviewed-by: Leif Lindholm
On Mon, Apr 15, 2019 at 11:07:35AM +0800, Zhichao Gao wrote:
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1460
>
> Add a new API ResetSystem to this ResetSystemLib instance.
> It only adds the basic functions from ResetSystemRuntimeDxe.
> Lacking of this interface may cause link error, if some drivers
> use this new API and link to this library instance.
> Make the ResetPlatformSpecific's parameters same with the
> interface in Edk2 repo.
> Notes:
> This library API only provide a basic function of reset. If
> the consumers want full functions, they should use the instance
> in the MdeModulePkg and make sure the depex driver is dispatched.
>
> Cc: Ard Biesheuvel
> Cc: Leif Lindholm
> Cc: Michael D Kinney
> Cc: Liming Gao
> Signed-off-by: Zhichao Gao
> ---
> .../Library/ResetSystemLib/ResetSystemLib.c | 44 +++
> 1 file changed, 44 insertions(+)
>
> diff --git a/Platform/ARM/VExpressPkg/Library/ResetSystemLib/ResetSystemLib.c
> b/Platform/ARM/VExpressPkg/Library/ResetSystemLib/ResetSystemLib.c
> index d2bc4a88fa..c4f4eedc45 100644
> --- a/Platform/ARM/VExpressPkg/Library/ResetSystemLib/ResetSystemLib.c
> +++ b/Platform/ARM/VExpressPkg/Library/ResetSystemLib/ResetSystemLib.c
> @@ -6,6 +6,7 @@
>Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
>Copyright (c) 2013, ARM Ltd. All rights reserved.
>Copyright (c) 2017, Linaro Ltd. All rights reserved.
> + Copyright (c) 2019, Intel Corporation. All rights reserved.
>
>This program and the accompanying materials
>are licensed and made available under the terms and conditions of the BSD
> License
> @@ -109,3 +110,46 @@ ResetPlatformSpecific (
> {
>ResetCold ();
> }
> +
> +/**
> + The ResetSystem function resets the entire platform.
> +
> + @param[in] ResetType The type of reset to perform.
> + @param[in] ResetStatusThe status code for the reset.
> + @param[in] DataSize The size, in bytes, of ResetData.
> + @param[in] ResetData For a ResetType of EfiResetCold, EfiResetWarm,
> or EfiResetShutdown
> +the data buffer starts with a Null-terminated
> string, optionally
> +followed by additional binary data. The string
> is a description
> +that the caller may use to further indicate the
> reason for the
> +system reset.
> +**/
> +VOID
> +EFIAPI
> +ResetSystem (
> + IN EFI_RESET_TYPE ResetType,
> + IN EFI_STATUS ResetStatus,
> + IN UINTNDataSize,
> + IN VOID *ResetData OPTIONAL
> + )
> +{
> + switch (ResetType) {
> + case EfiResetWarm:
> +ResetWarm ();
> +break;
> +
> + case EfiResetCold:
> +ResetCold ();
> +break;
> +
> + case EfiResetShutdown:
> +ResetShutdown ();
> +return ;
> +
> + case EfiResetPlatformSpecific:
> +ResetPlatformSpecific (DataSize, ResetData);
> +return;
> +
> + default:
> +return ;
> + }
> +}
> --
> 2.21.0.windows.1
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#39073): https://edk2.groups.io/g/devel/message/39073
Mute This Topic: https://groups.io/mt/31137368/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-