On Wed, Dec 16, 2015 at 09:59:58PM +0100, Ruben Torrero Marijnissen wrote:
Hi,
Hello,
I'm trying to assign a complete USB Hub to my Windows 10 guest,
using
libvirt 1.3. Following the documentation, I tried adding the following
to the definition of my guest:
...
<devices>
..
<hub type='usb'>
the <hub> element is for creating virtual hubs,
<address type='usb' bus='1'
port='10.2'/>
The 'bus' here needs to match the 'index' of an exisitng <controller
type='usb'> in the domain XML.
</hub>
..
</devices>
To get the correct port, I used lsusb:
[root@nobill-main 004]# lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/10p, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/16p, 480M
|__ Port 5: Dev 110, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 52, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 53, If 0, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 1: Dev 53, If 1, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 3: Dev 54, If 0, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 3: Dev 54, If 1, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 3: Dev 54, If 2, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 4: Dev 55, If 1, Class=Human Interface Device,
Driver=usbhid, 12M
|__ Port 10: Dev 117, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 2: Dev 118, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 11: Dev 8, If 0, Class=Human Interface Device,
Driver=usbhid, 1.5M
|__ Port 11: Dev 8, If 1, Class=Human Interface Device,
Driver=usbhid, 1.5M
(I want to assign port 10 in bus 1, the one that (still) has nothing
attached to it.
For passing a host USB device to the guest, use <hostdev>:
<hostdev mode='subsystem' type='usb'>
<source>
<address bus='1' device='10'/>
</source>
</hostdev>
But in my testing, passing a USB hub did not work - neither the hub
nor the devices on it were visible in the guest.
Jan