mirror of https://github.com/acidanthera/audk.git
ArmPlatformPkg/ArmVExpressPkg: Use SysConfigLib in ResetSystemLib
On ARM Versatile Express, the microcontroller can reset the entire platform. The micro-controller can be accessed by the SysConfigLib. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11792 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
1eb3454b8a
commit
99127e9699
|
@ -19,9 +19,9 @@
|
|||
#include <PiDxe.h>
|
||||
|
||||
#include <Library/BaseLib.h>
|
||||
#include <Library/PcdLib.h>
|
||||
#include <Library/DebugLib.h>
|
||||
#include <Library/EfiResetSystemLib.h>
|
||||
#include <Library/ArmPlatformSysConfigLib.h>
|
||||
|
||||
#include <ArmPlatform.h>
|
||||
|
||||
|
@ -45,23 +45,20 @@ LibResetSystem (
|
|||
IN CHAR16 *ResetData OPTIONAL
|
||||
)
|
||||
{
|
||||
if (ResetData != NULL) {
|
||||
DEBUG ((EFI_D_ERROR, "%s", ResetData));
|
||||
}
|
||||
|
||||
switch (ResetType) {
|
||||
case EfiResetWarm:
|
||||
// Map a warm reset into a cold reset
|
||||
case EfiResetCold:
|
||||
case EfiResetShutdown:
|
||||
default:
|
||||
CpuDeadLoop ();
|
||||
break;
|
||||
// Send the REBOOT function to the platform microcontroller
|
||||
ArmPlatformSysConfigSet (SYS_CFG_REBOOT, 0);
|
||||
|
||||
// We should never be here
|
||||
while(1);
|
||||
}
|
||||
|
||||
// If the reset didn't work, return an error.
|
||||
ASSERT (FALSE);
|
||||
return EFI_DEVICE_ERROR;
|
||||
ASSERT(FALSE);
|
||||
return EFI_UNSUPPORTED;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -27,8 +27,9 @@
|
|||
[Packages]
|
||||
MdePkg/MdePkg.dec
|
||||
EmbeddedPkg/EmbeddedPkg.dec
|
||||
ArmPlatformPkg/ArmVExpressPkg/ArmVExpressPkg.dec
|
||||
ArmPlatformPkg/ArmPlatformPkg.dec
|
||||
|
||||
[LibraryClasses]
|
||||
DebugLib
|
||||
BaseLib
|
||||
ArmPlatformSysConfigLib
|
||||
|
|
Loading…
Reference in New Issue