]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - include/acpi/apei.h
ACPI / APEI: Remove arch_apei_flush_tlb_one()
[mirror_ubuntu-bionic-kernel.git] / include / acpi / apei.h
CommitLineData
9dc96664
HY
1/*
2 * apei.h - ACPI Platform Error Interface
3 */
4
5#ifndef ACPI_APEI_H
6#define ACPI_APEI_H
7
a08f82d0
HY
8#include <linux/acpi.h>
9#include <linux/cper.h>
10#include <asm/ioctls.h>
11
12#define APEI_ERST_INVALID_RECORD_ID 0xffffffffffffffffULL
13
14#define APEI_ERST_CLEAR_RECORD _IOW('E', 1, u64)
15#define APEI_ERST_GET_RECORD_COUNT _IOR('E', 2, u32)
16
17#ifdef __KERNEL__
18
e931d0da
PA
19enum hest_status {
20 HEST_ENABLED,
21 HEST_DISABLED,
22 HEST_NOT_FOUND,
23};
24
25extern int hest_disable;
a08f82d0 26extern int erst_disable;
a7e09d45 27#ifdef CONFIG_ACPI_APEI_GHES
90ab5ee9 28extern bool ghes_disable;
a7e09d45
LB
29#else
30#define ghes_disable 1
31#endif
9dc96664 32
415e12b2
RW
33#ifdef CONFIG_ACPI_APEI
34void __init acpi_hest_init(void);
35#else
36static inline void acpi_hest_init(void) { return; }
37#endif
38
9dc96664
HY
39typedef int (*apei_hest_func_t)(struct acpi_hest_header *hest_hdr, void *data);
40int apei_hest_parse(apei_hest_func_t func, void *data);
41
a08f82d0
HY
42int erst_write(const struct cper_record_header *record);
43ssize_t erst_get_record_count(void);
885b976f
HY
44int erst_get_record_id_begin(int *pos);
45int erst_get_record_id_next(int *pos, u64 *record_id);
46void erst_get_record_id_end(void);
a08f82d0
HY
47ssize_t erst_read(u64 record_id, struct cper_record_header *record,
48 size_t buflen);
a08f82d0
HY
49int erst_clear(u64 record_id);
50
9dae3d0d
TN
51int arch_apei_enable_cmcff(struct acpi_hest_header *hest_hdr, void *data);
52void arch_apei_report_mem_error(int sev, struct cper_sec_mem_err *mem_err);
53
a08f82d0 54#endif
9dc96664 55#endif