From: Marc-André Lureau <[email protected]> Remove the TODO comment that documented the workaround, as it is no longer needed.
Suggested-by: Cédric Le Goater <[email protected]> Reviewed-by: Cédric Le Goater <[email protected]> Signed-off-by: Marc-André Lureau <[email protected]> --- hw/fsi/aspeed_apb2opb.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/hw/fsi/aspeed_apb2opb.c b/hw/fsi/aspeed_apb2opb.c index 36092468391..058abc86452 100644 --- a/hw/fsi/aspeed_apb2opb.c +++ b/hw/fsi/aspeed_apb2opb.c @@ -273,6 +273,7 @@ static void fsi_aspeed_apb2opb_init(Object *o) for (i = 0; i < ASPEED_FSI_NUM; i++) { object_initialize_child(o, "fsi-master[*]", &s->fsi[i], TYPE_FSI_MASTER); + qbus_init(&s->opb[i], sizeof(s->opb[i]), TYPE_OP_BUS, DEVICE(s), NULL); } } @@ -282,18 +283,6 @@ static void fsi_aspeed_apb2opb_realize(DeviceState *dev, Error **errp) AspeedAPB2OPBState *s = ASPEED_APB2OPB(dev); int i; - /* - * TODO: The OPBus model initializes the OPB address space in - * the .instance_init handler and this is problematic for test - * device-introspect-test. To avoid a memory corruption and a QEMU - * crash, qbus_init() should be called from realize(). Something to - * improve. Possibly, OPBus could also be removed. - */ - for (i = 0; i < ASPEED_FSI_NUM; i++) { - qbus_init(&s->opb[i], sizeof(s->opb[i]), TYPE_OP_BUS, DEVICE(s), - NULL); - } - sysbus_init_irq(sbd, &s->irq); memory_region_init_io(&s->iomem, OBJECT(s), &aspeed_apb2opb_ops, s, -- 2.54.0
