From: Thomas Huth <thuth@redhat.com>
To: qemu-devel@nongnu.org, Richard Henderson <richard.henderson@linaro.org>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Subject: [PULL 03/20] hw: Move the default NIC machine class setting from the x86 to the generic one
Date: Mon, 22 May 2023 13:49:57 +0200 [thread overview]
Message-ID: <20230522115014.1110840-4-thuth@redhat.com> (raw)
In-Reply-To: <20230522115014.1110840-1-thuth@redhat.com>
We are going to re-use this setting for other targets, so let's
move this to the main MachineClass.
Message-Id: <20230512124033.502654-4-thuth@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
include/hw/boards.h | 1 +
include/hw/i386/pc.h | 1 -
hw/i386/pc.c | 3 ++-
hw/i386/pc_piix.c | 4 ++--
hw/i386/pc_q35.c | 6 ++----
5 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/include/hw/boards.h b/include/hw/boards.h
index f4117fdb9a..a385010909 100644
--- a/include/hw/boards.h
+++ b/include/hw/boards.h
@@ -253,6 +253,7 @@ struct MachineClass {
const char *default_machine_opts;
const char *default_boot_order;
const char *default_display;
+ const char *default_nic;
GPtrArray *compat_props;
const char *hw_version;
ram_addr_t default_ram_size;
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index 79e755879d..c661e9cc80 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -93,7 +93,6 @@ struct PCMachineClass {
/* Device configuration: */
bool pci_enabled;
bool kvmclock_enabled;
- const char *default_nic_model;
/* Compat options: */
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index b3d826a83a..bb62c994fa 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1364,12 +1364,13 @@ void pc_basic_device_init(struct PCMachineState *pcms,
void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
{
+ MachineClass *mc = MACHINE_CLASS(pcmc);
int i;
rom_set_order_override(FW_CFG_ORDER_OVERRIDE_NIC);
for (i = 0; i < nb_nics; i++) {
NICInfo *nd = &nd_table[i];
- const char *model = nd->model ? nd->model : pcmc->default_nic_model;
+ const char *model = nd->model ? nd->model : mc->default_nic;
if (g_str_equal(model, "ne2k_isa")) {
pc_init_ne2k_isa(isa_bus, nd);
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 10070ea9a5..17892ad580 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -450,7 +450,6 @@ static void pc_xen_hvm_init(MachineState *machine)
static void pc_i440fx_machine_options(MachineClass *m)
{
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
- pcmc->default_nic_model = "e1000";
pcmc->pci_root_uid = 0;
pcmc->default_cpu_version = 1;
@@ -458,6 +457,7 @@ static void pc_i440fx_machine_options(MachineClass *m)
m->desc = "Standard PC (i440FX + PIIX, 1996)";
m->default_machine_opts = "firmware=bios-256k.bin";
m->default_display = "std";
+ m->default_nic = "e1000";
machine_class_allow_dynamic_sysbus_dev(m, TYPE_RAMFB_DEVICE);
machine_class_allow_dynamic_sysbus_dev(m, TYPE_VMBUS_BRIDGE);
}
@@ -884,7 +884,7 @@ static void isapc_machine_options(MachineClass *m)
pcmc->gigabyte_align = false;
pcmc->smbios_legacy_mode = true;
pcmc->has_reserved_memory = false;
- pcmc->default_nic_model = "ne2k_isa";
+ m->default_nic = "ne2k_isa";
m->default_cpu_type = X86_CPU_TYPE_NAME("486");
}
diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c
index 8030d53da6..7e0f354edd 100644
--- a/hw/i386/pc_q35.c
+++ b/hw/i386/pc_q35.c
@@ -356,7 +356,6 @@ static void pc_q35_init(MachineState *machine)
static void pc_q35_machine_options(MachineClass *m)
{
PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
- pcmc->default_nic_model = "e1000e";
pcmc->pci_root_uid = 0;
pcmc->default_cpu_version = 1;
@@ -365,6 +364,7 @@ static void pc_q35_machine_options(MachineClass *m)
m->units_per_default_bus = 1;
m->default_machine_opts = "firmware=bios-256k.bin";
m->default_display = "std";
+ m->default_nic = "e1000e";
m->default_kernel_irqchip_split = false;
m->no_floppy = 1;
machine_class_allow_dynamic_sysbus_dev(m, TYPE_AMD_IOMMU_DEVICE);
@@ -577,10 +577,8 @@ DEFINE_Q35_MACHINE(v2_12, "pc-q35-2.12", NULL,
static void pc_q35_2_11_machine_options(MachineClass *m)
{
- PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
-
pc_q35_2_12_machine_options(m);
- pcmc->default_nic_model = "e1000";
+ m->default_nic = "e1000";
compat_props_add(m->compat_props, hw_compat_2_11, hw_compat_2_11_len);
compat_props_add(m->compat_props, pc_compat_2_11, pc_compat_2_11_len);
}
--
2.31.1
next prev parent reply other threads:[~2023-05-22 11:54 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-22 11:49 [PULL 00/20] Allow "make check" with "--without-default-devices" Thomas Huth
2023-05-22 11:49 ` [PULL 01/20] hw/i386/Kconfig: ISAPC works fine without VGA_ISA Thomas Huth
2023-05-22 11:49 ` [PULL 02/20] softmmu/vl.c: Check for the availability of the VGA device before using it Thomas Huth
2023-05-22 11:49 ` Thomas Huth [this message]
2023-05-22 11:49 ` [PULL 04/20] softmmu/vl.c: Disable default NIC if it has not been compiled into the binary Thomas Huth
2023-05-22 11:49 ` [PULL 05/20] hw/ppc: Use MachineClass->default_nic in the ppc machines Thomas Huth
2023-05-22 11:50 ` [PULL 06/20] hw/s390x: Use MachineClass->default_nic in the s390x machine Thomas Huth
2023-05-22 11:50 ` [PULL 07/20] hw/sh4: Use MachineClass->default_nic in the sh4 r2d machine Thomas Huth
2023-05-22 11:50 ` [PULL 08/20] hw/char/parallel: Move TYPE_ISA_PARALLEL to the header file Thomas Huth
2023-05-22 11:50 ` [PULL 09/20] hw/i386: Ignore the default parallel port if it has not been compiled into QEMU Thomas Huth
2023-05-22 11:50 ` [PULL 10/20] hw/sparc64/sun4u: Use MachineClass->default_nic and MachineClass->no_parallel Thomas Huth
2023-05-22 11:50 ` [PULL 11/20] tests/qtest/readconfig-test: Check for the availability of USB controllers Thomas Huth
2023-05-22 11:50 ` [PULL 12/20] tests/qtest/usb-hcd-uhci-test: Skip test if UHCI controller is not available Thomas Huth
2023-05-22 11:50 ` [PULL 13/20] tests/qtest/cdrom-test: Fix the test to also work without optional devices Thomas Huth
2023-05-22 11:50 ` [PULL 14/20] tests/qtest/virtio-ccw-test: Remove superfluous tests Thomas Huth
2023-05-22 11:50 ` [PULL 15/20] tests/qtest: Check for the availability of virtio-ccw devices before using them Thomas Huth
2023-05-22 11:50 ` [PULL 16/20] tests/qtest/meson.build: Run the net filter tests only with default devices Thomas Huth
2023-05-22 11:50 ` [PULL 17/20] tests/qemu-iotests/172: Run QEMU with -vga none and -nic none Thomas Huth
2023-05-22 11:50 ` [PULL 18/20] .gitlab-ci.d/buildtest.yml: Run full "make check" with --without-default-devices Thomas Huth
2023-05-22 11:50 ` [PULL 19/20] acpi/tests/avocado/bits: enable bios bits avocado tests on gitlab CI pipeline Thomas Huth
2023-05-22 11:50 ` [PULL 20/20] memory: stricter checks prior to unsetting engaged_in_io Thomas Huth
2023-05-22 22:20 ` [PULL 00/20] Allow "make check" with "--without-default-devices" Richard Henderson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230522115014.1110840-4-thuth@redhat.com \
--to=thuth@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.