From f5901ff2a472a5418ee6ff790c3b86cf9c3f54f1 Mon Sep 17 00:00:00 2001 From: Oliver Smith-Denny Date: Thu, 18 Jul 2024 10:19:04 -0700 Subject: ArmPkg: Remove Deprecated ArmPsciResetSystemLib ArmPsciResetSystemLib has been deprecated since commit b2c55e732888fd721f5235a820b1d1c45209992d in 2017. The lib itself has not been meaningfully updated in 10 years. This commit removes the library to complete the deprecation process and remove confusion over which library to use for resetting an ARM platform. Signed-off-by: Oliver Smith-Denny --- ArmPkg/ArmPkg.dsc | 1 - .../ArmPsciResetSystemLib/ArmPsciResetSystemLib.c | 90 ---------------------- .../ArmPsciResetSystemLib.inf | 32 -------- 3 files changed, 123 deletions(-) delete mode 100644 ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.c delete mode 100644 ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf diff --git a/ArmPkg/ArmPkg.dsc b/ArmPkg/ArmPkg.dsc index 6dd91e6..f4ffc71 100644 --- a/ArmPkg/ArmPkg.dsc +++ b/ArmPkg/ArmPkg.dsc @@ -116,7 +116,6 @@ ArmPkg/Library/SemiHostingDebugLib/SemiHostingDebugLib.inf ArmPkg/Library/SemiHostingSerialPortLib/SemiHostingSerialPortLib.inf ArmPkg/Library/SemihostLib/SemihostLib.inf - ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.inf ArmPkg/Library/ArmExceptionLib/ArmRelocateExceptionLib.inf diff --git a/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.c b/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.c deleted file mode 100644 index 02b0c27..0000000 --- a/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.c +++ /dev/null @@ -1,90 +0,0 @@ -/** @file - Support ResetSystem Runtime call using PSCI calls - - Note: A similar library is implemented in - ArmVirtPkg/Library/ArmVirtualizationPsciResetSystemLib - So similar issues might exist in this implementation too. - - Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.
- Copyright (c) 2013-2015, ARM Ltd. All rights reserved.
- Copyright (c) 2014, Linaro Ltd. All rights reserved.
- - SPDX-License-Identifier: BSD-2-Clause-Patent - -**/ - -#include - -#include -#include -#include -#include - -#include - -/** - Resets the entire platform. - - @param ResetType The type of reset to perform. - @param ResetStatus The status code for the reset. - @param DataSize The size, in bytes, of WatchdogData. - @param ResetData For a ResetType of EfiResetCold, EfiResetWarm, or - EfiResetShutdown the data buffer starts with a Null-terminated - Unicode string, optionally followed by additional binary data. - -**/ -EFI_STATUS -EFIAPI -LibResetSystem ( - IN EFI_RESET_TYPE ResetType, - IN EFI_STATUS ResetStatus, - IN UINTN DataSize, - IN CHAR16 *ResetData OPTIONAL - ) -{ - ARM_SMC_ARGS ArmSmcArgs; - - switch (ResetType) { - case EfiResetPlatformSpecific: - // Map the platform specific reset as reboot - case EfiResetWarm: - // Map a warm reset into a cold reset - case EfiResetCold: - // Send a PSCI 0.2 SYSTEM_RESET command - ArmSmcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_RESET; - break; - case EfiResetShutdown: - // Send a PSCI 0.2 SYSTEM_OFF command - ArmSmcArgs.Arg0 = ARM_SMC_ID_PSCI_SYSTEM_OFF; - break; - default: - ASSERT (FALSE); - return EFI_UNSUPPORTED; - } - - ArmCallSmc (&ArmSmcArgs); - - // We should never be here - DEBUG ((DEBUG_ERROR, "%a: PSCI Reset failed\n", __func__)); - CpuDeadLoop (); - return EFI_UNSUPPORTED; -} - -/** - Initialize any infrastructure required for LibResetSystem () to function. - - @param ImageHandle The firmware allocated handle for the EFI image. - @param SystemTable A pointer to the EFI System Table. - - @retval EFI_SUCCESS The constructor always returns EFI_SUCCESS. - -**/ -EFI_STATUS -EFIAPI -LibInitializeResetSystem ( - IN EFI_HANDLE ImageHandle, - IN EFI_SYSTEM_TABLE *SystemTable - ) -{ - return EFI_SUCCESS; -} diff --git a/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf b/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf deleted file mode 100644 index 3d05de4..0000000 --- a/ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf +++ /dev/null @@ -1,32 +0,0 @@ -#/** @file -# Reset System lib using PSCI hypervisor or secure monitor calls -# -# Copyright (c) 2008, Apple Inc. All rights reserved.
-# Copyright (c) 2014, Linaro Ltd. All rights reserved.
-# Copyright (c) 2014, ARM Ltd. All rights reserved.
-# -# SPDX-License-Identifier: BSD-2-Clause-Patent -# -# -#**/ - -[Defines] - INF_VERSION = 0x00010005 - BASE_NAME = ArmPsciResetSystemLib - FILE_GUID = A8F59B69-A105-41C7-8F5A-2C60DD7FD7AA - MODULE_TYPE = BASE - VERSION_STRING = 1.0 - LIBRARY_CLASS = EfiResetSystemLib - -[Sources] - ArmPsciResetSystemLib.c - -[Packages] - ArmPkg/ArmPkg.dec - MdePkg/MdePkg.dec - EmbeddedPkg/EmbeddedPkg.dec - -[LibraryClasses] - DebugLib - BaseLib - ArmSmcLib -- cgit v1.1