Add calls to pci_device_save/load

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4766 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
malc 2008-06-21 17:14:50 +00:00
parent fd07bef4b4
commit 279a65442e
2 changed files with 17 additions and 4 deletions

View File

@ -1190,6 +1190,8 @@ static void ac97_save (QEMUFile *f, void *opaque)
uint8_t active[LAST_INDEX];
AC97LinkState *s = opaque;
pci_device_save (s->pci_dev, f);
qemu_put_be32s (f, &s->glob_cnt);
qemu_put_be32s (f, &s->glob_sta);
qemu_put_be32s (f, &s->cas);
@ -1217,13 +1219,18 @@ static void ac97_save (QEMUFile *f, void *opaque)
static int ac97_load (QEMUFile *f, void *opaque, int version_id)
{
int ret;
size_t i;
uint8_t active[LAST_INDEX];
AC97LinkState *s = opaque;
if (version_id != 1)
if (version_id != 2)
return -EINVAL;
ret = pci_device_load (s->pci_dev, f);
if (ret)
return ret;
qemu_get_be32s (f, &s->glob_cnt);
qemu_get_be32s (f, &s->glob_sta);
qemu_get_be32s (f, &s->cas);
@ -1370,7 +1377,7 @@ int ac97_init (PCIBus *bus, AudioState *audio)
pci_register_io_region (&d->dev, 0, 256 * 4, PCI_ADDRESS_SPACE_IO, ac97_map);
pci_register_io_region (&d->dev, 1, 64 * 4, PCI_ADDRESS_SPACE_IO, ac97_map);
register_savevm ("ac97", 0, 1, ac97_save, ac97_load, s);
register_savevm ("ac97", 0, 2, ac97_save, ac97_load, s);
qemu_register_reset (ac97_on_reset, s);
AUD_register_card (audio, "ac97", &s->card);
ac97_on_reset (s);

View File

@ -936,6 +936,7 @@ static void es1370_save (QEMUFile *f, void *opaque)
ES1370State *s = opaque;
size_t i;
pci_device_save (s->pci_dev, f);
for (i = 0; i < NB_CHANNELS; ++i) {
struct chan *d = &s->chan[i];
qemu_put_be32s (f, &d->shift);
@ -953,13 +954,18 @@ static void es1370_save (QEMUFile *f, void *opaque)
static int es1370_load (QEMUFile *f, void *opaque, int version_id)
{
int ret;
uint32_t ctl, sctl;
ES1370State *s = opaque;
size_t i;
if (version_id != 1)
if (version_id != 2)
return -EINVAL;
ret = pci_device_load (s->pci_dev, f);
if (ret)
return ret;
for (i = 0; i < NB_CHANNELS; ++i) {
struct chan *d = &s->chan[i];
qemu_get_be32s (f, &d->shift);
@ -1056,7 +1062,7 @@ int es1370_init (PCIBus *bus, AudioState *audio)
s->pci_dev = &d->dev;
pci_register_io_region (&d->dev, 0, 256, PCI_ADDRESS_SPACE_IO, es1370_map);
register_savevm ("es1370", 0, 1, es1370_save, es1370_load, s);
register_savevm ("es1370", 0, 2, es1370_save, es1370_load, s);
qemu_register_reset (es1370_on_reset, s);
AUD_register_card (audio, "es1370", &s->card);