From: mdkinney Date: Wed, 1 Jul 2009 00:03:38 +0000 (+0000) Subject: Add Null implementation of the Reset System Library that generated an ASSERT() on... X-Git-Tag: edk2-stable201903~17614 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=064d5de3784253c623a1941c6afaf02d0dde3fbc Add Null implementation of the Reset System Library that generated an ASSERT() on all reset APIs. This library can be used as a template to implement a Reset System Library for a specific platform. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8693 6f19259b-4bc3-4df7-8a09-765794883524 --- diff --git a/MdeModulePkg/Include/Library/ResetSystemLib.h b/MdeModulePkg/Include/Library/ResetSystemLib.h index 4b67865fa3..b83bec5836 100644 --- a/MdeModulePkg/Include/Library/ResetSystemLib.h +++ b/MdeModulePkg/Include/Library/ResetSystemLib.h @@ -64,4 +64,5 @@ EFIAPI EnterS3WithImmediateWake ( VOID ); + #endif diff --git a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c new file mode 100644 index 0000000000..2addfff406 --- /dev/null +++ b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.c @@ -0,0 +1,79 @@ +/** @file + Null Reset System Library instance that only generates ASSERT() conditions. + + Copyright (c) 2006 - 2009, 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 + which accompanies this distribution. The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#include + +#include +#include + +/** + This function causes a system-wide reset (cold reset), in which + all circuitry within the system returns to its initial state. This type of reset + is asynchronous to system operation and operates without regard to + cycle boundaries. + + If this function returns, it means that the system does not support cold reset. +**/ +VOID +EFIAPI +ResetCold ( + VOID + ) +{ + ASSERT (FALSE); +} + +/** + This function causes a system-wide initialization (warm reset), in which all processors + are set to their initial state. Pending cycles are not corrupted. + + If this function returns, it means that the system does not support warm reset. +**/ +VOID +EFIAPI +ResetWarm ( + VOID + ) +{ + ASSERT (FALSE); +} + +/** + This function causes the system to enter a power state equivalent + to the ACPI G2/S5 or G3 states. + + If this function returns, it means that the system does not support shut down reset. +**/ +VOID +EFIAPI +ResetShutdown ( + VOID + ) +{ + ASSERT (FALSE); +} + +/** + This function causes the system to enter S3 and then wake up immediately. + + If this function returns, it means that the system does not support S3 feature. +**/ +VOID +EFIAPI +EnterS3WithImmediateWake ( + VOID + ) +{ + ASSERT (FALSE); +} diff --git a/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf new file mode 100644 index 0000000000..0c8a3e84c5 --- /dev/null +++ b/MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf @@ -0,0 +1,37 @@ +#/** @file +# Null Reset System Library instance that only generates ASSERT() conditions. +# +# Copyright (c) 2007 - 2009, 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 +# which accompanies this distribution. The full text of the license may be found at +# http://opensource.org/licenses/bsd-license.php +# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, +# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. +# +#**/ + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = BaseResetSystemLibNull + FILE_GUID = 667A8B1C-9C97-4b2a-AE7E-568772FE45F3 + MODULE_TYPE = BASE + VERSION_STRING = 1.0 + LIBRARY_CLASS = ResetSystemLib + +# +# The following information is for reference only and not required by the build tools. +# +# VALID_ARCHITECTURES = IA32 X64 IPF EBC +# + +[Sources.common] + BaseResetSystemLibNull.c + +[Packages] + MdePkg/MdePkg.dec + MdeModulePkg/MdeModulePkg.dec + +[LibraryClasses] + DebugLib diff --git a/MdeModulePkg/MdeModulePkg.dsc b/MdeModulePkg/MdeModulePkg.dsc index f338a9ac50..66c4cd0b22 100644 --- a/MdeModulePkg/MdeModulePkg.dsc +++ b/MdeModulePkg/MdeModulePkg.dsc @@ -278,6 +278,7 @@ MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf MdeModulePkg/Library/BaseMemoryTestLibNull/BaseMemoryTestLibNull.inf MdeModulePkg/Library/BaseMemoryTestLib/BaseMemoryTestLib.inf + MdeModulePkg/Library/BaseResetSystemLibNull/BaseResetSystemLibNull.inf MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf