From 8a3d80faf7794820da5e9666e4adf6a7d4f80f7b Mon Sep 17 00:00:00 2001 From: "Michael S. Tsirkin" Date: Mon, 20 Feb 2012 01:34:01 +0200 Subject: [PATCH] pci_bridge: user-friendly default bus name For a pci bridge device, if we don't override the name with custom code, the bus will be addressed as .0, where id is the id specified by the user. Since PCI Bridge devices have a single bus each, we don't need the index: address the bus using the parent device name. This is better since this way users don't care about our internal bus/device distinctions. As far as I could see, we only have built-in bridges at this point which always override the name. So this change will only affect ioh3420.c. Signed-off-by: Michael S. Tsirkin --- hw/pci_bridge.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/hw/pci_bridge.c b/hw/pci_bridge.c index fea3873943..eeee8a6ad0 100644 --- a/hw/pci_bridge.c +++ b/hw/pci_bridge.c @@ -314,6 +314,16 @@ int pci_bridge_initfn(PCIDevice *dev) pci_set_word(dev->config + PCI_SEC_STATUS, PCI_STATUS_66MHZ | PCI_STATUS_FAST_BACK); + /* + * If we don't specify the name, the bus will be addressed as .0, where + * id is the device id. + * Since PCI Bridge devices have a single bus each, we don't need the index: + * let users address the bus using the device name. + */ + if (!br->bus_name && dev->qdev.id && *dev->qdev.id) { + br->bus_name = dev->qdev.id; + } + qbus_create_inplace(&sec_bus->qbus, &pci_bus_info, &dev->qdev, br->bus_name); sec_bus->parent_dev = dev;