Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
hw/sparc64/sun4u: Use MachineClass->default_nic and MachineClass->no_…
…parallel

Announce the default NIC via MachineClass->default_nic and set up
MachineClass->no_parallel according to the availability of the
"isa-parallel" device, so that the Sun machines also work when
QEMU has been configured with "--without-default-devices".

Message-Id: <20230512124033.502654-11-thuth@redhat.com>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
  • Loading branch information
huth committed May 22, 2023
1 parent 545d857 commit e8273b0
Showing 1 changed file with 8 additions and 3 deletions.
11 changes: 8 additions & 3 deletions hw/sparc64/sun4u.c
Expand Up @@ -553,6 +553,7 @@ static void sun4uv_init(MemoryRegion *address_space_mem,
MachineState *machine,
const struct hwdef *hwdef)
{
MachineClass *mc = MACHINE_GET_CLASS(machine);
SPARCCPU *cpu;
Nvram *nvram;
unsigned int i;
Expand Down Expand Up @@ -645,15 +646,15 @@ static void sun4uv_init(MemoryRegion *address_space_mem,
PCIBus *bus;
nd = &nd_table[i];

if (!nd->model || strcmp(nd->model, "sunhme") == 0) {
if (!nd->model || strcmp(nd->model, mc->default_nic) == 0) {
if (!onboard_nic) {
pci_dev = pci_new_multifunction(PCI_DEVFN(1, 1),
true, "sunhme");
true, mc->default_nic);
bus = pci_busA;
memcpy(&macaddr, &nd->macaddr.a, sizeof(MACAddr));
onboard_nic = true;
} else {
pci_dev = pci_new(-1, "sunhme");
pci_dev = pci_new(-1, mc->default_nic);
bus = pci_busB;
}
} else {
Expand Down Expand Up @@ -816,6 +817,8 @@ static void sun4u_class_init(ObjectClass *oc, void *data)
mc->default_cpu_type = SPARC_CPU_TYPE_NAME("TI-UltraSparc-IIi");
mc->ignore_boot_device_suffixes = true;
mc->default_display = "std";
mc->default_nic = "sunhme";
mc->no_parallel = !module_object_class_by_name(TYPE_ISA_PARALLEL);
fwc->get_dev_path = sun4u_fw_dev_path;
}

Expand All @@ -840,6 +843,8 @@ static void sun4v_class_init(ObjectClass *oc, void *data)
mc->default_boot_order = "c";
mc->default_cpu_type = SPARC_CPU_TYPE_NAME("Sun-UltraSparc-T1");
mc->default_display = "std";
mc->default_nic = "sunhme";
mc->no_parallel = !module_object_class_by_name(TYPE_ISA_PARALLEL);
}

static const TypeInfo sun4v_type = {
Expand Down

0 comments on commit e8273b0

Please sign in to comment.