coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
amd64_save_state.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef __AMD64_SAVE_STATE_H__
4 #define __AMD64_SAVE_STATE_H__
5 #endif
6 
7 #include <types.h>
8 #include <cpu/x86/smm.h>
9 
10 /* AMD64 x86 SMM State-Save Area
11  * starts @ 0x7e00
12  */
13 #define SMM_AMD64_ARCH_OFFSET 0x7e00
14 #define SMM_AMD64_SAVE_STATE_OFFSET \
15  SMM_SAVE_STATE_BEGIN(SMM_AMD64_ARCH_OFFSET)
16 typedef struct {
21 
26 
31 
36 
41 
46 
47  u8 reserved0[4];
49  u8 reserved1[2];
51 
56 
57  u8 reserved2[4];
59  u8 reserved3[2];
61 
66 
73 
76 
77  u8 reserved5[6];
78 
80 
81  u8 reserved6[36];
82 
85 
86  u8 reserved7[68];
87 
93 
104 
113 } __packed amd64_smm_state_save_area_t;
uint64_t u64
Definition: stdint.h:54
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
u64 io_restart_rsi
u64 io_restart_rip
u32 smm_io_trap_offset
u32 local_smi_status
u16 ldtr_attributes
u64 io_restart_rcx
u64 io_restart_rdi