1 /** 2 * @file lv_uefi_std_wrapper.h 3 * 4 */ 5 6 #ifndef LV_UEFI_STD_WRAPPER_H 7 #define LV_UEFI_STD_WRAPPER_H 8 9 #if LV_USE_UEFI 10 11 #include LV_USE_UEFI_INCLUDE 12 13 /************************************* 14 * TYPES 15 *************************************/ 16 typedef UINT8 uint8_t; 17 typedef UINT16 uint16_t; 18 typedef UINT32 uint32_t; 19 typedef UINT64 uint64_t; 20 typedef INT8 int8_t; 21 typedef INT16 int16_t; 22 typedef INT32 int32_t; 23 typedef INT64 int64_t; 24 25 typedef uint32_t uint_fast32_t; 26 typedef UINTN uintptr_t; 27 typedef UINTN size_t; 28 typedef INTN intptr_t; 29 typedef INTN intmax_t; 30 typedef INTN ptrdiff_t; 31 32 typedef UINT8 bool; 33 34 /************************************* 35 * DEFINES 36 *************************************/ 37 #define false 0 38 #define true 1 39 40 #define PRId8 "d" 41 #define PRId16 "d" 42 #define PRId32 "d" 43 #define PRId64 "d" 44 45 #define PRIu8 "u" 46 #define PRIu16 "u" 47 #define PRIu32 "u" 48 #define PRIu64 "u" 49 50 #define PRIx8 "x" 51 #define PRIx16 "x" 52 #define PRIx32 "x" 53 #define PRIx64 "x" 54 55 #define PRIX8 "X" 56 #define PRIX16 "X" 57 #define PRIX32 "X" 58 #define PRIX64 "X" 59 60 /************************************* 61 * LIMITS 62 *************************************/ 63 #ifndef INT8_MAX 64 #define INT8_MAX (0x7F) 65 #endif 66 67 #ifndef UINT8_MAX 68 #define UINT8_MAX (0xFF) 69 #endif 70 71 #ifndef INT16_MAX 72 #define INT16_MAX (0x7FFF) 73 #endif 74 75 #ifndef UINT16_MAX 76 #define UINT16_MAX (0xFFFF) 77 #endif 78 79 #ifndef INT32_MAX 80 #define INT32_MAX (0x7FFFFFFF) 81 #endif 82 83 #ifndef UINT32_MAX 84 #define UINT32_MAX (0xFFFFFFFF) 85 #endif 86 87 #ifndef INT64_MAX 88 #define INT64_MAX (0x7FFFFFFFFFFFFFFFULL) 89 #endif 90 91 #ifndef UINT64_MAX 92 #define UINT64_MAX (0xFFFFFFFFFFFFFFFFULL) 93 #endif 94 95 #ifndef INT_MAX 96 #define INT_MAX (0x7FFFFFFFFFFFFFFFULL) 97 #endif 98 99 #ifndef UINT_MAX 100 #define UINT_MAX (0xFFFFFFFFFFFFFFFFULL) 101 #endif 102 103 /// 104 /// Minimum values for the signed UEFI Data Types 105 /// 106 #ifndef INT8_MIN 107 #define INT8_MIN (( -127) - 1) 108 #endif 109 110 #ifndef INT16_MIN 111 #define INT16_MIN (( -32767) - 1) 112 #endif 113 114 #ifndef INT32_MIN 115 #define INT32_MIN (( -2147483647) - 1) 116 #endif 117 118 #ifndef INT64_MIN 119 #define INT64_MIN (( -9223372036854775807LL) - 1) 120 #endif 121 122 #ifndef SIZE_MAX 123 #define SIZE_MAX (0xFFFFFFFF) 124 #endif 125 126 #ifndef LONG_MAX 127 #define LONG_MAX (0x7FFFFFFF) 128 #endif 129 130 #ifndef ULONG_MAX 131 #define ULONG_MAX (0xFFFFFFFF) 132 #endif 133 134 #ifndef USHRT_MAX 135 #define USHRT_MAX (0xFFFF) 136 #endif 137 138 #ifndef CHAR_BIT 139 #define CHAR_BIT 8 140 #endif 141 142 /************************************* 143 * VA_ARG 144 *************************************/ 145 #if LV_UEFI_EDK2_HEADERS 146 #define va_list VA_LIST 147 #define va_start(Marker, Parameter) VA_START(Marker, Parameter) 148 #define va_arg(Marker, TYPE) VA_ARG(Marker, TYPE) 149 #define va_end(Marker) VA_END(Marker) 150 #define va_copy(Dest, Start) VA_COPY(Dest, Start) 151 #endif 152 153 #endif 154 155 #endif