1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _UAPI_ASM_X86_SETUP_DATA_H
3 #define _UAPI_ASM_X86_SETUP_DATA_H
5 /* setup_data/setup_indirect types */
7 #define SETUP_E820_EXT 1
11 #define SETUP_APPLE_PROPERTIES 5
12 #define SETUP_JAILHOUSE 6
13 #define SETUP_CC_BLOB 7
15 #define SETUP_RNG_SEED 9
16 #define SETUP_ENUM_MAX SETUP_RNG_SEED
18 #define SETUP_INDIRECT (1<<31)
19 #define SETUP_TYPE_MAX (SETUP_ENUM_MAX | SETUP_INDIRECT)
23 #include <linux/types.h>
25 /* extensible setup data list node */
33 /* extensible setup indirect data node */
34 struct setup_indirect
{
36 __u32 reserved
; /* Reserved, must be set to zero. */
42 * The E820 memory region entry of the boot protocol ABI:
44 struct boot_e820_entry
{
48 } __attribute__((packed
));
51 * The boot loader is passing platform information via this Jailhouse-specific
52 * setup data structure.
54 struct jailhouse_setup_data
{
57 __u16 compatible_version
;
58 } __attribute__((packed
)) hdr
;
60 __u16 pm_timer_address
;
62 __u64 pci_mmconfig_base
;
67 } __attribute__((packed
)) v1
;
70 } __attribute__((packed
)) v2
;
71 } __attribute__((packed
));
74 * IMA buffer setup data information from the previous kernel during kexec
76 struct ima_setup_data
{
79 } __attribute__((packed
));
81 #endif /* __ASSEMBLY__ */
83 #endif /* _UAPI_ASM_X86_SETUP_DATA_H */