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 <odaki@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