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