]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Include/Guid/S3StorageDeviceInitList.h
MdeModulePkg: Add GUID for LockBox to save storage dev to init in S3
[mirror_edk2.git] / MdeModulePkg / Include / Guid / S3StorageDeviceInitList.h
diff --git a/MdeModulePkg/Include/Guid/S3StorageDeviceInitList.h b/MdeModulePkg/Include/Guid/S3StorageDeviceInitList.h
new file mode 100644 (file)
index 0000000..bd300b2
--- /dev/null
@@ -0,0 +1,64 @@
+/** @file\r
+  Define the LockBox GUID for list of storage devices need to be initialized in\r
+  S3.\r
+\r
+  Copyright (c) 2019, 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\r
+  of the BSD License which accompanies this distribution.  The\r
+  full text of the license may be found at\r
+  http://opensource.org/licenses/bsd-license.php\r
+\r
+  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+\r
+**/\r
+\r
+#ifndef __S3_STORAGE_DEVICE_INIT_LIST_H__\r
+#define __S3_STORAGE_DEVICE_INIT_LIST_H__\r
+\r
+#define S3_STORAGE_DEVICE_INIT_LIST \\r
+  { \\r
+    0x310e9b8c, 0xcf90, 0x421e, { 0x8e, 0x9b, 0x9e, 0xef, 0xb6, 0x17, 0xc8, 0xef } \\r
+  }\r
+\r
+//\r
+// The LockBox will store a DevicePath structure that contains one or more\r
+// DevicePath instances. Each instance denotes a storage device that needs to\r
+// get initialized during the S3 resume.\r
+//\r
+// For example, if there is only one storage device stored in the list, the\r
+// content of this LockBox will be:\r
+//\r
+// +-------------------------------------------------------+\r
+// |                 DevPath Instance #1                   |\r
+// | (Terminated by an End of Hardware Device Path node    |\r
+// |  with an End Entire Device Path sub-type)             |\r
+// +-------------------------------------------------------+\r
+//\r
+// If there are n (n > 1) storage devices in the list, the content of this\r
+// LockBox will be:\r
+//\r
+// +-------------------------------------------------------+\r
+// |                 DevPath Instance #1                   |\r
+// | (Terminated by an End of Hardware Device Path node    |\r
+// |  with an End This Instance of a Device Path sub-type) |\r
+// +-------------------------------------------------------+\r
+// |                 DevPath Instance #2                   |\r
+// | (Terminated by an End of Hardware Device Path node    |\r
+// |  with an End This Instance of a Device Path sub-type) |\r
+// +-------------------------------------------------------+\r
+// |                        ...                            |\r
+// +-------------------------------------------------------+\r
+// |                 DevPath Instance #n                   |\r
+// | (Terminated by an End of Hardware Device Path node    |\r
+// |  with an End Entire Device Path sub-type)             |\r
+// +-------------------------------------------------------+\r
+//\r
+// The attribute of the LockBox should be set to\r
+// 'LOCK_BOX_ATTRIBUTE_RESTORE_IN_S3_ONLY'.\r
+//\r
+extern EFI_GUID  gS3StorageDeviceInitListGuid;\r
+\r
+#endif  // __S3_STORAGE_DEVICE_INIT_LIST_H__\r