xref: /qemu/include/hw/i386/x86.h (revision 549e984e67d8b3ea868be4ba935cecb9c1e753dc)
1*549e984eSSergio Lopez /*
2*549e984eSSergio Lopez  * Copyright (c) 2019 Red Hat, Inc.
3*549e984eSSergio Lopez  *
4*549e984eSSergio Lopez  * This program is free software; you can redistribute it and/or modify it
5*549e984eSSergio Lopez  * under the terms and conditions of the GNU General Public License,
6*549e984eSSergio Lopez  * version 2 or later, as published by the Free Software Foundation.
7*549e984eSSergio Lopez  *
8*549e984eSSergio Lopez  * This program is distributed in the hope it will be useful, but WITHOUT
9*549e984eSSergio Lopez  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10*549e984eSSergio Lopez  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
11*549e984eSSergio Lopez  * more details.
12*549e984eSSergio Lopez  *
13*549e984eSSergio Lopez  * You should have received a copy of the GNU General Public License along with
14*549e984eSSergio Lopez  * this program.  If not, see <http://www.gnu.org/licenses/>.
15*549e984eSSergio Lopez  */
16*549e984eSSergio Lopez 
17*549e984eSSergio Lopez #ifndef HW_I386_X86_H
18*549e984eSSergio Lopez #define HW_I386_X86_H
19*549e984eSSergio Lopez 
20*549e984eSSergio Lopez #include "hw/boards.h"
21*549e984eSSergio Lopez 
22*549e984eSSergio Lopez uint32_t x86_cpu_apic_id_from_index(PCMachineState *pcms,
23*549e984eSSergio Lopez                                     unsigned int cpu_index);
24*549e984eSSergio Lopez void x86_cpu_new(PCMachineState *pcms, int64_t apic_id, Error **errp);
25*549e984eSSergio Lopez void x86_cpus_init(PCMachineState *pcms);
26*549e984eSSergio Lopez CpuInstanceProperties x86_cpu_index_to_props(MachineState *ms,
27*549e984eSSergio Lopez                                              unsigned cpu_index);
28*549e984eSSergio Lopez int64_t x86_get_default_cpu_node_id(const MachineState *ms, int idx);
29*549e984eSSergio Lopez const CPUArchIdList *x86_possible_cpu_arch_ids(MachineState *ms);
30*549e984eSSergio Lopez 
31*549e984eSSergio Lopez void x86_bios_rom_init(MemoryRegion *rom_memory, bool isapc_ram_fw);
32*549e984eSSergio Lopez 
33*549e984eSSergio Lopez void x86_load_linux(PCMachineState *x86ms, FWCfgState *fw_cfg);
34*549e984eSSergio Lopez 
35*549e984eSSergio Lopez #endif
36