diff mbox

[3/5] realview: convert realview i2c to VMState

Message ID 1319540983-4248-4-git-send-email-benoit.canet@gmail.com
State New
Headers show

Commit Message

Benoit Canet Oct. 25, 2011, 11:09 a.m. UTC
Signed-off-by: Benoit Canet <benoit.canet@gmail.com>
---
 hw/realview.c |   21 +++++++++++++++++++--
 1 files changed, 19 insertions(+), 2 deletions(-)
diff mbox

Patch

diff --git a/hw/realview.c b/hw/realview.c
index 11ffb8a..2120600 100644
--- a/hw/realview.c
+++ b/hw/realview.c
@@ -24,10 +24,26 @@ 
 typedef struct {
     SysBusDevice busdev;
     bitbang_i2c_interface *bitbang;
-    int out;
-    int in;
+    int32_t out;
+    int32_t in;
 } RealViewI2CState;
 
+extern VMStateDescription vmstate_bitbang_i2c;
+
+const VMStateDescription vmstate_realview_i2c = {
+    .name = "realview_i2c",
+    .version_id = 1,
+    .minimum_version_id = 1,
+    .minimum_version_id_old = 1,
+    .fields = (VMStateField[]) {
+        VMSTATE_STRUCT_POINTER(bitbang, RealViewI2CState, vmstate_bitbang_i2c,
+                       bitbang_i2c_interface *),
+        VMSTATE_INT32(out, RealViewI2CState),
+        VMSTATE_INT32(in, RealViewI2CState),
+        VMSTATE_END_OF_LIST()
+    }
+};
+
 static uint32_t realview_i2c_read(void *opaque, target_phys_addr_t offset)
 {
     RealViewI2CState *s = (RealViewI2CState *)opaque;
@@ -90,6 +106,7 @@  static SysBusDeviceInfo realview_i2c_info = {
     .init = realview_i2c_init,
     .qdev.name  = "realview_i2c",
     .qdev.size  = sizeof(RealViewI2CState),
+    .qdev.vmsd  = &vmstate_realview_i2c,
 };
 
 static void realview_register_devices(void)