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 _LINUX_FW_CFG_H 8 #define _LINUX_FW_CFG_H 9 #include <linux/types.h> 10 #define FW_CFG_ACPI_DEVICE_ID "QEMU0002" 11 #define FW_CFG_SIGNATURE 0x00 12 #define FW_CFG_ID 0x01 13 #define FW_CFG_UUID 0x02 14 #define FW_CFG_RAM_SIZE 0x03 15 #define FW_CFG_NOGRAPHIC 0x04 16 #define FW_CFG_NB_CPUS 0x05 17 #define FW_CFG_MACHINE_ID 0x06 18 #define FW_CFG_KERNEL_ADDR 0x07 19 #define FW_CFG_KERNEL_SIZE 0x08 20 #define FW_CFG_KERNEL_CMDLINE 0x09 21 #define FW_CFG_INITRD_ADDR 0x0a 22 #define FW_CFG_INITRD_SIZE 0x0b 23 #define FW_CFG_BOOT_DEVICE 0x0c 24 #define FW_CFG_NUMA 0x0d 25 #define FW_CFG_BOOT_MENU 0x0e 26 #define FW_CFG_MAX_CPUS 0x0f 27 #define FW_CFG_KERNEL_ENTRY 0x10 28 #define FW_CFG_KERNEL_DATA 0x11 29 #define FW_CFG_INITRD_DATA 0x12 30 #define FW_CFG_CMDLINE_ADDR 0x13 31 #define FW_CFG_CMDLINE_SIZE 0x14 32 #define FW_CFG_CMDLINE_DATA 0x15 33 #define FW_CFG_SETUP_ADDR 0x16 34 #define FW_CFG_SETUP_SIZE 0x17 35 #define FW_CFG_SETUP_DATA 0x18 36 #define FW_CFG_FILE_DIR 0x19 37 #define FW_CFG_FILE_FIRST 0x20 38 #define FW_CFG_FILE_SLOTS_MIN 0x10 39 #define FW_CFG_WRITE_CHANNEL 0x4000 40 #define FW_CFG_ARCH_LOCAL 0x8000 41 #define FW_CFG_ENTRY_MASK (~(FW_CFG_WRITE_CHANNEL | FW_CFG_ARCH_LOCAL)) 42 #define FW_CFG_INVALID 0xffff 43 #define FW_CFG_CTL_SIZE 0x02 44 #define FW_CFG_MAX_FILE_PATH 56 45 #define FW_CFG_SIG_SIZE 4 46 #define FW_CFG_VERSION 0x01 47 #define FW_CFG_VERSION_DMA 0x02 48 struct fw_cfg_file { 49 __be32 size; 50 __be16 select; 51 __u16 reserved; 52 char name[FW_CFG_MAX_FILE_PATH]; 53 }; 54 #define FW_CFG_DMA_CTL_ERROR 0x01 55 #define FW_CFG_DMA_CTL_READ 0x02 56 #define FW_CFG_DMA_CTL_SKIP 0x04 57 #define FW_CFG_DMA_CTL_SELECT 0x08 58 #define FW_CFG_DMA_CTL_WRITE 0x10 59 #define FW_CFG_DMA_SIGNATURE 0x51454d5520434647ULL 60 struct fw_cfg_dma_access { 61 __be32 control; 62 __be32 length; 63 __be64 address; 64 }; 65 #define FW_CFG_VMCOREINFO_FILENAME "etc/vmcoreinfo" 66 #define FW_CFG_VMCOREINFO_FORMAT_NONE 0x0 67 #define FW_CFG_VMCOREINFO_FORMAT_ELF 0x1 68 struct fw_cfg_vmcoreinfo { 69 __le16 host_format; 70 __le16 guest_format; 71 __le32 size; 72 __le64 paddr; 73 }; 74 #endif 75