|
@@ -94,14 +94,6 @@ static void macio_bar_setup(MacIOState *s)
|
|
macio_escc_legacy_setup(s);
|
|
macio_escc_legacy_setup(s);
|
|
}
|
|
}
|
|
|
|
|
|
-static void macio_init_child_obj(MacIOState *s, const char *childname,
|
|
|
|
- void *child, size_t childsize,
|
|
|
|
- const char *childtype)
|
|
|
|
-{
|
|
|
|
- object_initialize_child_with_props(OBJECT(s), childname, child, childsize,
|
|
|
|
- childtype, &error_abort, NULL);
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static void macio_common_realize(PCIDevice *d, Error **errp)
|
|
static void macio_common_realize(PCIDevice *d, Error **errp)
|
|
{
|
|
{
|
|
MacIOState *s = MACIO(d);
|
|
MacIOState *s = MACIO(d);
|
|
@@ -218,13 +210,12 @@ static void macio_oldworld_realize(PCIDevice *d, Error **errp)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-static void macio_init_ide(MacIOState *s, MACIOIDEState *ide, size_t ide_size,
|
|
|
|
- int index)
|
|
|
|
|
|
+static void macio_init_ide(MacIOState *s, MACIOIDEState *ide, int index)
|
|
{
|
|
{
|
|
gchar *name = g_strdup_printf("ide[%i]", index);
|
|
gchar *name = g_strdup_printf("ide[%i]", index);
|
|
uint32_t addr = 0x1f000 + ((index + 1) * 0x1000);
|
|
uint32_t addr = 0x1f000 + ((index + 1) * 0x1000);
|
|
|
|
|
|
- macio_init_child_obj(s, name, ide, ide_size, TYPE_MACIO_IDE);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), name, ide, TYPE_MACIO_IDE);
|
|
qdev_prop_set_uint32(DEVICE(ide), "addr", addr);
|
|
qdev_prop_set_uint32(DEVICE(ide), "addr", addr);
|
|
memory_region_add_subregion(&s->bar, addr, &ide->mem);
|
|
memory_region_add_subregion(&s->bar, addr, &ide->mem);
|
|
g_free(name);
|
|
g_free(name);
|
|
@@ -242,16 +233,15 @@ static void macio_oldworld_init(Object *obj)
|
|
qdev_prop_allow_set_link_before_realize,
|
|
qdev_prop_allow_set_link_before_realize,
|
|
0);
|
|
0);
|
|
|
|
|
|
- macio_init_child_obj(s, "cuda", &s->cuda, sizeof(s->cuda), TYPE_CUDA);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), "cuda", &s->cuda, TYPE_CUDA);
|
|
|
|
|
|
- macio_init_child_obj(s, "nvram", &os->nvram, sizeof(os->nvram),
|
|
|
|
- TYPE_MACIO_NVRAM);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), "nvram", &os->nvram, TYPE_MACIO_NVRAM);
|
|
dev = DEVICE(&os->nvram);
|
|
dev = DEVICE(&os->nvram);
|
|
qdev_prop_set_uint32(dev, "size", 0x2000);
|
|
qdev_prop_set_uint32(dev, "size", 0x2000);
|
|
qdev_prop_set_uint32(dev, "it_shift", 4);
|
|
qdev_prop_set_uint32(dev, "it_shift", 4);
|
|
|
|
|
|
for (i = 0; i < 2; i++) {
|
|
for (i = 0; i < 2; i++) {
|
|
- macio_init_ide(s, &os->ide[i], sizeof(os->ide[i]), i);
|
|
|
|
|
|
+ macio_init_ide(s, &os->ide[i], i);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -396,11 +386,10 @@ static void macio_newworld_init(Object *obj)
|
|
qdev_prop_allow_set_link_before_realize,
|
|
qdev_prop_allow_set_link_before_realize,
|
|
0);
|
|
0);
|
|
|
|
|
|
- macio_init_child_obj(s, "gpio", &ns->gpio, sizeof(ns->gpio),
|
|
|
|
- TYPE_MACIO_GPIO);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), "gpio", &ns->gpio, TYPE_MACIO_GPIO);
|
|
|
|
|
|
for (i = 0; i < 2; i++) {
|
|
for (i = 0; i < 2; i++) {
|
|
- macio_init_ide(s, &ns->ide[i], sizeof(ns->ide[i]), i);
|
|
|
|
|
|
+ macio_init_ide(s, &ns->ide[i], i);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -413,10 +402,9 @@ static void macio_instance_init(Object *obj)
|
|
qbus_create_inplace(&s->macio_bus, sizeof(s->macio_bus), TYPE_MACIO_BUS,
|
|
qbus_create_inplace(&s->macio_bus, sizeof(s->macio_bus), TYPE_MACIO_BUS,
|
|
DEVICE(obj), "macio.0");
|
|
DEVICE(obj), "macio.0");
|
|
|
|
|
|
- macio_init_child_obj(s, "dbdma", &s->dbdma, sizeof(s->dbdma),
|
|
|
|
- TYPE_MAC_DBDMA);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), "dbdma", &s->dbdma, TYPE_MAC_DBDMA);
|
|
|
|
|
|
- macio_init_child_obj(s, "escc", &s->escc, sizeof(s->escc), TYPE_ESCC);
|
|
|
|
|
|
+ object_initialize_child(OBJECT(s), "escc", &s->escc, TYPE_ESCC);
|
|
}
|
|
}
|
|
|
|
|
|
static const VMStateDescription vmstate_macio_oldworld = {
|
|
static const VMStateDescription vmstate_macio_oldworld = {
|