adb: introduce realize/unrealize and VMStateDescription for ADB bus
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> Tested-by: Finn Thain <fthain@telegraphics.com.au> Acked-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20200623204936.24064-7-mark.cave-ayland@ilande.co.uk>
This commit is contained in:
parent
414eb1d500
commit
0606b28830
@ -89,10 +89,42 @@ int adb_poll(ADBBusState *s, uint8_t *obuf, uint16_t poll_mask)
|
||||
return olen;
|
||||
}
|
||||
|
||||
static const VMStateDescription vmstate_adb_bus = {
|
||||
.name = "adb_bus",
|
||||
.version_id = 0,
|
||||
.minimum_version_id = 0,
|
||||
.fields = (VMStateField[]) {
|
||||
VMSTATE_END_OF_LIST()
|
||||
}
|
||||
};
|
||||
|
||||
static void adb_bus_realize(BusState *qbus, Error **errp)
|
||||
{
|
||||
ADBBusState *adb_bus = ADB_BUS(qbus);
|
||||
|
||||
vmstate_register(NULL, -1, &vmstate_adb_bus, adb_bus);
|
||||
}
|
||||
|
||||
static void adb_bus_unrealize(BusState *qbus)
|
||||
{
|
||||
ADBBusState *adb_bus = ADB_BUS(qbus);
|
||||
|
||||
vmstate_unregister(NULL, &vmstate_adb_bus, adb_bus);
|
||||
}
|
||||
|
||||
static void adb_bus_class_init(ObjectClass *klass, void *data)
|
||||
{
|
||||
BusClass *k = BUS_CLASS(klass);
|
||||
|
||||
k->realize = adb_bus_realize;
|
||||
k->unrealize = adb_bus_unrealize;
|
||||
}
|
||||
|
||||
static const TypeInfo adb_bus_type_info = {
|
||||
.name = TYPE_ADB_BUS,
|
||||
.parent = TYPE_BUS,
|
||||
.instance_size = sizeof(ADBBusState),
|
||||
.class_init = adb_bus_class_init,
|
||||
};
|
||||
|
||||
const VMStateDescription vmstate_adb_device = {
|
||||
|
Loading…
Reference in New Issue
Block a user