1 /* 2 * This file is auto-generated. Modifications will be lost. 3 * 4 * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5 * for more information. 6 */ 7 #ifndef _UAPI_ASM_X86_SETUP_DATA_H 8 #define _UAPI_ASM_X86_SETUP_DATA_H 9 #define SETUP_NONE 0 10 #define SETUP_E820_EXT 1 11 #define SETUP_DTB 2 12 #define SETUP_PCI 3 13 #define SETUP_EFI 4 14 #define SETUP_APPLE_PROPERTIES 5 15 #define SETUP_JAILHOUSE 6 16 #define SETUP_CC_BLOB 7 17 #define SETUP_IMA 8 18 #define SETUP_RNG_SEED 9 19 #define SETUP_ENUM_MAX SETUP_RNG_SEED 20 #define SETUP_INDIRECT (1 << 31) 21 #define SETUP_TYPE_MAX (SETUP_ENUM_MAX | SETUP_INDIRECT) 22 #ifndef __ASSEMBLY__ 23 #include <linux/types.h> 24 struct setup_data { 25 __u64 next; 26 __u32 type; 27 __u32 len; 28 __u8 data[]; 29 }; 30 struct setup_indirect { 31 __u32 type; 32 __u32 reserved; 33 __u64 len; 34 __u64 addr; 35 }; 36 struct boot_e820_entry { 37 __u64 addr; 38 __u64 size; 39 __u32 type; 40 } __attribute__((packed)); 41 struct jailhouse_setup_data { 42 struct { 43 __u16 version; 44 __u16 compatible_version; 45 } __attribute__((packed)) hdr; 46 struct { 47 __u16 pm_timer_address; 48 __u16 num_cpus; 49 __u64 pci_mmconfig_base; 50 __u32 tsc_khz; 51 __u32 apic_khz; 52 __u8 standard_ioapic; 53 __u8 cpu_ids[255]; 54 } __attribute__((packed)) v1; 55 struct { 56 __u32 flags; 57 } __attribute__((packed)) v2; 58 } __attribute__((packed)); 59 struct ima_setup_data { 60 __u64 addr; 61 __u64 size; 62 } __attribute__((packed)); 63 #endif 64 #endif 65