]> git.proxmox.com Git - qemu.git/blame - hw/boards.h
machine struct - specify max_cpus at the per machine level (Jes Sorensen)
[qemu.git] / hw / boards.h
CommitLineData
87ecb68b
PB
1/* Declarations for use by board files for creating devices. */
2
3#ifndef HW_BOARDS_H
4#define HW_BOARDS_H
5
00f82b8a 6typedef void QEMUMachineInitFunc(ram_addr_t ram_size, int vga_ram_size,
b881c2c6
BS
7 const char *boot_device, DisplayState *ds,
8 const char *kernel_filename,
9 const char *kernel_cmdline,
10 const char *initrd_filename,
11 const char *cpu_model);
87ecb68b
PB
12
13typedef struct QEMUMachine {
14 const char *name;
15 const char *desc;
16 QEMUMachineInitFunc *init;
7fb4fdcf 17#define RAMSIZE_FIXED (1 << 0)
4fc5d071 18 ram_addr_t ram_require;
f88e4b91 19 int nodisk_ok;
c9b1ae2c 20 int use_scsi;
b2097003 21 int max_cpus;
87ecb68b
PB
22 struct QEMUMachine *next;
23} QEMUMachine;
24
25int qemu_register_machine(QEMUMachine *m);
8dd3dca3 26void register_machines(void);
87ecb68b
PB
27
28/* Axis ETRAX. */
29extern QEMUMachine bareetraxfs_machine;
30
31/* pc.c */
32extern QEMUMachine pc_machine;
33extern QEMUMachine isapc_machine;
34
35/* ppc.c */
36extern QEMUMachine prep_machine;
37extern QEMUMachine core99_machine;
38extern QEMUMachine heathrow_machine;
39extern QEMUMachine ref405ep_machine;
40extern QEMUMachine taihu_machine;
41
42/* mips_r4k.c */
43extern QEMUMachine mips_machine;
44
4ce7ff6e
AJ
45/* mips_jazz.c */
46extern QEMUMachine mips_magnum_machine;
c171148c 47extern QEMUMachine mips_pica61_machine;
4ce7ff6e 48
87ecb68b
PB
49/* mips_malta.c */
50extern QEMUMachine mips_malta_machine;
51
87ecb68b
PB
52/* mips_mipssim.c */
53extern QEMUMachine mips_mipssim_machine;
54
55/* shix.c */
56extern QEMUMachine shix_machine;
57
58/* r2d.c */
59extern QEMUMachine r2d_machine;
60
61/* sun4m.c */
ae40972f 62extern QEMUMachine ss5_machine, ss10_machine, ss600mp_machine, ss20_machine;
a526a31c
BS
63extern QEMUMachine voyager_machine, ss_lx_machine, ss4_machine, scls_machine;
64extern QEMUMachine sbook_machine;
ee76f82e 65extern QEMUMachine ss2_machine;
7d85892b 66extern QEMUMachine ss1000_machine, ss2000_machine;
87ecb68b
PB
67
68/* sun4u.c */
69extern QEMUMachine sun4u_machine;
c7ba218d 70extern QEMUMachine sun4v_machine;
e87231d4 71extern QEMUMachine niagara_machine;
87ecb68b
PB
72
73/* integratorcp.c */
74extern QEMUMachine integratorcp_machine;
75
76/* versatilepb.c */
77extern QEMUMachine versatilepb_machine;
78extern QEMUMachine versatileab_machine;
79
80/* realview.c */
81extern QEMUMachine realview_machine;
82
83/* spitz.c */
84extern QEMUMachine akitapda_machine;
85extern QEMUMachine spitzpda_machine;
86extern QEMUMachine borzoipda_machine;
87extern QEMUMachine terrierpda_machine;
88
89/* palm.c */
90extern QEMUMachine palmte_machine;
91
7e7c5e4c
AZ
92/* nseries.c */
93extern QEMUMachine n800_machine;
e927bb00 94extern QEMUMachine n810_machine;
7e7c5e4c 95
87ecb68b
PB
96/* gumstix.c */
97extern QEMUMachine connex_machine;
3e3f6754 98extern QEMUMachine verdex_machine;
87ecb68b
PB
99
100/* stellaris.c */
101extern QEMUMachine lm3s811evb_machine;
102extern QEMUMachine lm3s6965evb_machine;
103
104/* an5206.c */
105extern QEMUMachine an5206_machine;
106
107/* mcf5208.c */
108extern QEMUMachine mcf5208evb_machine;
109
110/* dummy_m68k.c */
111extern QEMUMachine dummy_m68k_machine;
112
ef056e43
AZ
113/* mainstone.c */
114extern QEMUMachine mainstone2_machine;
115
24859b68
AZ
116/* musicpal.c */
117extern QEMUMachine musicpal_machine;
118
89cdb6af
AZ
119/* tosa.c */
120extern QEMUMachine tosapda_machine;
121
87ecb68b 122#endif