Lawrence Tang | 1b0b00e | 2022-07-05 10:33:10 +0100 | [diff] [blame] | 1 | #ifndef CPER_UTILS_H |
| 2 | #define CPER_UTILS_H |
| 3 | |
| 4 | #define GUID_STRING_LENGTH 30 |
| 5 | #define TIMESTAMP_LENGTH 24 |
| 6 | |
Lawrence Tang | a0865e3 | 2022-07-06 11:59:52 +0100 | [diff] [blame] | 7 | json_object* cper_generic_error_status_to_ir(EFI_GENERIC_ERROR_STATUS* error_status); |
Lawrence Tang | 7f21db6 | 2022-07-06 11:09:39 +0100 | [diff] [blame] | 8 | json_object* uniform_struct_to_ir(UINT32* start, int len, const char* names[]); |
| 9 | json_object* uniform_struct64_to_ir(UINT64* start, int len, const char* names[]); |
Lawrence Tang | 3c43f74 | 2022-07-05 11:37:17 +0100 | [diff] [blame] | 10 | json_object* integer_to_readable_pair(int value, int len, int keys[], const char* values[], const char* default_value); |
Lawrence Tang | 7f21db6 | 2022-07-06 11:09:39 +0100 | [diff] [blame] | 11 | json_object* integer_to_readable_pair_with_desc(int value, int len, int keys[], const char* values[], const char* descriptions[], const char* default_value); |
Lawrence Tang | 3d0e4f2 | 2022-07-05 17:17:41 +0100 | [diff] [blame] | 12 | json_object* bitfield_to_ir(UINT64 bitfield, int num_fields, const char* names[]); |
Lawrence Tang | e18aaee | 2022-07-07 09:01:30 +0100 | [diff] [blame] | 13 | json_object* uint64_array_to_ir_array(UINT64* array, int len); |
Lawrence Tang | 1b0b00e | 2022-07-05 10:33:10 +0100 | [diff] [blame] | 14 | json_object* revision_to_ir(UINT16 revision); |
| 15 | const char* severity_to_string(UINT8 severity); |
| 16 | void guid_to_string(char* out, EFI_GUID* guid); |
| 17 | int guid_equal(EFI_GUID* a, EFI_GUID* b); |
Lawrence Tang | 4dbe3d7 | 2022-07-06 13:51:01 +0100 | [diff] [blame] | 18 | int bcd_to_int(UINT8 bcd); |
Lawrence Tang | 1b0b00e | 2022-07-05 10:33:10 +0100 | [diff] [blame] | 19 | |
| 20 | //The available severity types for CPER. |
| 21 | extern const char* CPER_SEVERITY_TYPES[4]; |
| 22 | |
| 23 | #endif |