Hi all, I've been working on adding support to the usb-ehci code to have an uhci companion controller. This is actually working quite well, and the code is pretty nice too, see: http://cgit.freedesktop.org/~jwrdegoede/qemu/log/?h=usbredir
Note the last commit likely needs to be split into 2, and that tree contains some other stuff too. Anyways to add support for a companion controller the logical thing to do would be to do: s->companion = pci_create_simple(bus, companion_devfn, "usb-ehci-uhci-companion"); From the qdev initfn for usb-ehci, this works if I create the usb-ehci instance from pc_init1() from hw/pc_piix.c . But for some reason it does not work if I simple add: "-device usb-ehci, multifunction=on" to the qemu cmdline. The device gets created, but no ioports / interrupts get assigned, and it does not show up in lspci in the guest. Regards, Hans