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(a)redhat.com>
--
Andrea Bolognani / Red Hat / Virtualization