--- /dev/null
+/** @file\r
+Guid & data structure for EFI_RT _PROPERTIES_TABLE, designed to be published by a\r
+platform if it no longer supports all EFI runtime services once ExitBootServices()\r
+has been called by the OS. Introduced in UEFI 2.8a.\r
+\r
+\r
+Copyright (c) 2020, American Megatrends International LLC. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
+\r
+**/\r
+\r
+#ifndef __RT_PROPERTIES_TABLE_GUID_H__\r
+#define __RT_PROPERTIES_TABLE_GUID_H__\r
+\r
+//\r
+// Table, defined here, should be published by a platform if it no longer supports all EFI runtime\r
+// services once ExitBootServices() has been called by the OS. Note that this is merely a hint\r
+// to the OS, which it is free to ignore, and so the platform is still required to provide callable\r
+// implementations of unsupported runtime services that simply return EFI_UNSUPPORTED.\r
+//\r
+#define EFI_RT_PROPERTIES_TABLE_GUID \\r
+ { 0xeb66918a, 0x7eef, 0x402a, \\r
+ { 0x84, 0x2e, 0x93, 0x1d, 0x21, 0xc3, 0x8a, 0xe9 }}\r
+\r
+\r
+\r
+\r
+#pragma pack(1)\r
+\r
+typedef struct {\r
+ ///\r
+ /// Version of the structure, must be 0x1.\r
+ ///\r
+ UINT16 Version;\r
+\r
+ ///\r
+ /// Size in bytes of the entire EFI_RT_PROPERTIES_TABLE, must be 8.\r
+ ///\r
+ UINT16 Length;\r
+\r
+ ///\r
+ /// Bitmask of which calls are or are not supported, where a bit set to 1 indicates\r
+ /// that the call is supported, and 0 indicates that it is not.\r
+ ///\r
+ UINT32 RuntimeServicesSupported;\r
+} EFI_RT_PROPERTIES_TABLE;\r
+\r
+#pragma pack()\r
+\r
+#define EFI_RT_PROPERTIES_TABLE_VERSION 0x1\r
+\r
+#define EFI_RT_SUPPORTED_GET_TIME 0x0001\r
+#define EFI_RT_SUPPORTED_SET_TIME 0x0002\r
+#define EFI_RT_SUPPORTED_GET_WAKEUP_TIME 0x0004\r
+#define EFI_RT_SUPPORTED_SET_WAKEUP_TIME 0x0008\r
+#define EFI_RT_SUPPORTED_GET_VARIABLE 0x0010\r
+#define EFI_RT_SUPPORTED_GET_NEXT_VARIABLE_NAME 0x0020\r
+#define EFI_RT_SUPPORTED_SET_VARIABLE 0x0040\r
+#define EFI_RT_SUPPORTED_SET_VIRTUAL_ADDRESS_MAP 0x0080\r
+#define EFI_RT_SUPPORTED_CONVERT_POINTER 0x0100\r
+#define EFI_RT_SUPPORTED_GET_NEXT_HIGH_MONOTONIC_COUNT 0x0200\r
+#define EFI_RT_SUPPORTED_RESET_SYSTEM 0x0400\r
+#define EFI_RT_SUPPORTED_UPDATE_CAPSULE 0x0800\r
+#define EFI_RT_SUPPORTED_QUERY_CAPSULE_CAPABILITIES 0x1000\r
+#define EFI_RT_SUPPORTED_QUERY_VARIABLE_INFO 0x2000\r
+\r
+extern EFI_GUID gEfiRtPropertiesTableGuid;\r
+\r
+#endif\r
## Include/Guid/HiiPlatformSetupFormset.h\r
gEfiHiiResetStyleFormsetGuid = { 0x790217bd, 0xbecf, 0x485b, { 0x91, 0x70, 0x5f, 0xf7, 0x11, 0x31, 0x8b, 0x27 }}\r
\r
+ # GUIDs defined in UEFI2.8a\r
+ #\r
+ ## Include/Guid/RtPropertiesTable.h\r
+ gEfiRtPropertiesTableGuid = { 0xeb66918a, 0x7eef, 0x402a, { 0x84, 0x2e, 0x93, 0x1d, 0x21, 0xc3, 0x8a, 0xe9 }}\r
+\r
#\r
# GUID defined in PI1.0\r
#\r