soc/intel/xeon_sp/util: Enhance lock_pam0123
[coreboot2.git] / util / cbfstool / ProcessorBind.h
blobaa7f40795df953316de005cd667b94d8b7813d60
1 /* SPDX-License-Identifier: BSD-2-Clause */
2 /** @file
3 * Processor or Compiler specific defines and types for IA-32 architecture.
4 */
6 #ifndef __PROCESSOR_BIND_H__
7 #define __PROCESSOR_BIND_H__
11 * This to mimic a processor binding for EDK. This is just to provide the
12 * processor types.
14 #include <inttypes.h>
16 ///
17 /// Define the processor type so other code can make processor based choices.
18 ///
19 #define MDE_CPU_IA32
21 ///
22 /// 8-byte unsigned value.
23 ///
24 typedef uint64_t UINT64;
25 ///
26 /// 8-byte signed value.
27 ///
28 typedef int64_t INT64;
29 ///
30 /// 4-byte unsigned value.
31 ///
32 typedef uint32_t UINT32;
33 ///
34 /// 4-byte signed value.
35 ///
36 typedef int32_t INT32;
37 ///
38 /// 2-byte unsigned value.
39 ///
40 typedef uint16_t UINT16;
41 ///
42 /// 2-byte Character. Unless otherwise specified all strings are stored in the
43 /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.
44 ///
45 typedef uint16_t CHAR16;
46 ///
47 /// 2-byte signed value.
48 ///
49 typedef int16_t INT16;
50 ///
51 /// Logical Boolean. 1-byte value containing 0 for FALSE or a 1 for TRUE. Other
52 /// values are undefined.
53 ///
54 typedef unsigned char BOOLEAN;
55 ///
56 /// 1-byte unsigned value.
57 ///
58 typedef unsigned char UINT8;
59 ///
60 /// 1-byte Character
61 ///
62 typedef char CHAR8;
63 ///
64 /// 1-byte signed value
65 ///
66 typedef signed char INT8;
68 ///
69 /// Unsigned value of native width. (4 bytes on supported 32-bit processor instructions;
70 /// 8 bytes on supported 64-bit processor instructions.)
71 ///
72 typedef uintptr_t UINTN;
73 ///
74 /// Signed value of native width. (4 bytes on supported 32-bit processor instructions;
75 /// 8 bytes on supported 64-bit processor instructions.)
76 ///
77 typedef intptr_t INTN;
80 // Processor specific defines
83 ///
84 /// A value of native width with the highest bit set.
85 // Not needed for non-runtime, but it shouldb
86 ///
87 //#define MAX_BIT 0x80000000
89 // No API requirements as this is not for runtime.
90 #define EFIAPI
92 #endif