The patches add/update two core modules that perform the reset action
ResetSystemPei and ResetSystemRuntimeDxe
With the two core modules, every time a reset action is performed in
either PEI phase or DXE phase, the accordingly registerred
reset filter/notification/handler will be triggered.
Reset filters are processed first so the final reset type and reset
data can be determined. Reset Notifications are processed second
so all components that have registered for a Reset Notification can
perform any required clean up actions. Reset handlers are processed
third. If there are no registered reset handlers or none of them
resets the platform, then the default reset action based on the
ResetSystemLib is performed.
https://github.com/tianocore/edk2-staging/commits/ResetSystemFinal
Bret Barkelew (1):
MdeModulePkg/ResetSystemPei: Add reset notifications in PEI
Michael D Kinney (6):
MdePkg/PeiServicesLib: Add PeiServicesResetSystem2()
MdeModulePkg/PeiMain: Always attempt to use Reset2 PPI first
MdeModulePkg/PeiMain: Cleanup whitespace in Reset.c
MdeModulePkg/ResetSystemRuntimeDxe: Add platform filter and handler
MdeModulePkg: Add ResetSystemLib instances that call core services
MdeModulePkg: Add ResetUtility librray class and BASE instance
Ruiyu Ni (3):
MdeModulePkg/ResetSystemRuntimeDxe: Add more debug message
MdePkg/UefiRuntimeLib: Support more module types.
MdeModulePkg: Add ResetSystemPei PEIM
MdeModulePkg/Core/Pei/Reset/Reset.c | 67 ++--
MdeModulePkg/Include/Library/ResetUtilityLib.h | 111 ++++++
.../Include/Ppi/PlatformSpecificResetFilter.h | 31 ++
.../Include/Ppi/PlatformSpecificResetHandler.h | 29 ++
.../Ppi/PlatformSpecificResetNotification.h | 31 ++
.../Include/Protocol/PlatformSpecificResetFilter.h | 31 ++
.../Protocol/PlatformSpecificResetHandler.h | 29 ++
.../Library/DxeResetSystemLib/DxeResetSystemLib.c | 100 ++++++
.../DxeResetSystemLib/DxeResetSystemLib.inf | 40 +++
.../DxeResetSystemLib/DxeResetSystemLib.uni | 21 ++
.../Library/PeiResetSystemLib/PeiResetSystemLib.c | 100 ++++++
.../PeiResetSystemLib/PeiResetSystemLib.inf | 40 +++
.../PeiResetSystemLib/PeiResetSystemLib.uni | 21 ++
.../Library/ResetUtilityLib/ResetUtility.c | 221 ++++++++++++
.../Library/ResetUtilityLib/ResetUtilityLib.inf | 43 +++
MdeModulePkg/MdeModulePkg.dec | 17 +
MdeModulePkg/MdeModulePkg.dsc | 7 +
.../Universal/ResetSystemPei/ResetSystem.c | 371 +++++++++++++++++++++
.../Universal/ResetSystemPei/ResetSystem.h | 130 ++++++++
.../ResetSystemPei.inf} | 45 ++-
.../Universal/ResetSystemPei/ResetSystemPei.uni | 20 ++
.../ResetSystemPei/ResetSystemPeiExtra.uni | 20 ++
.../Universal/ResetSystemRuntimeDxe/ResetSystem.c | 91 ++++-
.../Universal/ResetSystemRuntimeDxe/ResetSystem.h | 7 +
.../ResetSystemRuntimeDxe.inf | 7 +-
MdePkg/Include/Library/PeiServicesLib.h | 24 ++
MdePkg/Library/PeiServicesLib/PeiServicesLib.c | 26 ++
MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf | 4 +-
28 files changed, 1615 insertions(+), 69 deletions(-)
create mode 100644 MdeModulePkg/Include/Library/ResetUtilityLib.h
create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetFilter.h
create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetHandler.h
create mode 100644 MdeModulePkg/Include/Ppi/PlatformSpecificResetNotification.h
create mode 100644 MdeModulePkg/Include/Protocol/PlatformSpecificResetFilter.h
create mode 100644 MdeModulePkg/Include/Protocol/PlatformSpecificResetHandler.h
create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.c
create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.inf
create mode 100644 MdeModulePkg/Library/DxeResetSystemLib/DxeResetSystemLib.uni
create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.c
create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.inf
create mode 100644 MdeModulePkg/Library/PeiResetSystemLib/PeiResetSystemLib.uni
create mode 100644 MdeModulePkg/Library/ResetUtilityLib/ResetUtility.c
create mode 100644 MdeModulePkg/Library/ResetUtilityLib/ResetUtilityLib.inf
create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystem.c
create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystem.h
copy MdeModulePkg/Universal/{ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf => ResetSystemPei/ResetSystemPei.inf} (50%)
create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystemPei.uni
create mode 100644 MdeModulePkg/Universal/ResetSystemPei/ResetSystemPeiExtra.uni
--
2.15.1.windows.2
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel