blob: 659c5590c56045b82adbbfdc3f404570f5a24b38 [file] [log] [blame]
pbrook87ecb682007-11-17 17:14:51 +00001/* Declarations for use by board files for creating devices. */
2
3#ifndef HW_BOARDS_H
4#define HW_BOARDS_H
5
aurel3200f82b82008-04-27 21:12:55 +00006typedef void QEMUMachineInitFunc(ram_addr_t ram_size, int vga_ram_size,
blueswir1b881c2c2007-11-18 08:46:58 +00007 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);
pbrook87ecb682007-11-17 17:14:51 +000012
13typedef struct QEMUMachine {
14 const char *name;
15 const char *desc;
16 QEMUMachineInitFunc *init;
balrog7fb4fdc2008-04-24 17:59:27 +000017#define RAMSIZE_FIXED (1 << 0)
aurel324fc5d072008-04-27 21:39:40 +000018 ram_addr_t ram_require;
pbrook87ecb682007-11-17 17:14:51 +000019 struct QEMUMachine *next;
20} QEMUMachine;
21
22int qemu_register_machine(QEMUMachine *m);
23
24/* Axis ETRAX. */
25extern QEMUMachine bareetraxfs_machine;
26
27/* pc.c */
28extern QEMUMachine pc_machine;
29extern QEMUMachine isapc_machine;
30
31/* ppc.c */
32extern QEMUMachine prep_machine;
33extern QEMUMachine core99_machine;
34extern QEMUMachine heathrow_machine;
35extern QEMUMachine ref405ep_machine;
36extern QEMUMachine taihu_machine;
37
38/* mips_r4k.c */
39extern QEMUMachine mips_machine;
40
aurel324ce7ff62008-04-07 19:47:14 +000041/* mips_jazz.c */
42extern QEMUMachine mips_magnum_machine;
aurel32c1711482008-04-08 19:51:06 +000043extern QEMUMachine mips_pica61_machine;
aurel324ce7ff62008-04-07 19:47:14 +000044
pbrook87ecb682007-11-17 17:14:51 +000045/* mips_malta.c */
46extern QEMUMachine mips_malta_machine;
47
pbrook87ecb682007-11-17 17:14:51 +000048/* mips_mipssim.c */
49extern QEMUMachine mips_mipssim_machine;
50
51/* shix.c */
52extern QEMUMachine shix_machine;
53
54/* r2d.c */
55extern QEMUMachine r2d_machine;
56
57/* sun4m.c */
blueswir1ae409722007-12-10 20:00:11 +000058extern QEMUMachine ss5_machine, ss10_machine, ss600mp_machine, ss20_machine;
blueswir1a526a312008-03-05 18:27:45 +000059extern QEMUMachine voyager_machine, ss_lx_machine, ss4_machine, scls_machine;
60extern QEMUMachine sbook_machine;
blueswir1ee76f822007-12-28 20:59:23 +000061extern QEMUMachine ss2_machine;
blueswir17d858922007-12-28 20:57:43 +000062extern QEMUMachine ss1000_machine, ss2000_machine;
pbrook87ecb682007-11-17 17:14:51 +000063
64/* sun4u.c */
65extern QEMUMachine sun4u_machine;
66
67/* integratorcp.c */
68extern QEMUMachine integratorcp_machine;
69
70/* versatilepb.c */
71extern QEMUMachine versatilepb_machine;
72extern QEMUMachine versatileab_machine;
73
74/* realview.c */
75extern QEMUMachine realview_machine;
76
77/* spitz.c */
78extern QEMUMachine akitapda_machine;
79extern QEMUMachine spitzpda_machine;
80extern QEMUMachine borzoipda_machine;
81extern QEMUMachine terrierpda_machine;
82
83/* palm.c */
84extern QEMUMachine palmte_machine;
85
balrog7e7c5e42008-04-14 21:57:44 +000086/* nseries.c */
87extern QEMUMachine n800_machine;
88
pbrook87ecb682007-11-17 17:14:51 +000089/* gumstix.c */
90extern QEMUMachine connex_machine;
balrog3e3f6752007-11-24 23:47:38 +000091extern QEMUMachine verdex_machine;
pbrook87ecb682007-11-17 17:14:51 +000092
93/* stellaris.c */
94extern QEMUMachine lm3s811evb_machine;
95extern QEMUMachine lm3s6965evb_machine;
96
97/* an5206.c */
98extern QEMUMachine an5206_machine;
99
100/* mcf5208.c */
101extern QEMUMachine mcf5208evb_machine;
102
103/* dummy_m68k.c */
104extern QEMUMachine dummy_m68k_machine;
105
balrogef056e42007-11-25 01:57:38 +0000106/* mainstone.c */
107extern QEMUMachine mainstone2_machine;
108
balrog24859b62008-04-24 19:21:53 +0000109/* musicpal.c */
110extern QEMUMachine musicpal_machine;
111
pbrook87ecb682007-11-17 17:14:51 +0000112#endif