Skip to content

Commit

Permalink
hw/pci: remove pci_nic_init_nofail()
Browse files Browse the repository at this point in the history
This function is no longer used, as all its callers have been converted
to use pci_init_nic_devices() instead.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Thomas Huth <thuth@redhat.com>
  • Loading branch information
dwmw2 committed Feb 2, 2024
1 parent 09c292c commit 75942ee
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 75 deletions.
72 changes: 0 additions & 72 deletions hw/pci/pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -1853,78 +1853,6 @@ const pci_class_desc *get_class_desc(int class)
return desc;
}

/* Initialize a PCI NIC. */
PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
const char *default_model,
const char *default_devaddr)
{
const char *devaddr = nd->devaddr ? nd->devaddr : default_devaddr;
GPtrArray *pci_nic_models;
PCIBus *bus;
PCIDevice *pci_dev;
DeviceState *dev;
int devfn;
int i;
int dom, busnr;
unsigned slot;

if (nd->model && !strcmp(nd->model, "virtio")) {
g_free(nd->model);
nd->model = g_strdup("virtio-net-pci");
}

pci_nic_models = qemu_get_nic_models(TYPE_PCI_DEVICE);

if (qemu_show_nic_models(nd->model, (const char **)pci_nic_models->pdata)) {
exit(0);
}

i = qemu_find_nic_model(nd, (const char **)pci_nic_models->pdata,
default_model);
if (i < 0) {
exit(1);
}

if (!rootbus) {
error_report("No primary PCI bus");
exit(1);
}

assert(!rootbus->parent_dev);

if (!devaddr) {
devfn = -1;
busnr = 0;
} else {
if (pci_parse_devaddr(devaddr, &dom, &busnr, &slot, NULL) < 0) {
error_report("Invalid PCI device address %s for device %s",
devaddr, nd->model);
exit(1);
}

if (dom != 0) {
error_report("No support for non-zero PCI domains");
exit(1);
}

devfn = PCI_DEVFN(slot, 0);
}

bus = pci_find_bus_nr(rootbus, busnr);
if (!bus) {
error_report("Invalid PCI device address %s for device %s",
devaddr, nd->model);
exit(1);
}

pci_dev = pci_new(devfn, nd->model);
dev = &pci_dev->qdev;
qdev_set_nic_properties(dev, nd);
pci_realize_and_unref(pci_dev, bus, &error_fatal);
g_ptr_array_free(pci_nic_models, true);
return pci_dev;
}

void pci_init_nic_devices(PCIBus *bus, const char *default_model)
{
qemu_create_nic_bus_devices(&bus->qbus, TYPE_PCI_DEVICE, default_model,
Expand Down
3 changes: 0 additions & 3 deletions include/hw/pci/pci.h
Original file line number Diff line number Diff line change
Expand Up @@ -314,9 +314,6 @@ void pci_device_set_intx_routing_notifier(PCIDevice *dev,
PCIINTxRoutingNotifier notifier);
void pci_device_reset(PCIDevice *dev);

PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus *rootbus,
const char *default_model,
const char *default_devaddr);
void pci_init_nic_devices(PCIBus *bus, const char *default_model);
bool pci_init_nic_in_slot(PCIBus *rootbus, const char *default_model,
const char *alias, const char *devaddr);
Expand Down

0 comments on commit 75942ee

Please sign in to comment.