mirror of
https://github.com/qemu/qemu.git
synced 2024-12-02 16:23:35 +08:00
5f072e1f30
This should help us to: - More easily add or remove machine initialization arguments without having to change every single machine init function; - More easily make mechanical changes involving the machine init functions in the future; - Let machine initialization forward the init arguments to other functions more easily. This change was half-mechanical process: first the struct was added with the local ram_size, boot_device, kernel_*, initrd_*, and cpu_model local variable initialization to all functions. Then the compiler helped me locate the local variables that are unused, so they could be removed. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
48 lines
1.1 KiB
C
48 lines
1.1 KiB
C
/* Declarations for use by board files for creating devices. */
|
|
|
|
#ifndef HW_BOARDS_H
|
|
#define HW_BOARDS_H
|
|
|
|
#include "qdev.h"
|
|
|
|
typedef struct QEMUMachineInitArgs {
|
|
ram_addr_t ram_size;
|
|
const char *boot_device;
|
|
const char *kernel_filename;
|
|
const char *kernel_cmdline;
|
|
const char *initrd_filename;
|
|
const char *cpu_model;
|
|
} QEMUMachineInitArgs;
|
|
|
|
typedef void QEMUMachineInitFunc(QEMUMachineInitArgs *args);
|
|
|
|
typedef void QEMUMachineResetFunc(void);
|
|
|
|
typedef struct QEMUMachine {
|
|
const char *name;
|
|
const char *alias;
|
|
const char *desc;
|
|
QEMUMachineInitFunc *init;
|
|
QEMUMachineResetFunc *reset;
|
|
int use_scsi;
|
|
int max_cpus;
|
|
unsigned int no_serial:1,
|
|
no_parallel:1,
|
|
use_virtcon:1,
|
|
no_floppy:1,
|
|
no_cdrom:1,
|
|
no_sdcard:1;
|
|
int is_default;
|
|
const char *default_machine_opts;
|
|
GlobalProperty *compat_props;
|
|
struct QEMUMachine *next;
|
|
const char *hw_version;
|
|
} QEMUMachine;
|
|
|
|
int qemu_register_machine(QEMUMachine *m);
|
|
QEMUMachine *find_default_machine(void);
|
|
|
|
extern QEMUMachine *current_machine;
|
|
|
|
#endif
|