coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
hest.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #ifndef _HEST_H_
4 #define _HEST_H_
5 #include <acpi/acpi.h>
6 
7 #define MCE_ERR_POLL_MS_INTERVAL 1000
8 #define HEST_PCIE_RP_AER_DESC_TYPE 6
9 #define HEST_GHES_DESC_TYPE 9
10 #define GHES_MAX_RAW_DATA_LENGTH (((CONFIG_ERROR_LOG_BUFFER_SIZE) >> 1) - 8)
11 #define GHEST_ERROR_STATUS_BLOCK_LENGTH ((CONFIG_ERROR_LOG_BUFFER_SIZE) >> 1)
12 #define GHEST_ASSIST (1 << 2)
13 #define FIRMWARE_FIRST (1 << 0)
14 #define MEM_VALID_BITS 0x66ff
15 #define PCIE_VALID_BITS 0xef
16 #define QWORD_ACCESS 4
17 #define NOTIFY_TYPE_SCI 3
18 
19 /* Generic Error Source Descriptor */
20 typedef struct acpi_ghes_esd {
29 
30 typedef struct ghes_record {
37 
38 unsigned long hest_create(unsigned long current, struct acpi_rsdp *rsdp);
39 
40 #endif
struct ghes_record ghes_record_t
unsigned long hest_create(unsigned long current, struct acpi_rsdp *rsdp)
Definition: hest.c:72
struct acpi_ghes_esd acpi_ghes_esd_t
uint32_t u32
Definition: stdint.h:51
uint16_t u16
Definition: stdint.h:48
uint8_t u8
Definition: stdint.h:45
Definition: x86.c:23
u16 type
Definition: hest.h:21
u16 source_id
Definition: hest.h:22
u32 prealloc_erecords
Definition: hest.h:26
u8 enabled
Definition: hest.h:25
u16 related_src_id
Definition: hest.h:23
u8 flags
Definition: hest.h:24
u32 max_section_per_record
Definition: hest.h:27
Definition: acpi.h:82
acpi_ghes_esd_t esd
Definition: hest.h:31
acpi_hest_hen_t notify
Definition: hest.h:34
u32 max_raw_data_length
Definition: hest.h:32
u32 err_sts_blk_len
Definition: hest.h:35
acpi_addr64_t sts_addr
Definition: hest.h:33