/** @file\r
\r
- Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
#include <PiDxe.h>\r
\r
#include <Protocol/Reset.h>\r
+#include <Protocol/ResetNotification.h>\r
#include <Guid/CapsuleVendor.h>\r
\r
#include <Library/BaseLib.h>\r
#include <Library/UefiRuntimeServicesTableLib.h>\r
#include <Library/ResetSystemLib.h>\r
#include <Library/ReportStatusCodeLib.h>\r
+#include <Library/MemoryAllocationLib.h>\r
+\r
+typedef struct {\r
+ UINT32 Signature;\r
+ LIST_ENTRY Link;\r
+ EFI_RESET_SYSTEM ResetNotify;\r
+} RESET_NOTIFY_ENTRY;\r
+#define RESET_NOTIFY_ENTRY_SIGNATURE SIGNATURE_32('r', 's', 't', 'n')\r
+#define RESET_NOTIFY_ENTRY_FROM_LINK(a) CR (a, RESET_NOTIFY_ENTRY, Link, RESET_NOTIFY_ENTRY_SIGNATURE)\r
+\r
+typedef struct {\r
+ UINT32 Signature;\r
+ EFI_RESET_NOTIFICATION_PROTOCOL ResetNotification;\r
+ LIST_ENTRY ResetNotifies;\r
+} RESET_NOTIFICATION_INSTANCE;\r
+#define RESET_NOTIFICATION_INSTANCE_SIGNATURE SIGNATURE_32('r', 's', 't', 'i')\r
+#define RESET_NOTIFICATION_INSTANCE_FROM_THIS(a) \\r
+ CR (a, RESET_NOTIFICATION_INSTANCE, ResetNotification, RESET_NOTIFICATION_INSTANCE_SIGNATURE)\r
\r
/**\r
The driver's entry point.\r