Reviewed-by: Michael D Kinney <michael.d.kin...@intel.com> > -----Original Message----- > From: devel@edk2.groups.io [mailto:devel@edk2.groups.io] > On Behalf Of Gao, Zhichao > Sent: Tuesday, April 16, 2019 11:27 PM > To: devel@edk2.groups.io > Cc: Kinney, Michael D <michael.d.kin...@intel.com>; > Steele, Kelly <kelly.ste...@intel.com>; Gao, Liming > <liming....@intel.com> > Subject: [edk2-devel] [PATCH V2 20/25] > QuarkSocPkg/ResetSystemLib: Add new API ResetSystem > > 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: Michael D Kinney <michael.d.kin...@intel.com> > Cc: Kelly Steele <kelly.ste...@intel.com> > Cc: Liming Gao <liming....@intel.com> > Signed-off-by: Zhichao Gao <zhichao....@intel.com> > --- > .../Library/ResetSystemLib/ResetSystemLib.c | 45 > ++++++++++++++++++- > 1 file changed, 44 insertions(+), 1 deletion(-) > > diff --git > a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/Re > setSystemLib.c > b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/Re > setSystemLib.c > index ea95f89059..d730f62ce0 100644 > --- > a/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/Re > setSystemLib.c > +++ > b/QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/Re > setSystemLib.c > @@ -2,7 +2,7 @@ > System reset Library Services. This library class > provides a set of > methods to reset whole system with manipulate QNC. > > -Copyright (c) 2013-2016 Intel Corporation. > +Copyright (c) 2013-2019 Intel Corporation. > > SPDX-License-Identifier: BSD-2-Clause-Patent > > @@ -334,3 +334,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; > + } > +} > -- > 2.21.0.windows.1 > > >
-=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#39564): https://edk2.groups.io/g/devel/message/39564 Mute This Topic: https://groups.io/mt/31209239/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-