compat: replace PC_COMPAT_2_8 & HW_COMPAT_2_8 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>
This commit is contained in:
Marc-André Lureau 2018-12-12 19:36:30 +04:00
parent 3e8031525a
commit edc24ccda4
10 changed files with 87 additions and 86 deletions

View File

@ -1926,12 +1926,9 @@ DEFINE_VIRT_MACHINE(2, 9)
static void virt_machine_2_8_options(MachineClass *mc)
{
VirtMachineClass *vmc = VIRT_MACHINE_CLASS(OBJECT_CLASS(mc));
static GlobalProperty compat[] = {
HW_COMPAT_2_8
};
virt_machine_2_9_options(mc);
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
compat_props_add(mc->compat_props, hw_compat_2_8, hw_compat_2_8_len);
/* For 2.8 and earlier we falsely claimed in the DT that
* our timers were edge-triggered, not level-triggered.
*/

View File

@ -21,6 +21,7 @@
#include "sysemu/numa.h"
#include "qemu/error-report.h"
#include "sysemu/qtest.h"
#include "hw/pci/pci.h"
GlobalProperty hw_compat_3_1[] = {
{
@ -122,6 +123,51 @@ GlobalProperty hw_compat_2_9[] = {
};
const size_t hw_compat_2_9_len = G_N_ELEMENTS(hw_compat_2_9);
GlobalProperty hw_compat_2_8[] = {
{
.driver = "fw_cfg_mem",
.property = "x-file-slots",
.value = stringify(0x10),
},{
.driver = "fw_cfg_io",
.property = "x-file-slots",
.value = stringify(0x10),
},{
.driver = "pflash_cfi01",
.property = "old-multiple-chip-handling",
.value = "on",
},{
.driver = "pci-bridge",
.property = "shpc",
.value = "on",
},{
.driver = TYPE_PCI_DEVICE,
.property = "x-pcie-extcap-init",
.value = "off",
},{
.driver = "virtio-pci",
.property = "x-pcie-deverr-init",
.value = "off",
},{
.driver = "virtio-pci",
.property = "x-pcie-lnkctl-init",
.value = "off",
},{
.driver = "virtio-pci",
.property = "x-pcie-pm-init",
.value = "off",
},{
.driver = "cirrus-vga",
.property = "vgamem_mb",
.value = "8",
},{
.driver = "isa-cirrus-vga",
.property = "vgamem_mb",
.value = "8",
},
};
const size_t hw_compat_2_8_len = G_N_ELEMENTS(hw_compat_2_8);
static char *machine_get_accel(Object *obj, Error **errp)
{
MachineState *ms = MACHINE(obj);

View File

@ -195,6 +195,35 @@ GlobalProperty pc_compat_2_9[] = {
};
const size_t pc_compat_2_9_len = G_N_ELEMENTS(pc_compat_2_9);
GlobalProperty pc_compat_2_8[] = {
{
.driver = TYPE_X86_CPU,
.property = "tcg-cpuid",
.value = "off",
},
{
.driver = "kvmclock",
.property = "x-mach-use-reliable-get-clock",
.value = "off",
},
{
.driver = "ICH9-LPC",
.property = "x-smi-broadcast",
.value = "off",
},
{
.driver = TYPE_X86_CPU,
.property = "vmware-cpuid-freq",
.value = "off",
},
{
.driver = "Haswell-" TYPE_X86_CPU,
.property = "stepping",
.value = "1",
},
};
const size_t pc_compat_2_8_len = G_N_ELEMENTS(pc_compat_2_8);
void gsi_handler(void *opaque, int n, int level)
{
GSIState *s = opaque;

View File

@ -504,12 +504,9 @@ DEFINE_I440FX_MACHINE(v2_9, "pc-i440fx-2.9", NULL,
static void pc_i440fx_2_8_machine_options(MachineClass *m)
{
static GlobalProperty compat[] = {
PC_COMPAT_2_8
};
pc_i440fx_2_9_machine_options(m);
compat_props_add(m->compat_props, compat, G_N_ELEMENTS(compat));
compat_props_add(m->compat_props, hw_compat_2_8, hw_compat_2_8_len);
compat_props_add(m->compat_props, pc_compat_2_8, pc_compat_2_8_len);
}
DEFINE_I440FX_MACHINE(v2_8, "pc-i440fx-2.8", NULL,

View File

@ -390,12 +390,9 @@ DEFINE_Q35_MACHINE(v2_9, "pc-q35-2.9", NULL,
static void pc_q35_2_8_machine_options(MachineClass *m)
{
static GlobalProperty compat[] = {
PC_COMPAT_2_8
};
pc_q35_2_9_machine_options(m);
compat_props_add(m->compat_props, compat, G_N_ELEMENTS(compat));
compat_props_add(m->compat_props, hw_compat_2_8, hw_compat_2_8_len);
compat_props_add(m->compat_props, pc_compat_2_8, pc_compat_2_8_len);
}
DEFINE_Q35_MACHINE(v2_8, "pc-q35-2.8", NULL,

View File

@ -4151,7 +4151,6 @@ DEFINE_SPAPR_MACHINE(2_9, "2.9", false);
static void spapr_machine_2_8_class_options(MachineClass *mc)
{
static GlobalProperty compat[] = {
HW_COMPAT_2_8
{
.driver = TYPE_SPAPR_PCI_HOST_BRIDGE,
.property = "pcie-extended-configuration-space",
@ -4160,6 +4159,7 @@ static void spapr_machine_2_8_class_options(MachineClass *mc)
};
spapr_machine_2_9_class_options(mc);
compat_props_add(mc->compat_props, hw_compat_2_8, hw_compat_2_8_len);
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
mc->numa_mem_align_shift = 23;
}

View File

@ -774,7 +774,6 @@ static void ccw_machine_2_8_instance_options(MachineState *machine)
static void ccw_machine_2_8_class_options(MachineClass *mc)
{
static GlobalProperty compat[] = {
HW_COMPAT_2_8
{
.driver = TYPE_S390_FLIC_COMMON,
.property = "adapter_routes_max_batch",
@ -783,6 +782,7 @@ static void ccw_machine_2_8_class_options(MachineClass *mc)
};
ccw_machine_2_9_class_options(mc);
compat_props_add(mc->compat_props, hw_compat_2_8, hw_compat_2_8_len);
compat_props_add(mc->compat_props, compat, G_N_ELEMENTS(compat));
}
DEFINE_CCW_MACHINE(2_8, "2.8", false);

View File

@ -306,4 +306,7 @@ extern const size_t hw_compat_2_10_len;
extern GlobalProperty hw_compat_2_9[];
extern const size_t hw_compat_2_9_len;
extern GlobalProperty hw_compat_2_8[];
extern const size_t hw_compat_2_8_len;
#endif

View File

@ -1,49 +1,6 @@
#ifndef HW_COMPAT_H
#define HW_COMPAT_H
#define HW_COMPAT_2_8 \
{\
.driver = "fw_cfg_mem",\
.property = "x-file-slots",\
.value = stringify(0x10),\
},{\
.driver = "fw_cfg_io",\
.property = "x-file-slots",\
.value = stringify(0x10),\
},{\
.driver = "pflash_cfi01",\
.property = "old-multiple-chip-handling",\
.value = "on",\
},{\
.driver = "pci-bridge",\
.property = "shpc",\
.value = "on",\
},{\
.driver = TYPE_PCI_DEVICE,\
.property = "x-pcie-extcap-init",\
.value = "off",\
},{\
.driver = "virtio-pci",\
.property = "x-pcie-deverr-init",\
.value = "off",\
},{\
.driver = "virtio-pci",\
.property = "x-pcie-lnkctl-init",\
.value = "off",\
},{\
.driver = "virtio-pci",\
.property = "x-pcie-pm-init",\
.value = "off",\
},{\
.driver = "cirrus-vga",\
.property = "vgamem_mb",\
.value = "8",\
},{\
.driver = "isa-cirrus-vga",\
.property = "vgamem_mb",\
.value = "8",\
},
#define HW_COMPAT_2_7 \
{\
.driver = "virtio-pci",\

View File

@ -312,33 +312,8 @@ extern const size_t pc_compat_2_10_len;
extern GlobalProperty pc_compat_2_9[];
extern const size_t pc_compat_2_9_len;
#define PC_COMPAT_2_8 \
HW_COMPAT_2_8 \
{\
.driver = TYPE_X86_CPU,\
.property = "tcg-cpuid",\
.value = "off",\
},\
{\
.driver = "kvmclock",\
.property = "x-mach-use-reliable-get-clock",\
.value = "off",\
},\
{\
.driver = "ICH9-LPC",\
.property = "x-smi-broadcast",\
.value = "off",\
},\
{\
.driver = TYPE_X86_CPU,\
.property = "vmware-cpuid-freq",\
.value = "off",\
},\
{\
.driver = "Haswell-" TYPE_X86_CPU,\
.property = "stepping",\
.value = "1",\
},
extern GlobalProperty pc_compat_2_8[];
extern const size_t pc_compat_2_8_len;
#define PC_COMPAT_2_7 \
HW_COMPAT_2_7 \