Statistics
| Branch: | Revision:

root / hw / boards.h @ d8c6d07f

History | View | Annotate | Download (1.2 kB)

1 87ecb68b pbrook
/* Declarations for use by board files for creating devices.  */
2 87ecb68b pbrook
3 87ecb68b pbrook
#ifndef HW_BOARDS_H
4 87ecb68b pbrook
#define HW_BOARDS_H
5 87ecb68b pbrook
6 9c17d615 Paolo Bonzini
#include "sysemu/blockdev.h"
7 b6b61144 Gerd Hoffmann
#include "qdev.h"
8 b6b61144 Gerd Hoffmann
9 e4ada29e Avik Sil
#define DEFAULT_MACHINE_OPTIONS \
10 e4ada29e Avik Sil
    .boot_order = "cad"
11 e4ada29e Avik Sil
12 5f072e1f Eduardo Habkost
typedef struct QEMUMachineInitArgs {
13 5f072e1f Eduardo Habkost
    ram_addr_t ram_size;
14 5f072e1f Eduardo Habkost
    const char *boot_device;
15 5f072e1f Eduardo Habkost
    const char *kernel_filename;
16 5f072e1f Eduardo Habkost
    const char *kernel_cmdline;
17 5f072e1f Eduardo Habkost
    const char *initrd_filename;
18 5f072e1f Eduardo Habkost
    const char *cpu_model;
19 5f072e1f Eduardo Habkost
} QEMUMachineInitArgs;
20 5f072e1f Eduardo Habkost
21 5f072e1f Eduardo Habkost
typedef void QEMUMachineInitFunc(QEMUMachineInitArgs *args);
22 87ecb68b pbrook
23 be522029 David Gibson
typedef void QEMUMachineResetFunc(void);
24 be522029 David Gibson
25 87ecb68b pbrook
typedef struct QEMUMachine {
26 87ecb68b pbrook
    const char *name;
27 3f6599e6 Mark McLoughlin
    const char *alias;
28 87ecb68b pbrook
    const char *desc;
29 87ecb68b pbrook
    QEMUMachineInitFunc *init;
30 be522029 David Gibson
    QEMUMachineResetFunc *reset;
31 2d0d2837 Christian Borntraeger
    BlockInterfaceType block_default_type;
32 b2097003 aliguori
    int max_cpus;
33 2fe0ee97 Blue Swirl
    unsigned int no_serial:1,
34 986c5f78 Gerd Hoffmann
        no_parallel:1,
35 986c5f78 Gerd Hoffmann
        use_virtcon:1,
36 ac33f8fa Gerd Hoffmann
        no_floppy:1,
37 ac33f8fa Gerd Hoffmann
        no_cdrom:1,
38 ac33f8fa Gerd Hoffmann
        no_sdcard:1;
39 0c257437 Anthony Liguori
    int is_default;
40 67b724e6 Anthony PERARD
    const char *default_machine_opts;
41 e4ada29e Avik Sil
    const char *boot_order;
42 458fb679 Gerd Hoffmann
    GlobalProperty *compat_props;
43 87ecb68b pbrook
    struct QEMUMachine *next;
44 93bfef4c Crístian Viana
    const char *hw_version;
45 87ecb68b pbrook
} QEMUMachine;
46 87ecb68b pbrook
47 87ecb68b pbrook
int qemu_register_machine(QEMUMachine *m);
48 2c8cffa5 Jordan Justen
QEMUMachine *find_default_machine(void);
49 87ecb68b pbrook
50 6f338c34 aliguori
extern QEMUMachine *current_machine;
51 6f338c34 aliguori
52 87ecb68b pbrook
#endif