pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 1 | /* Declarations for use by board files for creating devices. */ |
| 2 | |
| 3 | #ifndef HW_BOARDS_H |
| 4 | #define HW_BOARDS_H |
| 5 | |
aurel32 | 00f82b8 | 2008-04-27 21:12:55 +0000 | [diff] [blame] | 6 | typedef void QEMUMachineInitFunc(ram_addr_t ram_size, int vga_ram_size, |
blueswir1 | b881c2c | 2007-11-18 08:46:58 +0000 | [diff] [blame] | 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); |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 12 | |
| 13 | typedef struct QEMUMachine { |
| 14 | const char *name; |
| 15 | const char *desc; |
| 16 | QEMUMachineInitFunc *init; |
balrog | 7fb4fdc | 2008-04-24 17:59:27 +0000 | [diff] [blame] | 17 | #define RAMSIZE_FIXED (1 << 0) |
aurel32 | 4fc5d07 | 2008-04-27 21:39:40 +0000 | [diff] [blame] | 18 | ram_addr_t ram_require; |
blueswir1 | f88e4b9 | 2008-08-12 15:58:35 +0000 | [diff] [blame] | 19 | int nodisk_ok; |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 20 | struct QEMUMachine *next; |
| 21 | } QEMUMachine; |
| 22 | |
| 23 | int qemu_register_machine(QEMUMachine *m); |
aurel32 | 8dd3dca | 2008-05-04 13:11:44 +0000 | [diff] [blame] | 24 | void register_machines(void); |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 25 | |
| 26 | /* Axis ETRAX. */ |
| 27 | extern QEMUMachine bareetraxfs_machine; |
| 28 | |
| 29 | /* pc.c */ |
| 30 | extern QEMUMachine pc_machine; |
| 31 | extern QEMUMachine isapc_machine; |
| 32 | |
| 33 | /* ppc.c */ |
| 34 | extern QEMUMachine prep_machine; |
| 35 | extern QEMUMachine core99_machine; |
| 36 | extern QEMUMachine heathrow_machine; |
| 37 | extern QEMUMachine ref405ep_machine; |
| 38 | extern QEMUMachine taihu_machine; |
| 39 | |
| 40 | /* mips_r4k.c */ |
| 41 | extern QEMUMachine mips_machine; |
| 42 | |
aurel32 | 4ce7ff6 | 2008-04-07 19:47:14 +0000 | [diff] [blame] | 43 | /* mips_jazz.c */ |
| 44 | extern QEMUMachine mips_magnum_machine; |
aurel32 | c171148 | 2008-04-08 19:51:06 +0000 | [diff] [blame] | 45 | extern QEMUMachine mips_pica61_machine; |
aurel32 | 4ce7ff6 | 2008-04-07 19:47:14 +0000 | [diff] [blame] | 46 | |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 47 | /* mips_malta.c */ |
| 48 | extern QEMUMachine mips_malta_machine; |
| 49 | |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 50 | /* mips_mipssim.c */ |
| 51 | extern QEMUMachine mips_mipssim_machine; |
| 52 | |
| 53 | /* shix.c */ |
| 54 | extern QEMUMachine shix_machine; |
| 55 | |
| 56 | /* r2d.c */ |
| 57 | extern QEMUMachine r2d_machine; |
| 58 | |
| 59 | /* sun4m.c */ |
blueswir1 | ae40972 | 2007-12-10 20:00:11 +0000 | [diff] [blame] | 60 | extern QEMUMachine ss5_machine, ss10_machine, ss600mp_machine, ss20_machine; |
blueswir1 | a526a31 | 2008-03-05 18:27:45 +0000 | [diff] [blame] | 61 | extern QEMUMachine voyager_machine, ss_lx_machine, ss4_machine, scls_machine; |
| 62 | extern QEMUMachine sbook_machine; |
blueswir1 | ee76f82 | 2007-12-28 20:59:23 +0000 | [diff] [blame] | 63 | extern QEMUMachine ss2_machine; |
blueswir1 | 7d85892 | 2007-12-28 20:57:43 +0000 | [diff] [blame] | 64 | extern QEMUMachine ss1000_machine, ss2000_machine; |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 65 | |
| 66 | /* sun4u.c */ |
| 67 | extern QEMUMachine sun4u_machine; |
blueswir1 | c7ba218 | 2008-07-22 07:07:34 +0000 | [diff] [blame] | 68 | extern QEMUMachine sun4v_machine; |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 69 | |
| 70 | /* integratorcp.c */ |
| 71 | extern QEMUMachine integratorcp_machine; |
| 72 | |
| 73 | /* versatilepb.c */ |
| 74 | extern QEMUMachine versatilepb_machine; |
| 75 | extern QEMUMachine versatileab_machine; |
| 76 | |
| 77 | /* realview.c */ |
| 78 | extern QEMUMachine realview_machine; |
| 79 | |
| 80 | /* spitz.c */ |
| 81 | extern QEMUMachine akitapda_machine; |
| 82 | extern QEMUMachine spitzpda_machine; |
| 83 | extern QEMUMachine borzoipda_machine; |
| 84 | extern QEMUMachine terrierpda_machine; |
| 85 | |
| 86 | /* palm.c */ |
| 87 | extern QEMUMachine palmte_machine; |
| 88 | |
balrog | 7e7c5e4 | 2008-04-14 21:57:44 +0000 | [diff] [blame] | 89 | /* nseries.c */ |
| 90 | extern QEMUMachine n800_machine; |
balrog | e927bb0 | 2008-05-07 14:30:38 +0000 | [diff] [blame] | 91 | extern QEMUMachine n810_machine; |
balrog | 7e7c5e4 | 2008-04-14 21:57:44 +0000 | [diff] [blame] | 92 | |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 93 | /* gumstix.c */ |
| 94 | extern QEMUMachine connex_machine; |
balrog | 3e3f675 | 2007-11-24 23:47:38 +0000 | [diff] [blame] | 95 | extern QEMUMachine verdex_machine; |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 96 | |
| 97 | /* stellaris.c */ |
| 98 | extern QEMUMachine lm3s811evb_machine; |
| 99 | extern QEMUMachine lm3s6965evb_machine; |
| 100 | |
| 101 | /* an5206.c */ |
| 102 | extern QEMUMachine an5206_machine; |
| 103 | |
| 104 | /* mcf5208.c */ |
| 105 | extern QEMUMachine mcf5208evb_machine; |
| 106 | |
| 107 | /* dummy_m68k.c */ |
| 108 | extern QEMUMachine dummy_m68k_machine; |
| 109 | |
balrog | ef056e4 | 2007-11-25 01:57:38 +0000 | [diff] [blame] | 110 | /* mainstone.c */ |
| 111 | extern QEMUMachine mainstone2_machine; |
| 112 | |
balrog | 24859b6 | 2008-04-24 19:21:53 +0000 | [diff] [blame] | 113 | /* musicpal.c */ |
| 114 | extern QEMUMachine musicpal_machine; |
| 115 | |
balrog | 89cdb6a | 2008-06-02 01:33:11 +0000 | [diff] [blame] | 116 | /* tosa.c */ |
| 117 | extern QEMUMachine tosapda_machine; |
| 118 | |
pbrook | 87ecb68 | 2007-11-17 17:14:51 +0000 | [diff] [blame] | 119 | #endif |