diff options
author | Paolo Bonzini <pbonzini@redhat.com> | 2012-03-28 16:34:12 +0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2012-04-02 15:04:15 -0500 |
commit | f05f6b4adb4db3affb0cdd17383b0a7e905e66e1 (patch) | |
tree | c95bfd1b99970b8cf0b3ac8aa3a7635fe19924d3 | |
parent | da57febfed7bad11be79f047b59719c38abd0712 (diff) |
qdev: put all devices under /machine
Avoid cluttering too much the QOM root.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r-- | hw/piix_pci.c | 2 | ||||
-rw-r--r-- | hw/ppc_prep.c | 2 | ||||
-rw-r--r-- | hw/qdev-monitor.c | 4 | ||||
-rw-r--r-- | hw/qdev.c | 13 | ||||
-rw-r--r-- | hw/qdev.h | 2 |
5 files changed, 18 insertions, 5 deletions
diff --git a/hw/piix_pci.c b/hw/piix_pci.c index 9017565424..179d9a6bb9 100644 --- a/hw/piix_pci.c +++ b/hw/piix_pci.c @@ -276,7 +276,7 @@ static PCIBus *i440fx_common_init(const char *device_name, b = pci_bus_new(&s->busdev.qdev, NULL, pci_address_space, address_space_io, 0); s->bus = b; - object_property_add_child(object_get_root(), "i440fx", OBJECT(dev), NULL); + object_property_add_child(qdev_get_machine(), "i440fx", OBJECT(dev), NULL); qdev_init_nofail(dev); d = pci_create_simple(b, 0, device_name); diff --git a/hw/ppc_prep.c b/hw/ppc_prep.c index 86c93364dd..9d8e6592e1 100644 --- a/hw/ppc_prep.c +++ b/hw/ppc_prep.c @@ -615,7 +615,7 @@ static void ppc_prep_init (ram_addr_t ram_size, sys = sysbus_from_qdev(dev); pcihost = DO_UPCAST(PCIHostState, busdev, sys); pcihost->address_space = get_system_memory(); - object_property_add_child(object_get_root(), "raven", OBJECT(dev), NULL); + object_property_add_child(qdev_get_machine(), "raven", OBJECT(dev), NULL); qdev_init_nofail(dev); pci_bus = (PCIBus *)qdev_get_child_bus(dev, "pci.0"); if (pci_bus == NULL) { diff --git a/hw/qdev-monitor.c b/hw/qdev-monitor.c index 031cb83e1a..4783366cf4 100644 --- a/hw/qdev-monitor.c +++ b/hw/qdev-monitor.c @@ -180,7 +180,7 @@ static Object *qdev_get_peripheral(void) static Object *dev; if (dev == NULL) { - dev = container_get("/peripheral"); + dev = container_get("/machine/peripheral"); } return dev; @@ -191,7 +191,7 @@ static Object *qdev_get_peripheral_anon(void) static Object *dev; if (dev == NULL) { - dev = container_get("/peripheral-anon"); + dev = container_get("/machine/peripheral-anon"); } return dev; @@ -157,7 +157,7 @@ int qdev_init(DeviceState *dev) static int unattached_count = 0; gchar *name = g_strdup_printf("device[%d]", unattached_count++); - object_property_add_child(container_get("/unattached"), name, + object_property_add_child(container_get("/machine/unattached"), name, OBJECT(dev), NULL); g_free(name); } @@ -668,6 +668,17 @@ void device_reset(DeviceState *dev) } } +Object *qdev_get_machine(void) +{ + static Object *dev; + + if (dev == NULL) { + dev = container_get("/machine"); + } + + return dev; +} + static TypeInfo device_type_info = { .name = TYPE_DEVICE, .parent = TYPE_OBJECT, @@ -349,6 +349,8 @@ BusInfo *qdev_get_bus_info(DeviceState *dev); Property *qdev_get_props(DeviceState *dev); +Object *qdev_get_machine(void); + /* FIXME: make this a link<> */ void qdev_set_parent_bus(DeviceState *dev, BusState *bus); |