1 /* 2 * QEMU fw_cfg helpers (X86 specific) 3 * 4 * Copyright (c) 2003-2004 Fabrice Bellard 5 * 6 * SPDX-License-Identifier: MIT 7 */ 8 9 #ifndef HW_I386_FW_CFG_H 10 #define HW_I386_FW_CFG_H 11 12 #include "hw/boards.h" 13 #include "hw/i386/pc.h" 14 #include "hw/nvram/fw_cfg.h" 15 16 #define FW_CFG_IO_BASE 0x510 17 18 #define FW_CFG_ACPI_TABLES (FW_CFG_ARCH_LOCAL + 0) 19 #define FW_CFG_SMBIOS_ENTRIES (FW_CFG_ARCH_LOCAL + 1) 20 #define FW_CFG_IRQ0_OVERRIDE (FW_CFG_ARCH_LOCAL + 2) 21 #define FW_CFG_HPET (FW_CFG_ARCH_LOCAL + 4) 22 23 FWCfgState *fw_cfg_arch_create(MachineState *ms, 24 uint16_t boot_cpus, 25 uint16_t apic_id_limit); 26 void fw_cfg_build_smbios(PCMachineState *pcms, FWCfgState *fw_cfg, 27 SmbiosEntryPointType ep_type); 28 void fw_cfg_build_feature_control(MachineState *ms, FWCfgState *fw_cfg); 29 void fw_cfg_add_acpi_dsdt(Aml *scope, FWCfgState *fw_cfg); 30 void fw_cfg_add_e820(FWCfgState *fw_cfg); 31 32 #endif 33