On 04/15/19 05:06, 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. > Notes: > This library API only provide a basic function of reset. Full > function should use the instance in the MdeModulePkg and make > sure the depex driver is dispatched. > > Cc: Jordan Justen <jordan.l.jus...@intel.com> > Cc: Laszlo Ersek <ler...@redhat.com> > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> > Cc: Liming Gao <liming....@intel.com> > Signed-off-by: Zhichao Gao <zhichao....@intel.com> > --- > .../Library/ResetSystemLib/ResetSystemLib.c | 43 +++++++++++++++++++ > 1 file changed, 43 insertions(+) > > diff --git a/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c > b/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c > index c2c7736aa8..c05a87ad51 100644 > --- a/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c > +++ b/OvmfPkg/Library/ResetSystemLib/ResetSystemLib.c > @@ -140,3 +140,46 @@ ResetPlatformSpecific ( > { > ResetCold (); > } > + > +/** > + The ResetSystem function resets the entire platform. > + > + @param[in] ResetType The type of reset to perform. > + @param[in] ResetStatus The 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 UINTN DataSize, > + 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 ; > + } > +} >
For patches 18/25 and 23/25]: - please replace return ; with return; (there are two instances in both patches) - with that update, for both patches: Reviewed-by: Laszlo Ersek <ler...@redhat.com> Thanks Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#39101): https://edk2.groups.io/g/devel/message/39101 Mute This Topic: https://groups.io/mt/31137354/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-