]>
Commit | Line | Data |
---|---|---|
1 | /** @file\r | |
2 | STM Status Codes\r | |
3 | \r | |
4 | Copyright (c) 2015 - 2019, Intel Corporation. All rights reserved.<BR>\r | |
5 | SPDX-License-Identifier: BSD-2-Clause-Patent\r | |
6 | \r | |
7 | @par Specification Reference:\r | |
8 | SMI Transfer Monitor (STM) User Guide Revision 1.00\r | |
9 | \r | |
10 | **/\r | |
11 | \r | |
12 | #ifndef _INTEL_STM_STATUS_CODE_H_\r | |
13 | #define _INTEL_STM_STATUS_CODE_H_\r | |
14 | \r | |
15 | /**\r | |
16 | STM Status Codes\r | |
17 | **/\r | |
18 | typedef UINT32 STM_STATUS;\r | |
19 | \r | |
20 | /**\r | |
21 | Success code have BIT31 clear.\r | |
22 | All error codes have BIT31 set.\r | |
23 | STM errors have BIT16 set.\r | |
24 | SMM errors have BIT17 set\r | |
25 | Errors that apply to both STM and SMM have bits BIT15, BT16, and BIT17 set.\r | |
26 | STM TXT.ERRORCODE codes have BIT30 set.\r | |
27 | @{\r | |
28 | **/\r | |
29 | #define STM_SUCCESS 0x00000000\r | |
30 | #define SMM_SUCCESS 0x00000000\r | |
31 | #define ERROR_STM_SECURITY_VIOLATION (BIT31 | BIT16 | 0x0001)\r | |
32 | #define ERROR_STM_CACHE_TYPE_NOT_SUPPORTED (BIT31 | BIT16 | 0x0002)\r | |
33 | #define ERROR_STM_PAGE_NOT_FOUND (BIT31 | BIT16 | 0x0003)\r | |
34 | #define ERROR_STM_BAD_CR3 (BIT31 | BIT16 | 0x0004)\r | |
35 | #define ERROR_STM_PHYSICAL_OVER_4G (BIT31 | BIT16 | 0x0005)\r | |
36 | #define ERROR_STM_VIRTUAL_SPACE_TOO_SMALL (BIT31 | BIT16 | 0x0006)\r | |
37 | #define ERROR_STM_UNPROTECTABLE_RESOURCE (BIT31 | BIT16 | 0x0007)\r | |
38 | #define ERROR_STM_ALREADY_STARTED (BIT31 | BIT16 | 0x0008)\r | |
39 | #define ERROR_STM_WITHOUT_SMX_UNSUPPORTED (BIT31 | BIT16 | 0x0009)\r | |
40 | #define ERROR_STM_STOPPED (BIT31 | BIT16 | 0x000A)\r | |
41 | #define ERROR_STM_BUFFER_TOO_SMALL (BIT31 | BIT16 | 0x000B)\r | |
42 | #define ERROR_STM_INVALID_VMCS_DATABASE (BIT31 | BIT16 | 0x000C)\r | |
43 | #define ERROR_STM_MALFORMED_RESOURCE_LIST (BIT31 | BIT16 | 0x000D)\r | |
44 | #define ERROR_STM_INVALID_PAGECOUNT (BIT31 | BIT16 | 0x000E)\r | |
45 | #define ERROR_STM_LOG_ALLOCATED (BIT31 | BIT16 | 0x000F)\r | |
46 | #define ERROR_STM_LOG_NOT_ALLOCATED (BIT31 | BIT16 | 0x0010)\r | |
47 | #define ERROR_STM_LOG_NOT_STOPPED (BIT31 | BIT16 | 0x0011)\r | |
48 | #define ERROR_STM_LOG_NOT_STARTED (BIT31 | BIT16 | 0x0012)\r | |
49 | #define ERROR_STM_RESERVED_BIT_SET (BIT31 | BIT16 | 0x0013)\r | |
50 | #define ERROR_STM_NO_EVENTS_ENABLED (BIT31 | BIT16 | 0x0014)\r | |
51 | #define ERROR_STM_OUT_OF_RESOURCES (BIT31 | BIT16 | 0x0015)\r | |
52 | #define ERROR_STM_FUNCTION_NOT_SUPPORTED (BIT31 | BIT16 | 0x0016)\r | |
53 | #define ERROR_STM_UNPROTECTABLE (BIT31 | BIT16 | 0x0017)\r | |
54 | #define ERROR_STM_UNSUPPORTED_MSR_BIT (BIT31 | BIT16 | 0x0018)\r | |
55 | #define ERROR_STM_UNSPECIFIED (BIT31 | BIT16 | 0xFFFF)\r | |
56 | #define ERROR_SMM_BAD_BUFFER (BIT31 | BIT17 | 0x0001)\r | |
57 | #define ERROR_SMM_INVALID_RSC (BIT31 | BIT17 | 0x0004)\r | |
58 | #define ERROR_SMM_INVALID_BUFFER_SIZE (BIT31 | BIT17 | 0x0005)\r | |
59 | #define ERROR_SMM_BUFFER_TOO_SHORT (BIT31 | BIT17 | 0x0006)\r | |
60 | #define ERROR_SMM_INVALID_LIST (BIT31 | BIT17 | 0x0007)\r | |
61 | #define ERROR_SMM_OUT_OF_MEMORY (BIT31 | BIT17 | 0x0008)\r | |
62 | #define ERROR_SMM_AFTER_INIT (BIT31 | BIT17 | 0x0009)\r | |
63 | #define ERROR_SMM_UNSPECIFIED (BIT31 | BIT17 | 0xFFFF)\r | |
64 | #define ERROR_INVALID_API (BIT31 | BIT17 | BIT16 | BIT15 | 0x0001)\r | |
65 | #define ERROR_INVALID_PARAMETER (BIT31 | BIT17 | BIT16 | BIT15 | 0x0002)\r | |
66 | #define STM_CRASH_PROTECTION_EXCEPTION (BIT31 | BIT30 | 0xF001)\r | |
67 | #define STM_CRASH_PROTECTION_EXCEPTION_FAILURE (BIT31 | BIT30 | 0xF002)\r | |
68 | #define STM_CRASH_DOMAIN_DEGRADATION_FAILURE (BIT31 | BIT30 | 0xF003)\r | |
69 | #define STM_CRASH_BIOS_PANIC (BIT31 | BIT30 | 0xE000)\r | |
70 | /// @}\r | |
71 | \r | |
72 | #endif\r |