[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH for-3.2 v5 17/19] hw/i386: add pc-i440fx-4.0 & pc-q3
From: |
Marc-André Lureau |
Subject: |
[Qemu-devel] [PATCH for-3.2 v5 17/19] hw/i386: add pc-i440fx-4.0 & pc-q35-4.0 |
Date: |
Tue, 4 Dec 2018 18:20:21 +0400 |
The following patch is going to add compatiblity parameters for
qemu <= 3.1.
Signed-off-by: Marc-André Lureau <address@hidden>
---
include/hw/compat.h | 3 +++
include/hw/i386/pc.h | 3 +++
hw/i386/pc_piix.c | 21 +++++++++++++++++----
hw/i386/pc_q35.c | 18 ++++++++++++++++--
4 files changed, 39 insertions(+), 6 deletions(-)
diff --git a/include/hw/compat.h b/include/hw/compat.h
index 6f4d5fc647..70958328fe 100644
--- a/include/hw/compat.h
+++ b/include/hw/compat.h
@@ -1,6 +1,9 @@
#ifndef HW_COMPAT_H
#define HW_COMPAT_H
+#define HW_COMPAT_3_1 \
+ /* empty */
+
#define HW_COMPAT_3_0 \
/* empty */
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 136fe497b6..c37d4333a0 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -294,6 +294,9 @@ int e820_add_entry(uint64_t, uint64_t, uint32_t);
int e820_get_num_entries(void);
bool e820_get_entry(int, uint32_t, uint64_t *, uint64_t *);
+#define PC_COMPAT_3_1 \
+ HW_COMPAT_3_1
+
#define PC_COMPAT_3_0 \
HW_COMPAT_3_0 \
{\
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 575566e466..34b3e924d6 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -428,13 +428,29 @@ static void pc_i440fx_machine_options(MachineClass *m)
machine_class_allow_dynamic_sysbus_dev(m, TYPE_RAMFB_DEVICE);
}
-static void pc_i440fx_3_1_machine_options(MachineClass *m)
+static void pc_i440fx_4_0_machine_options(MachineClass *m)
{
pc_i440fx_machine_options(m);
m->alias = "pc";
m->is_default = 1;
}
+DEFINE_I440FX_MACHINE(v4_0, "pc-i440fx-4.0", NULL,
+ pc_i440fx_4_0_machine_options);
+
+static GlobalProperty pc_compat_3_1[] = {
+ PC_COMPAT_3_1
+};
+
+static void pc_i440fx_3_1_machine_options(MachineClass *m)
+{
+ pc_i440fx_4_0_machine_options(m);
+ m->is_default = 0;
+ m->alias = NULL;
+ compat_props_add(m->compat_props,
+ pc_compat_3_1, G_N_ELEMENTS(pc_compat_3_1));
+}
+
DEFINE_I440FX_MACHINE(v3_1, "pc-i440fx-3.1", NULL,
pc_i440fx_3_1_machine_options);
@@ -445,9 +461,6 @@ static GlobalProperty pc_compat_3_0[] = {
static void pc_i440fx_3_0_machine_options(MachineClass *m)
{
pc_i440fx_3_1_machine_options(m);
- m->is_default = 0;
- m->alias = NULL;
-
compat_props_add(m->compat_props,
pc_compat_3_0, G_N_ELEMENTS(pc_compat_3_0));
}
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 701c09b43e..f0874c42d8 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -311,12 +311,27 @@ static void pc_q35_machine_options(MachineClass *m)
m->max_cpus = 288;
}
-static void pc_q35_3_1_machine_options(MachineClass *m)
+static void pc_q35_4_0_machine_options(MachineClass *m)
{
pc_q35_machine_options(m);
m->alias = "q35";
}
+DEFINE_Q35_MACHINE(v4_0, "pc-q35-4.0", NULL,
+ pc_q35_4_0_machine_options);
+
+static GlobalProperty pc_compat_3_1[] = {
+ PC_COMPAT_3_1
+};
+
+static void pc_q35_3_1_machine_options(MachineClass *m)
+{
+ pc_q35_4_0_machine_options(m);
+ m->alias = NULL;
+ compat_props_add(m->compat_props,
+ pc_compat_3_1, G_N_ELEMENTS(pc_compat_3_1));
+}
+
DEFINE_Q35_MACHINE(v3_1, "pc-q35-3.1", NULL,
pc_q35_3_1_machine_options);
@@ -327,7 +342,6 @@ static GlobalProperty pc_compat_3_0[] = {
static void pc_q35_3_0_machine_options(MachineClass *m)
{
pc_q35_3_1_machine_options(m);
- m->alias = NULL;
compat_props_add(m->compat_props,
pc_compat_3_0, G_N_ELEMENTS(pc_compat_3_0));
}
--
2.20.0.rc1
- Re: [Qemu-devel] [PATCH for-3.2 v5 08/19] hw: apply machine compat properties without touching globals, (continued)
[Qemu-devel] [PATCH for-3.2 v5 13/19] qdev-props: remove errp from GlobalProperty, Marc-André Lureau, 2018/12/04
[Qemu-devel] [PATCH for-3.2 v5 14/19] qdev-props: call object_apply_global_props(), Marc-André Lureau, 2018/12/04
Re: [Qemu-devel] [PATCH for-3.2 v5 00/19] Generalize machine compatibility properties, Marc-André Lureau, 2018/12/04
[Qemu-devel] [PATCH for-3.2 v5 15/19] qom: add object_class_get_class_data(), Marc-André Lureau, 2018/12/04
[Qemu-devel] [PATCH for-3.2 v5 17/19] hw/i386: add pc-i440fx-4.0 & pc-q35-4.0,
Marc-André Lureau <=
[Qemu-devel] [PATCH for-3.2 v5 16/19] RFC: arm: replace instance_post_init(), Marc-André Lureau, 2018/12/04
[Qemu-devel] [PATCH for-3.2 v5 18/19] hw/arm/virt: add virt-4.0 machine type, Marc-André Lureau, 2018/12/04
[Qemu-devel] [PATCH for-3.2 v5 19/19] hostmem: use object id for memory region name with >= 4.0, Marc-André Lureau, 2018/12/04
Re: [Qemu-devel] [PATCH for-3.2 v5 00/19] Generalize machine compatibility properties, Eduardo Habkost, 2018/12/10