716fd7b1a66627509ef87ef62a3b49537539d004
[sdk/emulator/qemu.git] / hw / boards.h
1 /* Declarations for use by board files for creating devices.  */
2
3 #ifndef HW_BOARDS_H
4 #define HW_BOARDS_H
5
6 #include "qdev.h"
7
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);
14
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_vga:1,
26         no_floppy:1,
27         no_cdrom:1,
28         no_sdcard:1;
29     int is_default;
30     const char *default_machine_opts;
31     GlobalProperty *compat_props;
32     struct QEMUMachine *next;
33 } QEMUMachine;
34
35 int qemu_register_machine(QEMUMachine *m);
36
37 extern QEMUMachine *current_machine;
38
39 #endif