From patchwork Tue Dec 11 22:58:02 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [v2,4/6] hw/ds1338.c: Ensure state is properly initialized. X-Patchwork-Submitter: Antoine Mathys X-Patchwork-Id: 205334 Message-Id: <50C7BA7A.5060705@gmail.com> To: qemu-devel@nongnu.org Cc: Peter Maydell , paul@codesourcery.com Date: Tue, 11 Dec 2012 23:58:02 +0100 From: Antoine Mathys List-Id: Signed-off-by: Antoine Mathys --- hw/ds1338.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/hw/ds1338.c b/hw/ds1338.c index 0f88720..b4d5b74 100644 --- a/hw/ds1338.c +++ b/hw/ds1338.c @@ -179,6 +179,15 @@ static int ds1338_init(I2CSlave *i2c) return 0; } +static void ds1338_reset(DeviceState *dev) +{ + DS1338State *s = FROM_I2C_SLAVE(DS1338State, I2C_SLAVE_FROM_QDEV(dev)); + + /* The clock is running and synchronized with the host */ + s->offset = 0; + memset(s->nvram, 0, NVRAM_SIZE); +} + static void ds1338_class_init(ObjectClass *klass, void *data) { DeviceClass *dc = DEVICE_CLASS(klass); @@ -188,6 +197,7 @@ static void ds1338_class_init(ObjectClass *klass, void *data) k->event = ds1338_event; k->recv = ds1338_recv; k->send = ds1338_send; + dc->reset = ds1338_reset; dc->vmsd = &vmstate_ds1338; }