mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 18:44:58 -06:00
ppc/ppc405: Use an explicit I2C object
Having an explicit I2C model object will help if one day we want to add I2C devices on the bus from the machine init routine. Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Signed-off-by: Cédric Le Goater <clg@kaod.org> [balaton: Symplify sysbus device casts for readibility] Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu> Message-Id: <68eb8b5ac408ca8cc981ebf53a3e154c0d34c7f6.1660746880.git.balaton@eik.bme.hu> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
This commit is contained in:
parent
a55b213646
commit
111913fb2d
2 changed files with 10 additions and 2 deletions
|
@ -1096,6 +1096,8 @@ static void ppc405_soc_instance_init(Object *obj)
|
|||
|
||||
object_initialize_child(obj, "dma", &s->dma, TYPE_PPC405_DMA);
|
||||
|
||||
object_initialize_child(obj, "i2c", &s->i2c, TYPE_PPC4xx_I2C);
|
||||
|
||||
object_initialize_child(obj, "ebc", &s->ebc, TYPE_PPC4xx_EBC);
|
||||
|
||||
object_initialize_child(obj, "opba", &s->opba, TYPE_PPC405_OPBA);
|
||||
|
@ -1188,8 +1190,12 @@ static void ppc405_soc_realize(DeviceState *dev, Error **errp)
|
|||
}
|
||||
|
||||
/* I2C controller */
|
||||
sysbus_create_simple(TYPE_PPC4xx_I2C, 0xef600500,
|
||||
qdev_get_gpio_in(DEVICE(&s->uic), 2));
|
||||
sbd = SYS_BUS_DEVICE(&s->i2c);
|
||||
if (!sysbus_realize(sbd, errp)) {
|
||||
return;
|
||||
}
|
||||
sysbus_mmio_map(sbd, 0, 0xef600500);
|
||||
sysbus_connect_irq(sbd, 0, qdev_get_gpio_in(DEVICE(&s->uic), 2));
|
||||
|
||||
/* GPIO */
|
||||
sbd = SYS_BUS_DEVICE(&s->gpio);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue