December 15, 201312 yr I have been building a XEN server based on the thread http://lime-technology.com/forum/index.php?topic=30719.0 by grumpybutfun (many props to him for such a good guide too). And, I am having a problem getting the USB passthrough to work right. I have a ASRock Extreme6-Z87, running XenServer 6.2, and I am seeing three USB controllers under lspci, but, when I pass any of them, I end up passing ALL usb function to the VM, instead of just part. Looking for help. Kind of at a dead end on how to pass through the USB-key and still have a keyboard and mouse for the rest of the system's VM's. Thanks in advance
December 15, 201312 yr Post the following: lspci -k Let's see what showing up in Linux and what driver its using.
December 15, 201312 yr Author dump: 00:00.0 Host bridge: Intel Corporation Haswell DRAM Controller (rev 06) Subsystem: ASRock Incorporation Device 0c00 00:01.0 PCI bridge: Intel Corporation Haswell PCI Express x16 Controller (rev 06) Kernel driver in use: pcieport 00:01.1 PCI bridge: Intel Corporation Haswell PCI Express x8 Controller (rev 06) Kernel driver in use: pcieport00:02.0 VGA compatible controller: Intel Corporation Haswell Integrated Graphics Controller (rev 06) Subsystem: ASRock Incorporation Device 0412 00:03.0 Audio device: Intel Corporation Haswell HD Audio Controller (rev 06) Subsystem: ASRock Incorporation Device 0c0c 00:14.0 USB controller: Intel Corporation Lynx Point USB xHCI Host Controller (rev 04) Subsystem: ASRock Incorporation Device 8c31 00:16.0 Communication controller: Intel Corporation Lynx Point MEI Controller #1 (rev 04) Subsystem: ASRock Incorporation Device 8c3a 00:19.0 Ethernet controller: Intel Corporation Ethernet Connection I217-V (rev 04) Subsystem: ASRock Incorporation Device 153b Kernel driver in use: e1000e Kernel modules: e1000e 00:1a.0 USB controller: Intel Corporation Lynx Point USB Enhanced Host Controller #2 (rev 04) Subsystem: ASRock Incorporation Device 8c2d Kernel driver in use: ehci_hcd Kernel modules: ehci-hcd00:1b.0 Audio device: Intel Corporation Lynx Point High Definition Audio Controller (rev 04) Subsystem: ASRock Incorporation Device 1151 00:1c.0 PCI bridge: Intel Corporation Lynx Point PCI Express Root Port #1 (rev d4) Kernel driver in use: pcieport 00:1c.2 PCI bridge: Intel Corporation Lynx Point PCI Express Root Port #3 (rev d4) Kernel driver in use: pcieport 00:1c.3 PCI bridge: Intel Corporation Lynx Point PCI Express Root Port #4 (rev d4) Kernel driver in use: pcieport 00:1c.4 PCI bridge: Intel Corporation Lynx Point PCI Express Root Port #5 (rev d4) Kernel driver in use: pcieport 00:1c.6 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d4) 00:1d.0 USB controller: Intel Corporation Lynx Point USB Enhanced Host Controller #1 (rev 04) Subsystem: ASRock Incorporation Device 8c26 Kernel driver in use: pciback Kernel modules: ehci-hcd00:1f.0 ISA bridge: Intel Corporation Lynx Point LPC Controller (rev 04) Subsystem: ASRock Incorporation Device 8c44 00:1f.2 SATA controller: Intel Corporation Lynx Point 6-port SATA Controller 1 [AHCI mode] (rev 04) Subsystem: ASRock Incorporation Device 8c02 Kernel driver in use: pciback Kernel modules: ahci 00:1f.3 SMBus: Intel Corporation Lynx Point SMBus Controller (rev 04) Subsystem: ASRock Incorporation Device 8c22 01:00.0 SATA controller: Marvell Technology Group Ltd. Device 9235 (rev 10) Subsystem: Marvell Technology Group Ltd. Device 9235 Kernel driver in use: ahci Kernel modules: ahci 02:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9120 SATA 6Gb/s Controller (rev 12) Subsystem: Marvell Technology Group Ltd. 88SE9120 SATA 6Gb/s Controller Kernel driver in use: ahci Kernel modules: ahci 02:00.1 IDE interface: Marvell Technology Group Ltd. 88SE912x IDE Controller (rev 12) Subsystem: Marvell Technology Group Ltd. 88SE912x IDE Controller04:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01) Subsystem: ASRock Incorporation Device 0612 Kernel driver in use: ahci Kernel modules: ahci 05:00.0 Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03) Subsystem: ASRock Incorporation Device 1539 Kernel driver in use: igb Kernel modules: igb 06:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01) Subsystem: ASRock Incorporation Device 0612 Kernel driver in use: ahci Kernel modules: ahci 07:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI Bridge (rev 03) 08:00.0 RAID bus controller: Silicon Image, Inc. SiI 3114 [sATALink/SATARaid] Serial ATA Controller (rev 02) Subsystem: Silicon Image, Inc. Device 7114 Kernel driver in use: sata_sil Kernel modules: sata_sil
December 15, 201312 yr Author I am thinking that I could go get a cheapy pci usb card and just plug the key into that and leave the MB's USB subsystem untouched. I have been kludging my way around passing (and unpassing) things through the system. I think if I had a PCI-card solution, it would let me leave the rest of the USB to all of the other VM's Of course, a more elegant solution is still appreciated. #Can't wait to get the unraid system up so I can have a ISO-repository and start putting the rest of the VM's on!!
December 15, 201312 yr According to what I see above and what I see for the ASRock Extreme... You have 3 USB Controllers. 2 x Rear USB 3.0 ports by Intel® Z77, support USB 1.0/2.0/3.0 up to 5Gb/s 2 x Rear USB 3.0 ports by Etron EJ168A, support USB 1.0/2.0/3.0 up to 5Gb/s 1 x Front USB 3.0 header by Intel® Z77 (supports 2 USB 3.0 ports), supports USB 1.0/2.0/3.0 up to 5Gb/s You will notice on yours that 14.0 doesn't show a Linux Driver loaded. I suspect that might be part of the problem. Install a Ubuntu Live CD onto a usb drive and run that command and see if it shows a driver for that USB Controller and what it shows for the others too. Since that is a newer motherboard, either the Linux Kernel version that unRAID is using... Either doesn't have a driver for it or it's not turned on. Once I know what it is I can assist more.
December 16, 201312 yr I have a debian dom0 running xen with a xen-tools installed debian dom1 running on that mobo so I can try this later for you if you like. As far as I am aware, the mobo uses the z87 to provide some of the usb ports and an asmedia controller for the others. I believe the rear panel USB3 ports are delivered by the ASMedia chip (am not in front of the computer now, google says it is an ASM1074 chip) but everything else (the mobo headers for USB3, all the USB2 headers including the on mobo physical port) comes via the z87 controller. I think this should mean you can passthrough either the rear panel USB3 headers or everything else. This arguably isn't the perfect combination so a cheap pci card might be your most convenient option anyway.
December 16, 201312 yr this is what I see on my machine # lspci -k 00:14.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB xHCI (rev 05) Subsystem: ASRock Incorporation Device 8c31 Kernel driver in use: xhci_hcd 00:1a.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #2 (rev 05) Subsystem: ASRock Incorporation Device 8c2d Kernel driver in use: ehci-pci 00:1d.0 USB controller: Intel Corporation 8 Series/C220 Series Chipset Family USB EHCI #1 (rev 05) Subsystem: ASRock Incorporation Device 8c26 Kernel driver in use: ehci-pci this produces 4 USB buses which are mapped as follows # ls -la /sys/bus/usb/devices/usb* lrwxrwxrwx 1 root root 0 Dec 16 19:29 /sys/bus/usb/devices/usb1 -> ../../../devices/pci0000:00/0000:00:14.0/usb1 lrwxrwxrwx 1 root root 0 Dec 16 19:29 /sys/bus/usb/devices/usb2 -> ../../../devices/pci0000:00/0000:00:14.0/usb2 lrwxrwxrwx 1 root root 0 Dec 16 19:29 /sys/bus/usb/devices/usb3 -> ../../../devices/pci0000:00/0000:00:1a.0/usb3 lrwxrwxrwx 1 root root 0 Dec 16 19:29 /sys/bus/usb/devices/usb4 -> ../../../devices/pci0000:00/0000:00:1d.0/usb4 so bus 1 & 2 are on 14.0 and 3 & 4 are on 1a.0 and 1d.0 respectively. to working out which physical ports they are... some digging... I have a flash drive plugged into the onboard socket and it is mapped as # ls -la /sys/block/sde lrwxrwxrwx 1 root root 0 Dec 16 19:52 /sys/block/sde -> ../devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/host10/target10:0:0/10:0:0:0/block/sde so the onboard usb port is on 14.0 (the xHCI controller) I have a keyboard plugged into the rear USB2 port and it appears as [ 7.781545] input: Logitech Unifying Device. Wireless PID:4024 as /devices/pci0000:00/0000:00:14.0/usb1/1-14/1-14:1.2/0003:046D:C52B.0003/input/input0 [ 7.782145] logitech-djdevice 0003:046D:C52B.0004: input,hidraw1: USB HID v1.11 Keyboard [Logitech Unifying Device. Wireless PID:4024] on usb-0000:00:14.0-14:1 so also appears to be on the 14.0 controller & shows up on the same bus as expected. # lsusb Bus 004 Device 002: ID 8087:8000 Intel Corp. Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 003 Device 002: ID 8087:8008 Intel Corp. Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 174c:3074 ASMedia Technology Inc. Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 054c:02a5 Sony Corp. MicroVault Flash Drive Bus 001 Device 002: ID 174c:2074 ASMedia Technology Inc. Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Plugging something into a usb port attached to a USB 2 header on the mobo or to the rear panel USB3 ports also shows up on the same bus (1-0). The last one surprises me as the manual quite clearly states the USB3 ports are on the asmedia hub. On this machine I have no other accessible ports so I imagine you'd need to work your way through the mobo USB headers to find which ones map to the different devices. If the onboard usb and the rear panel ports are all on the same bus though then that probably means buying a separate pci card is the (annoying wasteful) way to go.
December 16, 201312 yr Author Matt--very thorough investigation. Thank you for helping. Looking around I found the same things: although three controllers are reported, only one exists--the Z87 chip. ASRock has a chip that separates some of the ports, but, only the Z87 actually provisions USB ports to the system. So, a card it is. It's a waste of a port, but, thankfully, the EX-6 has a few to spare. And since any old PCI port will suffice, I am not losing a Sata-III slot. Well, now we know.
Archived
This topic is now archived and is closed to further replies.