Well, after about 3 days of trial and error headache-ness, i finally got the usb controller to work right. Everything is fine with a linux domU... With a windows domU, I can pass ONE of the USB or VGA, and they'll work by themselves. As soon as I try to bring both in, the USB controller still "works", but it never sends power to the ports.... I also tried an old copy of XP I have, same thing, no power to the ports.
Luckily I stumbled into the fix, which was:
$ grep pci /etc/xen/vwin7.cfg
pci=['00:04:00.0', '00:04:00.1', '00:08:00.0,power_mgmt=1']
04 is the VGA & HDMI audio, 08 is the usb controller. The power_mgmt=1 setting allows the guest OS to have full control over the power mgmt of the usb, and now the windows driver actually sends power to the ports.
I haven't checked the performance or really tested the stability yet, but finally all of the hardware is at least working right.
. It did lock up earlier ... and there are some error messages in the qemu log still, perhaps an issue with msitranslate. RTFM
(warning: pdf) http://xen.org/files/Support/XenConfigurationDetails.pdf
pci:Add a PCI device to a domain, using given params (in hex). For example 'pci=c0:02.1'.
If VSLOT is supplied the device will be inserted into that virtual slot in the guest, else a free
slot is selected. If msitranslate is set, MSI-INTx translation is enabled if possible. Guest that
doesn't support MSI will get IO-APIC type IRQs translated from physical MSI, HVM only.
Default is 1. The option may be repeated to add more than one pci device. If power_mgmt is
set, the guest OS will be able to program the power states D0-D3hot of the device, HVM only.
pci (Default=; Value=BUS:DEV.FUNC[@VSLOT][,msitranslate=0|1][,power_mgmt=0|
vscsi: Add a SCSI device to a domain. The physical device is PDEV, which is exported to the
domain as VDEV(X:X:X:X)
vscsi (Default= ;Value= 'PDEV,VDEV[,DOM]')
pci_msitranslate: Global PCI MSI-INTx translation flag (0=disable;1=enable)
pci_msitranslate (Default=1; Value='TRANSLATE')
pci_power_mgmt: Global PCI Power Management flag (0=disable; 1=enable)
pci_power_mgmt (Default=0; Value='POWERMGT')
xen_platform_pci: Is xen_platform_used?
xen_platform_pci (Default=1; Value='0|1')
sent from windows ... inside linux .. but you'd never notice!
fantastic. Now to get teh second set of cards to have linux setup primarily and get over here with a bump of the kvm switch.
If only this was a little less sensitive to setup correctly ...