2007-11-17 18:14:51 +01:00
|
|
|
/* Declarations for use by board files for creating devices. */
|
|
|
|
|
|
|
|
#ifndef HW_BOARDS_H
|
|
|
|
#define HW_BOARDS_H
|
|
|
|
|
2009-07-15 13:48:21 +02:00
|
|
|
#include "qdev.h"
|
|
|
|
|
2009-10-01 23:12:16 +02:00
|
|
|
typedef void QEMUMachineInitFunc(ram_addr_t ram_size,
|
2009-01-16 20:04:14 +01:00
|
|
|
const char *boot_device,
|
2007-11-18 09:46:58 +01:00
|
|
|
const char *kernel_filename,
|
|
|
|
const char *kernel_cmdline,
|
|
|
|
const char *initrd_filename,
|
|
|
|
const char *cpu_model);
|
2007-11-17 18:14:51 +01:00
|
|
|
|
2012-08-07 08:41:51 +02:00
|
|
|
typedef void QEMUMachineResetFunc(void);
|
|
|
|
|
2007-11-17 18:14:51 +01:00
|
|
|
typedef struct QEMUMachine {
|
|
|
|
const char *name;
|
2009-07-22 11:02:50 +02:00
|
|
|
const char *alias;
|
2007-11-17 18:14:51 +01:00
|
|
|
const char *desc;
|
|
|
|
QEMUMachineInitFunc *init;
|
2012-08-07 08:41:51 +02:00
|
|
|
QEMUMachineResetFunc *reset;
|
2008-09-28 20:55:17 +02:00
|
|
|
int use_scsi;
|
2008-10-07 22:39:39 +02:00
|
|
|
int max_cpus;
|
2009-12-25 17:12:26 +01:00
|
|
|
unsigned int no_serial:1,
|
2009-12-08 13:11:54 +01:00
|
|
|
no_parallel:1,
|
|
|
|
use_virtcon:1,
|
2009-12-16 14:25:39 +01:00
|
|
|
no_floppy:1,
|
|
|
|
no_cdrom:1,
|
|
|
|
no_sdcard:1;
|
2009-05-22 03:41:01 +02:00
|
|
|
int is_default;
|
2010-11-22 16:44:15 +01:00
|
|
|
const char *default_machine_opts;
|
2009-12-08 13:11:33 +01:00
|
|
|
GlobalProperty *compat_props;
|
2007-11-17 18:14:51 +01:00
|
|
|
struct QEMUMachine *next;
|
2012-05-30 05:35:51 +02:00
|
|
|
const char *hw_version;
|
2007-11-17 18:14:51 +01:00
|
|
|
} QEMUMachine;
|
|
|
|
|
|
|
|
int qemu_register_machine(QEMUMachine *m);
|
2012-02-22 08:18:50 +01:00
|
|
|
QEMUMachine *find_default_machine(void);
|
2007-11-17 18:14:51 +01:00
|
|
|
|
2009-02-11 16:21:54 +01:00
|
|
|
extern QEMUMachine *current_machine;
|
|
|
|
|
2007-11-17 18:14:51 +01:00
|
|
|
#endif
|