xref: /openbmc/qemu/hw/i386/fw_cfg.h (revision ad1a706f)
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/nvram/fw_cfg.h"
14 
15 #define FW_CFG_IO_BASE     0x510
16 
17 #define FW_CFG_ACPI_TABLES      (FW_CFG_ARCH_LOCAL + 0)
18 #define FW_CFG_SMBIOS_ENTRIES   (FW_CFG_ARCH_LOCAL + 1)
19 #define FW_CFG_IRQ0_OVERRIDE    (FW_CFG_ARCH_LOCAL + 2)
20 #define FW_CFG_E820_TABLE       (FW_CFG_ARCH_LOCAL + 3)
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(MachineState *ms, FWCfgState *fw_cfg);
27 void fw_cfg_build_feature_control(MachineState *ms, FWCfgState *fw_cfg);
28 void fw_cfg_add_acpi_dsdt(Aml *scope, FWCfgState *fw_cfg);
29 
30 #endif
31