~ubuntu-branches/debian/jessie/qemu/jessie

« back to all changes in this revision

Viewing changes to hw/syborg_timer.c

  • Committer: Package Import Robot
  • Author(s): Vagrant Cascadian
  • Date: 2011-10-03 12:29:18 UTC
  • mfrom: (1.2.13) (10.2.6 experimental)
  • Revision ID: package-import@ubuntu.com-20111003122918-zc4kv6epchrbgdta
Tags: 0.15.0+dfsg-1
* New upstream version.
* Install new qemu-system, qemu-user and qemu-user-static variants: 
  lm32, microblazeel, s390x, unicore32
* Patch from upstream to set QEMU_INCLUDES before QEMU_CFLAGS.
* Update debian/watch to check http://qemu.org/download.

Show diffs side-by-side

added added

removed removed

Lines of Context:
174
174
    syborg_timer_write
175
175
};
176
176
 
177
 
static void syborg_timer_save(QEMUFile *f, void *opaque)
178
 
{
179
 
    SyborgTimerState *s = opaque;
180
 
 
181
 
    qemu_put_be32(f, s->running);
182
 
    qemu_put_be32(f, s->oneshot);
183
 
    qemu_put_be32(f, s->limit);
184
 
    qemu_put_be32(f, s->int_level);
185
 
    qemu_put_be32(f, s->int_enabled);
186
 
    qemu_put_ptimer(f, s->timer);
187
 
}
188
 
 
189
 
static int syborg_timer_load(QEMUFile *f, void *opaque, int version_id)
190
 
{
191
 
    SyborgTimerState *s = opaque;
192
 
 
193
 
    if (version_id != 1)
194
 
        return -EINVAL;
195
 
 
196
 
    s->running = qemu_get_be32(f);
197
 
    s->oneshot = qemu_get_be32(f);
198
 
    s->limit = qemu_get_be32(f);
199
 
    s->int_level = qemu_get_be32(f);
200
 
    s->int_enabled = qemu_get_be32(f);
201
 
    qemu_get_ptimer(f, s->timer);
202
 
 
203
 
    return 0;
204
 
}
 
177
static const VMStateDescription vmstate_syborg_timer = {
 
178
    .name = "syborg_timer",
 
179
    .version_id = 1,
 
180
    .minimum_version_id = 1,
 
181
    .minimum_version_id_old = 1,
 
182
    .fields      = (VMStateField[]) {
 
183
        VMSTATE_INT32(running, SyborgTimerState),
 
184
        VMSTATE_INT32(oneshot, SyborgTimerState),
 
185
        VMSTATE_UINT32(limit, SyborgTimerState),
 
186
        VMSTATE_UINT32(int_level, SyborgTimerState),
 
187
        VMSTATE_UINT32(int_enabled, SyborgTimerState),
 
188
        VMSTATE_PTIMER(timer, SyborgTimerState),
 
189
        VMSTATE_END_OF_LIST()
 
190
    }
 
191
};
205
192
 
206
193
static int syborg_timer_init(SysBusDevice *dev)
207
194
{
222
209
    bh = qemu_bh_new(syborg_timer_tick, s);
223
210
    s->timer = ptimer_init(bh);
224
211
    ptimer_set_freq(s->timer, s->freq);
225
 
    register_savevm(&dev->qdev, "syborg_timer", -1, 1,
226
 
                    syborg_timer_save, syborg_timer_load, s);
 
212
    vmstate_register(&dev->qdev, -1, &vmstate_syborg_timer, s);
227
213
    return 0;
228
214
}
229
215