Make AddressSpaces QOM objects to ensure that they are destroyed when their owners are finalized and also to get a unique path for debugging output.
The name arguments were used to distinguish AddresSpaces in debugging output, but they will represent property names after QOM-ification and debugging output will show QOM paths. So change them to make them more concise and also avoid conflicts with other properties. Signed-off-by: Akihiko Odaki <od...@rsg.ci.i.u-tokyo.ac.jp> --- hw/misc/aspeed_hace.c | 2 +- hw/misc/auxbus.c | 2 +- hw/misc/bcm2835_mbox.c | 3 +-- hw/misc/bcm2835_property.c | 3 +-- hw/misc/max78000_gcr.c | 2 +- hw/misc/tz-mpc.c | 6 ++---- hw/misc/tz-msc.c | 2 +- hw/misc/tz-ppc.c | 5 ++++- 8 files changed, 12 insertions(+), 13 deletions(-) diff --git a/hw/misc/aspeed_hace.c b/hw/misc/aspeed_hace.c index 198363fd64fa..a8a4a91afac8 100644 --- a/hw/misc/aspeed_hace.c +++ b/hw/misc/aspeed_hace.c @@ -603,7 +603,7 @@ static void aspeed_hace_realize(DeviceState *dev, Error **errp) return; } - address_space_init(&s->dram_as, NULL, s->dram_mr, "dram"); + address_space_init(&s->dram_as, OBJECT(s), s->dram_mr, "as"); sysbus_init_mmio(sbd, &s->iomem); } diff --git a/hw/misc/auxbus.c b/hw/misc/auxbus.c index e5448ef3cc60..d20dd8789ae6 100644 --- a/hw/misc/auxbus.c +++ b/hw/misc/auxbus.c @@ -74,7 +74,7 @@ AUXBus *aux_bus_init(DeviceState *parent, const char *name) /* Memory related. */ bus->aux_io = g_malloc(sizeof(*bus->aux_io)); memory_region_init(bus->aux_io, OBJECT(bus), "aux-io", 1 * MiB); - address_space_init(&bus->aux_addr_space, NULL, bus->aux_io, "aux-io"); + address_space_init(&bus->aux_addr_space, OBJECT(bus), bus->aux_io, "as"); return bus; } diff --git a/hw/misc/bcm2835_mbox.c b/hw/misc/bcm2835_mbox.c index 4bf3c59a40a1..f26aa39ca4e5 100644 --- a/hw/misc/bcm2835_mbox.c +++ b/hw/misc/bcm2835_mbox.c @@ -310,8 +310,7 @@ static void bcm2835_mbox_realize(DeviceState *dev, Error **errp) obj = object_property_get_link(OBJECT(dev), "mbox-mr", &error_abort); s->mbox_mr = MEMORY_REGION(obj); - address_space_init(&s->mbox_as, NULL, s->mbox_mr, - TYPE_BCM2835_MBOX "-memory"); + address_space_init(&s->mbox_as, OBJECT(s), s->mbox_mr, "as"); bcm2835_mbox_reset(dev); } diff --git a/hw/misc/bcm2835_property.c b/hw/misc/bcm2835_property.c index 8bdde2d248b5..e86d001f17fb 100644 --- a/hw/misc/bcm2835_property.c +++ b/hw/misc/bcm2835_property.c @@ -540,8 +540,7 @@ static void bcm2835_property_realize(DeviceState *dev, Error **errp) obj = object_property_get_link(OBJECT(dev), "dma-mr", &error_abort); s->dma_mr = MEMORY_REGION(obj); - address_space_init(&s->dma_as, NULL, s->dma_mr, - TYPE_BCM2835_PROPERTY "-memory"); + address_space_init(&s->dma_as, OBJECT(s), s->dma_mr, "as"); obj = object_property_get_link(OBJECT(dev), "otp", &error_abort); s->otp = BCM2835_OTP(obj); diff --git a/hw/misc/max78000_gcr.c b/hw/misc/max78000_gcr.c index 0a0692c7cffe..048b265be348 100644 --- a/hw/misc/max78000_gcr.c +++ b/hw/misc/max78000_gcr.c @@ -320,7 +320,7 @@ static void max78000_gcr_realize(DeviceState *dev, Error **errp) { Max78000GcrState *s = MAX78000_GCR(dev); - address_space_init(&s->sram_as, NULL, s->sram, "sram"); + address_space_init(&s->sram_as, OBJECT(s), s->sram, "as"); } static void max78000_gcr_class_init(ObjectClass *klass, const void *data) diff --git a/hw/misc/tz-mpc.c b/hw/misc/tz-mpc.c index b8be234630e3..b5415d46feae 100644 --- a/hw/misc/tz-mpc.c +++ b/hw/misc/tz-mpc.c @@ -550,10 +550,8 @@ static void tz_mpc_realize(DeviceState *dev, Error **errp) memory_region_init_io(&s->blocked_io, obj, &tz_mpc_mem_blocked_ops, s, "tz-mpc-blocked-io", size); - address_space_init(&s->downstream_as, NULL, s->downstream, - "tz-mpc-downstream"); - address_space_init(&s->blocked_io_as, NULL, &s->blocked_io, - "tz-mpc-blocked-io"); + address_space_init(&s->downstream_as, obj, s->downstream, "downstream-as"); + address_space_init(&s->blocked_io_as, obj, &s->blocked_io, "blocked-io-as"); s->blk_lut = g_new0(uint32_t, s->blk_max); } diff --git a/hw/misc/tz-msc.c b/hw/misc/tz-msc.c index ed1c95e2e9fa..07a8a5137d22 100644 --- a/hw/misc/tz-msc.c +++ b/hw/misc/tz-msc.c @@ -260,7 +260,7 @@ static void tz_msc_realize(DeviceState *dev, Error **errp) } size = memory_region_size(s->downstream); - address_space_init(&s->downstream_as, NULL, s->downstream, name); + address_space_init(&s->downstream_as, obj, s->downstream, "as"); memory_region_init_io(&s->upstream, obj, &tz_msc_ops, s, name, size); sysbus_init_mmio(sbd, &s->upstream); } diff --git a/hw/misc/tz-ppc.c b/hw/misc/tz-ppc.c index 28a1c27aa3cc..ac928accec2d 100644 --- a/hw/misc/tz-ppc.c +++ b/hw/misc/tz-ppc.c @@ -257,6 +257,7 @@ static void tz_ppc_realize(DeviceState *dev, Error **errp) for (i = 0; i <= max_port; i++) { TZPPCPort *port = &s->port[i]; char *name; + g_autofree char *as_name = NULL; uint64_t size; if (!port->downstream) { @@ -274,9 +275,11 @@ static void tz_ppc_realize(DeviceState *dev, Error **errp) } name = g_strdup_printf("tz-ppc-port[%d]", i); + as_name = g_strconcat(name, "-as", NULL); port->ppc = s; - address_space_init(&port->downstream_as, NULL, port->downstream, name); + address_space_init(&port->downstream_as, obj, port->downstream, + as_name); size = memory_region_size(port->downstream); memory_region_init_io(&port->upstream, obj, &tz_ppc_ops, -- 2.51.0