aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2018-12-12 19:36:30 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2019-01-07 16:18:42 +0400
commitff8f261f113b55d3eb83ea9163d70a0f1ea36daa (patch)
tree768e1a54668b97d0b78f4da04c2c726e7ba19d17 /hw
parent5a995064dbaf64c0bbc45ce8745ab4e49c434b37 (diff)
downloadqemu-ff8f261f113b55d3eb83ea9163d70a0f1ea36daa.zip
qemu-ff8f261f113b55d3eb83ea9163d70a0f1ea36daa.tar.gz
qemu-ff8f261f113b55d3eb83ea9163d70a0f1ea36daa.tar.bz2
compat: replace PC_COMPAT_2_6 & HW_COMPAT_2_6 macros
Use static arrays instead. Suggested-by: Eduardo Habkost <ehabkost@redhat.com> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Igor Mammedov <imammedo@redhat.com> Reviewed-by: Cornelia Huck <cohuck@redhat.com> Acked-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/arm/virt.c5
-rw-r--r--hw/core/machine.c17
-rw-r--r--hw/i386/pc.c23
-rw-r--r--hw/i386/pc_piix.c6
-rw-r--r--hw/i386/pc_q35.c6
-rw-r--r--hw/ppc/spapr.c2
-rw-r--r--hw/s390x/s390-virtio-ccw.c2
7 files changed, 47 insertions, 14 deletions
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 0134d0d..d3174f1 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1952,12 +1952,9 @@ DEFINE_VIRT_MACHINE(2, 7)
static void virt_machine_2_6_options(MachineClass *mc)
{
VirtMachineClass *vmc = VIRT_MACHINE_CLASS(OBJECT_CLASS(mc));
- static GlobalProperty compat[] = {
- HW_COMPAT_2_6
- };
virt_machine_2_7_options(mc);
- compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
+ compat_props_add(mc->compat_props, hw_compat_2_6, hw_compat_2_6_len);
vmc->disallow_affinity_adjustment = true;
/* Disable PMU for 2.6 as PMU support was first introduced in 2.7 */
vmc->no_pmu = true;
diff --git a/hw/core/machine.c b/hw/core/machine.c
index cc92b0c..e27b1b5 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -193,6 +193,23 @@ GlobalProperty hw_compat_2_7[] = {
};
const size_t hw_compat_2_7_len = G_N_ELEMENTS(hw_compat_2_7);
+GlobalProperty hw_compat_2_6[] = {
+ {
+ .driver = "virtio-mmio",
+ .property = "format_transport_address",
+ .value = "off",
+ },{
+ .driver = "virtio-pci",
+ .property = "disable-modern",
+ .value = "on",
+ },{
+ .driver = "virtio-pci",
+ .property = "disable-legacy",
+ .value = "off",
+ },
+};
+const size_t hw_compat_2_6_len = G_N_ELEMENTS(hw_compat_2_6);
+
static char *machine_get_accel(Object *obj, Error **errp)
{
MachineState *ms = MACHINE(obj);
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index ed46f9c..6c8ff0e 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -258,6 +258,29 @@ GlobalProperty pc_compat_2_7[] = {
};
const size_t pc_compat_2_7_len = G_N_ELEMENTS(pc_compat_2_7);
+GlobalProperty pc_compat_2_6[] = {
+ {
+ .driver = TYPE_X86_CPU,
+ .property = "cpuid-0xb",
+ .value = "off",
+ },{
+ .driver = "vmxnet3",
+ .property = "romfile",
+ .value = "",
+ },
+ {
+ .driver = TYPE_X86_CPU,
+ .property = "fill-mtrr-mask",
+ .value = "off",
+ },
+ {
+ .driver = "apic-common",
+ .property = "legacy-instance-id",
+ .value = "on",
+ }
+};
+const size_t pc_compat_2_6_len = G_N_ELEMENTS(pc_compat_2_6);
+
void gsi_handler(void *opaque, int n, int level)
{
GSIState *s = opaque;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 182d868..89e81a0 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -525,14 +525,12 @@ DEFINE_I440FX_MACHINE(v2_7, "pc-i440fx-2.7", NULL,
static void pc_i440fx_2_6_machine_options(MachineClass *m)
{
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
- static GlobalProperty compat[] = {
- PC_COMPAT_2_6
- };
pc_i440fx_2_7_machine_options(m);
pcmc->legacy_cpu_hotplug = true;
pcmc->linuxboot_dma_enabled = false;
- compat_props_add(m->compat_props, compat, G_N_ELEMENTS(compat));
+ compat_props_add(m->compat_props, hw_compat_2_6, hw_compat_2_6_len);
+ compat_props_add(m->compat_props, pc_compat_2_6, pc_compat_2_6_len);
}
DEFINE_I440FX_MACHINE(v2_6, "pc-i440fx-2.6", NULL,
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 3537752..efb70fb 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -412,14 +412,12 @@ DEFINE_Q35_MACHINE(v2_7, "pc-q35-2.7", NULL,
static void pc_q35_2_6_machine_options(MachineClass *m)
{
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
- static GlobalProperty compat[] = {
- PC_COMPAT_2_6
- };
pc_q35_2_7_machine_options(m);
pcmc->legacy_cpu_hotplug = true;
pcmc->linuxboot_dma_enabled = false;
- compat_props_add(m->compat_props, compat, G_N_ELEMENTS(compat));
+ compat_props_add(m->compat_props, hw_compat_2_6, hw_compat_2_6_len);
+ compat_props_add(m->compat_props, pc_compat_2_6, pc_compat_2_6_len);
}
DEFINE_Q35_MACHINE(v2_6, "pc-q35-2.6", NULL,
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index c83b0c0..eff0159 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -4262,7 +4262,6 @@ DEFINE_SPAPR_MACHINE(2_7, "2.7", false);
static void spapr_machine_2_6_class_options(MachineClass *mc)
{
static GlobalProperty compat[] = {
- HW_COMPAT_2_6
{
.driver = TYPE_SPAPR_PCI_HOST_BRIDGE,
.property = "ddw",
@@ -4272,6 +4271,7 @@ static void spapr_machine_2_6_class_options(MachineClass *mc)
spapr_machine_2_7_class_options(mc);
mc->has_hotpluggable_cpus = false;
+ compat_props_add(mc->compat_props, hw_compat_2_6, hw_compat_2_6_len);
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
}
diff --git a/hw/s390x/s390-virtio-ccw.c b/hw/s390x/s390-virtio-ccw.c
index f28feed..6137c97 100644
--- a/hw/s390x/s390-virtio-ccw.c
+++ b/hw/s390x/s390-virtio-ccw.c
@@ -811,7 +811,6 @@ static void ccw_machine_2_6_class_options(MachineClass *mc)
{
S390CcwMachineClass *s390mc = S390_MACHINE_CLASS(mc);
static GlobalProperty compat[] = {
- HW_COMPAT_2_6
{
.driver = TYPE_S390_IPL,
.property = "iplbext_migration",
@@ -825,6 +824,7 @@ static void ccw_machine_2_6_class_options(MachineClass *mc)
s390mc->ri_allowed = false;
ccw_machine_2_7_class_options(mc);
+ compat_props_add(mc->compat_props, hw_compat_2_6, hw_compat_2_6_len);
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
}
DEFINE_CCW_MACHINE(2_6, "2.6", false);