static int ivshmem_load_old(QEMUFile *f, void *opaque, int version_id) { IVShmemState *s = opaque; PCIDevice *pdev = PCI_DEVICE(s); int ret; IVSHMEM_DPRINTF("ivshmem_load_old\n"); if (version_id != 0) { return -EINVAL; } ret = ivshmem_pre_load(s); if (ret) { return ret; } ret = pci_device_load(pdev, f); if (ret) { return ret; } if (ivshmem_has_feature(s, IVSHMEM_MSI)) { msix_load(pdev, f); ivshmem_msix_vector_use(s); } else { s->intrstatus = qemu_get_be32(f); s->intrmask = qemu_get_be32(f); } return 0; }
static int ivshmem_load(QEMUFile* f, void *opaque, int version_id) { IVSHMEM_DPRINTF("ivshmem_load\n"); IVShmemState *proxy = opaque; int ret; if (version_id > 0) { return -EINVAL; } if (proxy->role_val == IVSHMEM_PEER) { fprintf(stderr, "ivshmem: 'peer' devices are not migratable\n"); return -EINVAL; } ret = pci_device_load(&proxy->dev, f); if (ret) { return ret; } if (ivshmem_has_feature(proxy, IVSHMEM_MSI)) { msix_load(&proxy->dev, f); ivshmem_use_msix(proxy); } else { proxy->intrstatus = qemu_get_be32(f); proxy->intrmask = qemu_get_be32(f); } return 0; }
static int ivshmem_load_old(QEMUFile *f, void *opaque, int version_id) { IVShmemState *s = opaque; PCIDevice *pdev = PCI_DEVICE(s); int ret; IVSHMEM_DPRINTF("ivshmem_load_old\n"); if (version_id != 0) { return -EINVAL; } if (s->role_val == IVSHMEM_PEER) { error_report("'peer' devices are not migratable"); return -EINVAL; } ret = pci_device_load(pdev, f); if (ret) { return ret; } if (ivshmem_has_feature(s, IVSHMEM_MSI)) { msix_load(pdev, f); ivshmem_use_msix(s); } else { s->intrstatus = qemu_get_be32(f); s->intrmask = qemu_get_be32(f); } return 0; }
static int pci_unin_load(QEMUFile* f, void *opaque, int version_id) { PCIDevice *d = opaque; if (version_id != 1) return -EINVAL; return pci_device_load(d, f); }
static int tnetw1130_load(QEMUFile * f, void *opaque, int version_id) { pci_tnetw1130_t *d = (pci_tnetw1130_t *) opaque; #if 0 tnetw1130_t *s = &d->tnetw1130; #endif int result = 0; TRACE(TNETW, logout("\n")); if (version_id == tnetw1130_version) { result = pci_device_load(&d->dev, f); } else { result = -EINVAL; } return result; }
static int ppc4xx_pci_load(QEMUFile *f, void *opaque, int version_id) { PPC4xxPCIState *controller = opaque; int i; if (version_id != 1) return -EINVAL; pci_device_load(controller->pci_dev, f); for (i = 0; i < PPC4xx_PCI_NR_PMMS; i++) { qemu_get_be32s(f, &controller->pmm[i].la); qemu_get_be32s(f, &controller->pmm[i].ma); qemu_get_be32s(f, &controller->pmm[i].pcila); qemu_get_be32s(f, &controller->pmm[i].pciha); } for (i = 0; i < PPC4xx_PCI_NR_PTMS; i++) { qemu_get_be32s(f, &controller->ptm[i].ms); qemu_get_be32s(f, &controller->ptm[i].la); } return 0; }