diff --git a/hw/ppc/pnv_i2c.c b/hw/ppc/pnv_i2c.c index c8e90c636f..60f7164a1c 100644 --- a/hw/ppc/pnv_i2c.c +++ b/hw/ppc/pnv_i2c.c @@ -19,6 +19,7 @@ #include "hw/ppc/pnv_i2c.h" #include "hw/ppc/pnv_xscom.h" #include "hw/ppc/fdt.h" +#include "migration/vmstate.h" #include @@ -549,6 +550,15 @@ static const Property pnv_i2c_properties[] = { DEFINE_PROP_UINT32("num-busses", PnvI2C, num_busses, 1), }; +static const VMStateDescription pnv_i2c_vmstate = { + .name = TYPE_PNV_I2C, + .version_id = 1, + .fields = (const VMStateField[]) { + VMSTATE_UINT64_ARRAY(regs, PnvI2C, PNV_I2C_REGS), + VMSTATE_END_OF_LIST(), + }, +}; + static void pnv_i2c_class_init(ObjectClass *klass, const void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -561,6 +571,7 @@ static void pnv_i2c_class_init(ObjectClass *klass, const void *data) dc->desc = "PowerNV I2C"; dc->realize = pnv_i2c_realize; + dc->vmsd = &pnv_i2c_vmstate; device_class_set_props(dc, pnv_i2c_properties); }