[David and Drew added to CC, feel free to skip to the bottom] On Thu, 2017-04-20 at 15:44 +0200, Pavel Hrdina wrote: [...] > + } else if (def->os.arch == VIR_ARCH_AARCH64 && > + virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_QEMU_XHCI)) { > + /* If possible use qemu-xhci as default controller for > + * aarch64, it's USB3 controller and we want to avoid using > + * nec-usb-xhci. */ > + cont->model = VIR_DOMAIN_CONTROLLER_MODEL_USB_QEMU_XHCI; If qemu-xhci is not available but usb-nec-xhci is, it would probably be nicer to pick the latter rather than leaving it unspecified (which will result in an error later on). So I would basically use the same code as ppc64 here, minus the pci-ohci part of course. [...] > +++ b/tests/qemuxml2argvdata/qemuxml2argv-aarch64-usb-controller-qemu-xhci.xml > @@ -0,0 +1,27 @@ > +<domain type='qemu'> > + <name>QEMUGuest1</name> > + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> > + <memory unit='KiB'>219100</memory> > + <currentMemory unit='KiB'>219100</currentMemory> You don't need <currentMemory>, ... [...] > + <features> > + <apic/> > + <pae/> > + </features> > + <clock offset='utc'/> > + <on_poweroff>destroy</on_poweroff> > + <on_reboot>restart</on_reboot> > + <on_crash>restart</on_crash> ... you can remove all these... > + <devices> > + <emulator>/usr/bin/qemu-system-aarch64</emulator> > + <controller type='usb' index='0'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> > + </controller> > + <memballoon model='virtio'> > + <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/> > + </memballoon> ... and set the model for <memballoon> to 'none'. [...] > @@ -2472,6 +2472,14 @@ mymain(void) > QEMU_CAPS_PCI_OHCI); > DO_TEST("ppc64-usb-controller-legacy", > QEMU_CAPS_PIIX3_USB_UHCI); > + DO_TEST_FULL("ppc64-usb-controller-qemu-xhci", NULL, -1, 0, > + VIR_DOMAIN_DEF_PARSE_ABI_UPDATE, GIC_NONE, > + QEMU_CAPS_DEVICE_QEMU_XHCI); > + > + DO_TEST("aarch64-usb-controller-qemu-xhci", > + QEMU_CAPS_OBJECT_GPEX, > + QEMU_CAPS_DEVICE_IOH3420, You don't need QEMU_CAPS_DEVICE_IOH3420 here. The rest looks good, but I'd like to make sure changing the default is something that's okay with everyone. David, Drew, do you have anything against changing the default USB controller model for ppc64 and aarch64 guests respectively to qemu-xhci? -- Andrea Bolognani / Red Hat / Virtualization -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list