[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 12/22] machine: some sugary macros to simplify machi
From: |
Anthony Liguori |
Subject: |
[Qemu-devel] [PATCH 12/22] machine: some sugary macros to simplify machine default options |
Date: |
Mon, 7 Jun 2010 18:52:00 -0500 |
Signed-off-by: Anthony Liguori <address@hidden>
diff --git a/hw/boards.h b/hw/boards.h
index c7358ae..e05637b 100644
--- a/hw/boards.h
+++ b/hw/boards.h
@@ -33,6 +33,12 @@ int qemu_register_machine(QEMUMachine *m);
extern QEMUMachine *current_machine;
+#define QOPT_COMPAT(driver, property, value) \
+ QOPT_VALUE(driver "." property, value)
+
+#define QOPT_COMPAT_INT(driver, property, value) \
+ QOPT_VALUE(driver "." property, stringify(value))
+
#define COMMON_MACHINE_OPTS() \
{ \
.name = "driver", \
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index 28c1408..104206c 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -190,18 +190,9 @@ static QEMUMachine pc_machine = {
.is_default = 1,
.opts_desc = pc_opts_desc,
.opts_default = (QemuOptValue[]) {
- {
- .name = "acpi",
- .value = "on",
- },
- {
- .name = "pci",
- .value = "on",
- },
- {
- .name = "cpu",
- .value = PC_DEFAULT_CPU_MODEL,
- },
+ QOPT_VALUE("acpi", "on"),
+ QOPT_VALUE("pci", "on"),
+ QOPT_VALUE("cpu", PC_DEFAULT_CPU_MODEL),
{ /* end of list */ }
},
};
@@ -213,25 +204,11 @@ static QEMUMachine pc_machine_v0_12 = {
.max_cpus = 255,
.opts_desc = pc_opts_desc,
.opts_default = (QemuOptValue[]) {
- {
- .name = "acpi",
- .value = "on",
- },
- {
- .name = "pci",
- .value = "on",
- },
- {
- .name = "cpu",
- .value = PC_DEFAULT_CPU_MODEL,
- },
- {
- .name = "virtio-serial-pci.max_nr_ports",
- .value = stringify(1),
- },{
- .name = "virtio-serial-pci.vectors",
- .value = stringify(0),
- },
+ QOPT_VALUE("acpi", "on"),
+ QOPT_VALUE("pci", "on"),
+ QOPT_VALUE("cpu", PC_DEFAULT_CPU_MODEL),
+ QOPT_COMPAT_INT("virtio-serial-pci", "max_nr_ports", 1),
+ QOPT_COMPAT_INT("virtio-serial-pci", "vectors", 0),
{ /* end of list */ }
},
};
@@ -243,37 +220,15 @@ static QEMUMachine pc_machine_v0_11 = {
.max_cpus = 255,
.opts_desc = pc_opts_desc,
.opts_default = (QemuOptValue[]) {
- {
- .name = "acpi",
- .value = "on",
- },
- {
- .name = "pci",
- .value = "on",
- },
- {
- .name = "cpu",
- .value = PC_DEFAULT_CPU_MODEL,
- },
- {
- .name = "virtio-blk-pci.vectors",
- .value = stringify(0),
- },{
- .name = "virtio-serial-pci.max_nr_ports",
- .value = stringify(1),
- },{
- .name = "virtio-serial-pci.vectors",
- .value = stringify(0),
- },{
- .name = "ide-drive.ver",
- .value = "0.11",
- },{
- .name = "scsi-disk.ver",
- .value = "0.11",
- },{
- .name = "PCI.rombar",
- .value = stringify(0),
- },
+ QOPT_VALUE("acpi", "on"),
+ QOPT_VALUE("pci", "on"),
+ QOPT_VALUE("cpu", PC_DEFAULT_CPU_MODEL),
+ QOPT_COMPAT_INT("virtio-blk-pci", "vectors", 0),
+ QOPT_COMPAT_INT("virtio-serial-pci", "max_nr_ports", 1),
+ QOPT_COMPAT_INT("virtio-serial-pci", "vectors", 0),
+ QOPT_COMPAT("ide-drive", "ver", "0.11"),
+ QOPT_COMPAT("scsi-disk", "ver", "0.11"),
+ QOPT_COMPAT_INT("PCI", "rombar", 0),
{ /* end of list */ }
}
};
@@ -285,46 +240,18 @@ static QEMUMachine pc_machine_v0_10 = {
.max_cpus = 255,
.opts_desc = pc_opts_desc,
.opts_default = (QemuOptValue[]) {
- {
- .name = "acpi",
- .value = "on",
- },
- {
- .name = "pci",
- .value = "on",
- },
- {
- .name = "cpu",
- .value = PC_DEFAULT_CPU_MODEL,
- },
- {
- .name = "virtio-blk-pci.class",
- .value = stringify(PCI_CLASS_STORAGE_OTHER),
- },{
- .name = "virtio-serial-pci.class",
- .value = stringify(PCI_CLASS_DISPLAY_OTHER),
- },{
- .name = "virtio-serial-pci.max_nr_ports",
- .value = stringify(1),
- },{
- .name = "virtio-serial-pci.vectors",
- .value = stringify(0),
- },{
- .name = "virtio-net-pci.vectors",
- .value = stringify(0),
- },{
- .name = "virtio-blk-pci.vectors",
- .value = stringify(0),
- },{
- .name = "ide-drive.ver",
- .value = "0.10",
- },{
- .name = "scsi-disk.ver",
- .value = "0.10",
- },{
- .name = "PCI.rombar",
- .value = stringify(0),
- },
+ QOPT_VALUE("acpi", "on"),
+ QOPT_VALUE("pci", "on"),
+ QOPT_VALUE("cpu", PC_DEFAULT_CPU_MODEL),
+ QOPT_COMPAT_INT("virtio-blk-pci", "class", PCI_CLASS_STORAGE_OTHER),
+ QOPT_COMPAT_INT("virtio-serial-pci", "class", PCI_CLASS_DISPLAY_OTHER),
+ QOPT_COMPAT_INT("virtio-net-pci", "vectors", 0),
+ QOPT_COMPAT_INT("virtio-blk-pci", "vectors", 0),
+ QOPT_COMPAT_INT("virtio-serial-pci", "max_nr_ports", 1),
+ QOPT_COMPAT_INT("virtio-serial-pci", "vectors", 0),
+ QOPT_COMPAT("ide-drive", "ver", "0.10"),
+ QOPT_COMPAT("scsi-disk", "ver", "0.10"),
+ QOPT_COMPAT_INT("PCI", "rombar", 0),
{ /* end of list */ }
},
};
@@ -335,18 +262,9 @@ static QEMUMachine isapc_machine = {
.opts_desc = pc_opts_desc,
.init = pc_init,
.opts_default = (QemuOptValue[]) {
- {
- .name = "acpi",
- .value = "off",
- },
- {
- .name = "pci",
- .value = "off",
- },
- {
- .name = "cpu",
- .value = "486",
- },
+ QOPT_VALUE("acpi", "off"),
+ QOPT_VALUE("pci", "off"),
+ QOPT_VALUE("cpu", "486"),
{ /* end of list */ }
},
.max_cpus = 1,
diff --git a/qemu-option.h b/qemu-option.h
index 85ab58e..5fc60ac 100644
--- a/qemu-option.h
+++ b/qemu-option.h
@@ -109,6 +109,12 @@ typedef struct QemuOptValue {
const char *value;
} QemuOptValue;
+#define QOPT_VALUE(_name, _value) \
+ { \
+ .name = _name, \
+ .value = _value, \
+ }
+
const char *qemu_opt_get(QemuOpts *opts, const char *name);
int qemu_opt_get_bool(QemuOpts *opts, const char *name, int defval);
uint64_t qemu_opt_get_number(QemuOpts *opts, const char *name, uint64_t
defval);
--
1.7.0.4
- [Qemu-devel] [PATCH 09/22] machine: implement -m in terms of -machine, (continued)
- [Qemu-devel] [PATCH 05/22] machine: pass all init options as a single QemuOpts, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 11/22] machine: replace compat_props with opts_default, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 13/22] machine: get rid of global default QEMUMachine members, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 12/22] machine: some sugary macros to simplify machine default options,
Anthony Liguori <=
- [Qemu-devel] [PATCH 06/22] Make -acpi-enable a machine specific option, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 17/22] machine: kill machine->alias, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 16/22] machine: move default machine out of machine definitions, Anthony Liguori, 2010/06/07
- [Qemu-devel] [PATCH 15/22] machine: make max_cpus a -machine option, Anthony Liguori, 2010/06/07
- Re: [Qemu-devel] [PATCH 15/22] machine: make max_cpus a -machine option, Jes Sorensen, 2010/06/09
[Qemu-devel] [PATCH 19/22] machine: introduce accel option to allow selection of kvm or tcg, Anthony Liguori, 2010/06/07