Merge remote-tracking branch 'mjt/mjt-iov2' into staging
[qemu-kvm.git] / hw / boards.h
blob59c01d036705d7a16c73528ec0ab4d5f778a0fdf
1 /* Declarations for use by board files for creating devices. */
3 #ifndef HW_BOARDS_H
4 #define HW_BOARDS_H
6 #include "qdev.h"
8 typedef void QEMUMachineInitFunc(ram_addr_t ram_size,
9 const char *boot_device,
10 const char *kernel_filename,
11 const char *kernel_cmdline,
12 const char *initrd_filename,
13 const char *cpu_model);
15 typedef struct QEMUMachine {
16 const char *name;
17 const char *alias;
18 const char *desc;
19 QEMUMachineInitFunc *init;
20 int use_scsi;
21 int max_cpus;
22 unsigned int no_serial:1,
23 no_parallel:1,
24 use_virtcon:1,
25 no_floppy:1,
26 no_cdrom:1,
27 no_sdcard:1;
28 int is_default;
29 const char *default_machine_opts;
30 GlobalProperty *compat_props;
31 struct QEMUMachine *next;
32 const char *hw_version;
33 } QEMUMachine;
35 int qemu_register_machine(QEMUMachine *m);
36 QEMUMachine *find_default_machine(void);
38 extern QEMUMachine *current_machine;
40 #endif