/** @file\r
Memory profile data structure.\r
\r
- Copyright (c) 2014 - 2015, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2014 - 2016, Intel Corporation. All rights reserved.<BR>\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
which accompanies this distribution. The full text of the license may be found at\r
//\r
// SMRAM profile command\r
//\r
-#define SMRAM_PROFILE_COMMAND_GET_PROFILE_INFO 0x1\r
-#define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA 0x2\r
+#define SMRAM_PROFILE_COMMAND_GET_PROFILE_INFO 0x1\r
+#define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA 0x2\r
//\r
// Below 2 commands are now used by ECP only and only valid before SmmReadyToLock\r
//\r
-#define SMRAM_PROFILE_COMMAND_REGISTER_IMAGE 0x3\r
-#define SMRAM_PROFILE_COMMAND_UNREGISTER_IMAGE 0x4\r
+#define SMRAM_PROFILE_COMMAND_REGISTER_IMAGE 0x3\r
+#define SMRAM_PROFILE_COMMAND_UNREGISTER_IMAGE 0x4\r
+\r
+#define SMRAM_PROFILE_COMMAND_GET_PROFILE_DATA_BY_OFFSET 0x5\r
\r
typedef struct {\r
UINT32 Command;\r
PHYSICAL_ADDRESS ProfileBuffer;\r
} SMRAM_PROFILE_PARAMETER_GET_PROFILE_DATA;\r
\r
+typedef struct {\r
+ SMRAM_PROFILE_PARAMETER_HEADER Header;\r
+ //\r
+ // On input, profile buffer size.\r
+ // On output, actual profile data size copied.\r
+ //\r
+ UINT64 ProfileSize;\r
+ PHYSICAL_ADDRESS ProfileBuffer;\r
+ //\r
+ // On input, profile buffer offset to copy.\r
+ // On output, next time profile buffer offset to copy.\r
+ //\r
+ UINT64 ProfileOffset;\r
+} SMRAM_PROFILE_PARAMETER_GET_PROFILE_DATA_BY_OFFSET;\r
+\r
typedef struct {\r
SMRAM_PROFILE_PARAMETER_HEADER Header;\r
EFI_GUID FileName;\r