virQEMUCapsSet(qemuCaps, QEMU_CAPS_CPU_CACHE);
}
- if (ARCH_IS_S390(qemuCaps->arch)) {
- /* Legacy assurance for QEMU_CAPS_CCW */
- if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCW) &&
- virQEMUCapsGet(qemuCaps, QEMU_CAPS_VIRTIO_CCW))
- virQEMUCapsSet(qemuCaps, QEMU_CAPS_CCW);
- }
-
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_CPU_UNAVAILABLE_FEATURES))
virQEMUCapsSet(qemuCaps, QEMU_CAPS_CANONICAL_CPU_FEATURES);
int ret = -1;
virDomainCCWAddressSet *addrs = NULL;
- if (qemuDomainIsS390CCW(def) &&
- virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCW)) {
+ if (qemuDomainIsS390CCW(def)) {
if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VFIO_CCW))
qemuDomainPrimeVfioDeviceAddresses(def, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW);
virDomainDeviceDef *dev)
{
virDomainDeviceInfo *info = virDomainDeviceGetInfo(dev);
- qemuDomainObjPrivate *priv = vm->privateData;
virDomainCCWAddressSet *ccwaddrs = NULL;
int ret = -1;
if (!info->type) {
- if (qemuDomainIsS390CCW(vm->def) &&
- virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_CCW))
+ if (qemuDomainIsS390CCW(vm->def))
info->type = VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW;
}
}
if (qemuDomainIsS390CCW(vm->def) &&
- net->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI &&
- virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_CCW)) {
+ net->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI) {
net->info.type = VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW;
if (!(ccwaddrs = virDomainCCWAddressSetCreateFromDomain(vm->def)))
goto cleanup;
vhostfdName = g_strdup_printf("vhostfd-%d", vhostfd);
if (hostdev->info->type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE) {
- if (qemuDomainIsS390CCW(vm->def) &&
- virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_CCW))
+ if (qemuDomainIsS390CCW(vm->def))
hostdev->info->type = VIR_DOMAIN_DEVICE_ADDRESS_TYPE_CCW;
}
return -1;
}
- if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_CCW)) {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
- _("CCW address type is not supported by this QEMU"));
- return -1;
- }
-
break;
case VIR_DOMAIN_DEVICE_ADDRESS_TYPE_DRIVE:
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_VIRTIO_SCSI);
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_USB_STORAGE);
- virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_CCW);
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_IVSHMEM_PLAIN);
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_DEVICE_IVSHMEM_DOORBELL);
virQEMUCapsSet(priv->qemuCaps, QEMU_CAPS_SCSI_DISK_WWN);
-rtc base=utc \
-no-shutdown \
-boot strict=on \
--device zpci,uid=3,fid=2,target=pci.1,id=zpci3 \
+-device zpci,uid=2,fid=1,target=pci.1,id=zpci2 \
-device pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x1 \
-audiodev '{"id":"audio1","driver":"none"}' \
-device zpci,uid=65535,fid=4294967295,target=hostdev0,id=zpci65535 \
-device vfio-pci,host=ffff:00:00.0,id=hostdev0,bus=pci.1,addr=0x1f \
-device zpci,uid=1,fid=0,target=hostdev1,id=zpci1 \
-device vfio-pci,host=0000:00:00.0,id=hostdev1,bus=pci.0,addr=0x2 \
--device zpci,uid=2,fid=1,target=balloon0,id=zpci2 \
--device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \
+-device virtio-balloon-ccw,id=balloon0,devno=fe.0.0000 \
-msg timestamp=on
-audiodev '{"id":"audio1","driver":"none"}' \
-device zpci,uid=25,fid=31,target=hostdev0,id=zpci25 \
-device vfio-pci,host=0000:00:00.0,id=hostdev0,bus=pci.0,addr=0x8 \
--device zpci,uid=1,fid=0,target=balloon0,id=zpci1 \
--device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x1 \
+-device virtio-balloon-ccw,id=balloon0,devno=fe.0.0000 \
-msg timestamp=on
DO_TEST_CAPS_ARCH_LATEST("hostdev-subsys-mdev-vfio-ccw", "s390x");
DO_TEST_CAPS_ARCH_LATEST("hostdev-subsys-mdev-vfio-ccw-boot",
"s390x");
- DO_TEST_PARSE_ERROR("hostdev-subsys-mdev-vfio-ccw",
- QEMU_CAPS_CCW);
+ DO_TEST_PARSE_ERROR_NOCAPS("hostdev-subsys-mdev-vfio-ccw");
DO_TEST_PARSE_ERROR("hostdev-subsys-mdev-vfio-ccw-duplicate-address",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VFIO_CCW);
DO_TEST_PARSE_ERROR("hostdev-subsys-mdev-vfio-ccw-invalid-address",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VFIO_CCW);
DO_TEST_CAPS_ARCH_LATEST("hostdev-subsys-mdev-vfio-ap",
DO_TEST_FAILURE("cpu-qemu-host-passthrough", QEMU_CAPS_KVM);
qemuTestSetHostArch(&driver, VIR_ARCH_S390X);
- DO_TEST("cpu-s390-zEC12", QEMU_CAPS_KVM, QEMU_CAPS_CCW);
+ DO_TEST("cpu-s390-zEC12", QEMU_CAPS_KVM);
DO_TEST("cpu-s390-features", QEMU_CAPS_KVM, QEMU_CAPS_QUERY_CPU_MODEL_EXPANSION);
DO_TEST_FAILURE("cpu-s390-features", QEMU_CAPS_KVM);
qemuTestSetHostArch(&driver, VIR_ARCH_NONE);
DO_TEST_CAPS_ARCH_LATEST("s390-allow-bogus-usb-none", "s390x");
DO_TEST_CAPS_ARCH_LATEST("s390-allow-bogus-usb-controller", "s390x");
- DO_TEST("s390-panic-no-address", QEMU_CAPS_CCW);
- DO_TEST_PARSE_ERROR("s390-panic-address", QEMU_CAPS_CCW);
- DO_TEST("s390-panic-missing", QEMU_CAPS_CCW);
- DO_TEST_PARSE_ERROR("s390-no-parallel", QEMU_CAPS_CCW);
- DO_TEST("s390-serial", QEMU_CAPS_CCW, QEMU_CAPS_DEVICE_SCLPCONSOLE);
+ DO_TEST_NOCAPS("s390-panic-no-address");
+ DO_TEST_PARSE_ERROR_NOCAPS("s390-panic-address");
+ DO_TEST_NOCAPS("s390-panic-missing");
+ DO_TEST_PARSE_ERROR_NOCAPS("s390-no-parallel");
+ DO_TEST("s390-serial", QEMU_CAPS_DEVICE_SCLPCONSOLE);
DO_TEST("s390-serial-2",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_SCLPCONSOLE,
QEMU_CAPS_DEVICE_SCLPLMCONSOLE);
DO_TEST("s390-serial-console",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_SCLPCONSOLE);
DO_TEST("ppc-dtb",
DO_TEST_CAPS_LATEST("hostdev-scsi-virtio-scsi");
DO_TEST("hostdev-scsi-vhost-scsi-ccw",
- QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_DEVICE_VHOST_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_DEVICE_VHOST_SCSI);
DO_TEST("hostdev-scsi-vhost-scsi-pci",
QEMU_CAPS_VIRTIO_SCSI,
QEMU_CAPS_DEVICE_VHOST_SCSI);
DO_TEST("machine-aeskeywrap-on-caps",
QEMU_CAPS_AES_KEY_WRAP,
QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-aeskeywrap-on-cap",
QEMU_CAPS_AES_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-aeskeywrap-off-caps",
QEMU_CAPS_AES_KEY_WRAP, QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-aeskeywrap-off-cap",
QEMU_CAPS_AES_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-deakeywrap-on-caps",
QEMU_CAPS_AES_KEY_WRAP, QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-deakeywrap-on-cap",
QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-deakeywrap-off-caps",
QEMU_CAPS_AES_KEY_WRAP, QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-deakeywrap-off-cap",
QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-keywrap-none-caps",
QEMU_CAPS_AES_KEY_WRAP, QEMU_CAPS_DEA_KEY_WRAP,
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-keywrap-none",
- QEMU_CAPS_VIRTIO_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("machine-loadparm-s390",
- QEMU_CAPS_CCW,
QEMU_CAPS_LOADPARM);
DO_TEST("machine-loadparm-net-s390",
- QEMU_CAPS_CCW,
QEMU_CAPS_LOADPARM);
DO_TEST("machine-loadparm-multiple-disks-nets-s390",
- QEMU_CAPS_CCW,
QEMU_CAPS_LOADPARM);
DO_TEST_PARSE_ERROR("machine-loadparm-s390-char-invalid",
- QEMU_CAPS_CCW,
QEMU_CAPS_LOADPARM);
DO_TEST_PARSE_ERROR("machine-loadparm-s390-len-invalid",
- QEMU_CAPS_CCW,
QEMU_CAPS_LOADPARM);
DO_TEST_NOCAPS("qemu-ns-domain-ns0");
DO_TEST_CAPS_LATEST_PARSE_ERROR("tseg-i440fx");
DO_TEST_CAPS_LATEST_PARSE_ERROR("tseg-invalid-size");
- DO_TEST("video-virtio-gpu-ccw", QEMU_CAPS_CCW,
+ DO_TEST("video-virtio-gpu-ccw",
QEMU_CAPS_DEVICE_VIRTIO_GPU,
QEMU_CAPS_VNC,
QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW);
- DO_TEST("input-virtio-ccw", QEMU_CAPS_CCW,
+ DO_TEST("input-virtio-ccw",
QEMU_CAPS_VIRTIO_KEYBOARD,
QEMU_CAPS_VIRTIO_MOUSE,
QEMU_CAPS_VIRTIO_TABLET,
</address>
</hostdev>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'>
- <zpci uid='0x0002' fid='0x00000002'/>
- </address>
+ <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0000'/>
</memballoon>
<panic model='s390'/>
</devices>
</address>
</hostdev>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'>
- <zpci uid='0x0003' fid='0x00000001'/>
- </address>
+ <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0000'/>
</memballoon>
<panic model='s390'/>
</devices>
</address>
</hostdev>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'>
- <zpci uid='0x0002' fid='0x00000001'/>
- </address>
+ <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0000'/>
</memballoon>
<panic model='s390'/>
</devices>
</address>
</hostdev>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'>
- <zpci uid='0x0002' fid='0x00000001'/>
- </address>
+ <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0000'/>
</memballoon>
<panic model='s390'/>
</devices>
</address>
</hostdev>
<memballoon model='virtio'>
- <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'>
- <zpci uid='0x0005' fid='0x00000004'/>
- </address>
+ <address type='ccw' cssid='0xfe' ssid='0x0' devno='0x0000'/>
</memballoon>
<panic model='s390'/>
</devices>
DO_TEST_NOCAPS("machine-core-off");
DO_TEST_CAPS_LATEST("machine-smm-on");
DO_TEST_CAPS_LATEST("machine-smm-off");
- DO_TEST("machine-loadparm-multiple-disks-nets-s390", QEMU_CAPS_CCW);
+ DO_TEST_NOCAPS("machine-loadparm-multiple-disks-nets-s390");
DO_TEST_NOCAPS("default-kvm-host-arch");
DO_TEST_NOCAPS("default-qemu-host-arch");
DO_TEST_NOCAPS("boot-cdrom");
QEMU_CAPS_SCSI_BLOCK);
DO_TEST("controller-virtio-scsi", QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("disk-virtio-s390-zpci",
- QEMU_CAPS_DEVICE_ZPCI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_DEVICE_ZPCI);
DO_TEST_NOCAPS("disk-mirror-old");
DO_TEST_NOCAPS("disk-mirror");
DO_TEST_NOCAPS("disk-active-commit");
DO_TEST("hostdev-vfio", QEMU_CAPS_DEVICE_VFIO_PCI);
DO_TEST("hostdev-vfio-zpci",
QEMU_CAPS_DEVICE_VFIO_PCI,
- QEMU_CAPS_DEVICE_ZPCI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_DEVICE_ZPCI);
DO_TEST("hostdev-vfio-zpci-multidomain-many",
QEMU_CAPS_DEVICE_VFIO_PCI,
QEMU_CAPS_DEVICE_PCI_BRIDGE,
QEMU_CAPS_DEVICE_PCI_BRIDGE,
QEMU_CAPS_DEVICE_ZPCI);
DO_TEST("hostdev-vfio-zpci-ccw-memballoon",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VFIO_PCI,
QEMU_CAPS_DEVICE_ZPCI);
DO_TEST("hostdev-mdev-precreated", QEMU_CAPS_DEVICE_VFIO_PCI);
DO_TEST_NOCAPS("iothreads-ids-partial");
DO_TEST_NOCAPS("cputune-iothreads");
DO_TEST_NOCAPS("iothreads-disk");
- DO_TEST("iothreads-disk-virtio-ccw", QEMU_CAPS_CCW);
+ DO_TEST_NOCAPS("iothreads-disk-virtio-ccw");
DO_TEST("iothreads-virtio-scsi-pci",
QEMU_CAPS_VIRTIO_SCSI);
DO_TEST("iothreads-virtio-scsi-ccw",
- QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI);
DO_TEST_NOCAPS("lease");
DO_TEST_NOCAPS("event_idx");
DO_TEST_NOCAPS("vhost_queues");
QEMU_CAPS_HDA_DUPLEX);
DO_TEST("hostdev-scsi-vhost-scsi-ccw",
- QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_DEVICE_VHOST_SCSI,
- QEMU_CAPS_CCW);
+ QEMU_CAPS_VIRTIO_SCSI, QEMU_CAPS_DEVICE_VHOST_SCSI);
DO_TEST("hostdev-scsi-vhost-scsi-pci",
QEMU_CAPS_VIRTIO_SCSI,
QEMU_CAPS_DEVICE_VHOST_SCSI);
QEMU_CAPS_SCSI_LSI);
DO_TEST("hostdev-subsys-mdev-vfio-ccw",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VFIO_CCW);
DO_TEST_CAPS_ARCH_LATEST("hostdev-subsys-mdev-vfio-ccw-boot",
"s390x");
DO_TEST("hostdev-subsys-mdev-vfio-ap",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VFIO_AP);
DO_TEST_CAPS_ARCH_LATEST("s390-defaultconsole", "s390x");
- DO_TEST("s390-panic", QEMU_CAPS_CCW);
- DO_TEST("s390-panic-missing", QEMU_CAPS_CCW);
- DO_TEST("s390-panic-no-address", QEMU_CAPS_CCW);
- DO_TEST("s390-serial", QEMU_CAPS_CCW);
- DO_TEST("s390-serial-2", QEMU_CAPS_CCW);
- DO_TEST("s390-serial-console", QEMU_CAPS_CCW);
+ DO_TEST_NOCAPS("s390-panic");
+ DO_TEST_NOCAPS("s390-panic-missing");
+ DO_TEST_NOCAPS("s390-panic-no-address");
+ DO_TEST_NOCAPS("s390-serial");
+ DO_TEST_NOCAPS("s390-serial-2");
+ DO_TEST_NOCAPS("s390-serial-console");
DO_TEST_NOCAPS("pcihole64");
DO_TEST_NOCAPS("pcihole64-gib");
DO_TEST("video-qxl-resolution", QEMU_CAPS_DEVICE_QXL);
DO_TEST("video-virtio-gpu-secondary", QEMU_CAPS_DEVICE_VIRTIO_GPU);
DO_TEST("video-virtio-gpu-ccw",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VIRTIO_GPU,
QEMU_CAPS_VNC,
QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW);
DO_TEST("video-virtio-gpu-ccw-auto",
- QEMU_CAPS_CCW,
QEMU_CAPS_DEVICE_VIRTIO_GPU,
QEMU_CAPS_VNC,
QEMU_CAPS_DEVICE_VIRTIO_GPU_CCW);
DO_TEST_CAPS_LATEST("user-aliases");
DO_TEST("input-virtio-ccw",
- QEMU_CAPS_CCW,
QEMU_CAPS_VIRTIO_KEYBOARD,
QEMU_CAPS_VIRTIO_MOUSE,
QEMU_CAPS_VIRTIO_TABLET,
DO_TEST_CAPS_LATEST("vhost-vsock");
DO_TEST_CAPS_LATEST("vhost-vsock-auto");
- DO_TEST("vhost-vsock-ccw", QEMU_CAPS_DEVICE_VHOST_VSOCK,
- QEMU_CAPS_CCW);
- DO_TEST("vhost-vsock-ccw-auto", QEMU_CAPS_DEVICE_VHOST_VSOCK,
- QEMU_CAPS_CCW);
+ DO_TEST("vhost-vsock-ccw", QEMU_CAPS_DEVICE_VHOST_VSOCK);
+ DO_TEST("vhost-vsock-ccw-auto", QEMU_CAPS_DEVICE_VHOST_VSOCK);
DO_TEST_CAPS_ARCH_LATEST("vhost-vsock-ccw-iommu", "s390x");