
On Mon, 2017-06-26 at 14:01 -0400, Cole Robinson wrote:
+++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-pci-serial.xml @@ -0,0 +1,17 @@ +<domain type="qemu"> + <name>aarch64test</name> + <uuid>496d7ea8-9739-544b-4ebd-ef08be936e8b</uuid> + <memory>1048576</memory> + <currentMemory>1048576</currentMemory>
You can leave out <currentMemory> here.
+ <vcpu placement='static'>1</vcpu> + <os> + <type>hvm</type>
This should be <type arch='aarch64' machine='virt'>hvm</type>
+ </os> + <devices> + <emulator>/usr/bin/qemu-system-aarch64</emulator> + <serial type='pty'> + <target type='pci-serial' port='0'/> + <log file='/tmp/log' append='on'/> + </serial>
You can give the serial an explicit PCI address on pcie-root to avoid the dmi-to-pci-bridge and pci-bridge later. Or not, I leave that up to you.
+++ b/tests/qemuxml2argvtest.c @@ -2342,6 +2342,13 @@ mymain(void) DO_TEST_FAILURE("aarch64-kvm-32-on-64", QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_DEVICE_VIRTIO_MMIO, QEMU_CAPS_KVM); + DO_TEST("aarch64-pci-serial", + QEMU_CAPS_NODEFCONFIG, QEMU_CAPS_CHARDEV, + QEMU_CAPS_DEVICE_PCI_SERIAL, QEMU_CAPS_CHARDEV_LOGFILE, + QEMU_CAPS_OBJECT_GPEX, QEMU_CAPS_DEVICE_PCI_BRIDGE, + QEMU_CAPS_PCI_MULTIFUNCTION, + QEMU_CAPS_DEVICE_DMI_TO_PCI_BRIDGE, + QEMU_CAPS_DEVICE_IOH3420);
Use QEMU_CAPS_DEVICE_PCIE_ROOT_PORT instead of _IOH3420. _MULTIFUNCTION is not needed for this test case, since the guest doesn't have nearly enough devices for it to make a difference. If you gave the pci-serial an explicit address, you can of course get rid of _PCI_BRIDGE, _DMI_TO_PCI_BRIDGE, _MULTIFUNCTION and _IOH3420 altogether. Please add the test case to qemuxml2xmltest as well. Reviewed-by: Andrea Bolognani <abologna@redhat.com> -- Andrea Bolognani / Red Hat / Virtualization