Struggling with USB 3 PCIe card passthrough - works sporadically

odonnell

New Member
Mar 6, 2021
10
0
1
30
Beating my head against the wall with this. I am running the latest PVE on my Dell R620, been about a year since I first installed it. I have a Windows 10 VM which I am trying to pass a 4-port USB 3 card to, but it almost never functions properly.

I have the system set up already for PCIe pass through, i.e. the IOMMU stuff and so on. Have been using a GPU passthrough to this same VM since I first installed it, works brilliantly. I also have a PCIe LSI HBA card passed through to a TrueNAS VM perfectly fine (entire controller passed through).
But this PCIe card is weird. It is showing up as a Renesas SH7757 controller. Running lspci -v shows these entries associated with the card (I am deleting extraneous lines to save space):

Code:
08:00.0 PCI bridge: Renesas Technology Corp. SH7757 PCIe Switch [PS] (prog-if 00 [Normal decode])
Kernel driver in use: pcieport

09:00.0 PCI bridge: Renesas Technology Corp. SH7757 PCIe Switch [PS] (prog-if 00 [Normal decode])
Kernel driver in use: pcieport

09:01.0 PCI bridge: Renesas Technology Corp. SH7757 PCIe Switch [PS] (prog-if 00 [Normal decode])
Kernel driver in use: pcieport

0a:00.0 PCI bridge: Renesas Technology Corp. SH7757 PCIe-PCI Bridge [PPB] (prog-if 00 [Normal decode])

Pausing for a minute - I am noticing the 'kernel driver in use' not being the VFIO one. It's a 4-port hub so I was not shocked to see 4 entries, but the last one has a different ID format (maybe that's just because it's hex sequence?), and does not mention 'kernel driver in use' at all. It also is classified as a bridge and not a switch, like the preceding 3 entries. So, for passing through the card in its entirety, I am thinking the last entry may signify the heart of the card?
If not....farther down the list generated by running lspci, there is another entry from this card:

Code:
42:00.0 USB controller: Renesas Technology Corp. uPD720201 USB 3.0 Host Controller (rev 03) (prog-if 30 [XHCI])
Kernel driver in use: vfio-pci
Kernel modules: xhci_pci

Getting the device IDs:
Code:
lspci -nn

08:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7757 PCIe Switch [PS] [1912:0013]
09:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7757 PCIe Switch [PS] [1912:0013]
09:01.0 PCI bridge [0604]: Renesas Technology Corp. SH7757 PCIe Switch [PS] [1912:0013]
0a:00.0 PCI bridge [0604]: Renesas Technology Corp. SH7757 PCIe-PCI Bridge [PPB] [1912:0012]
...
42:00.0 USB controller [0c03]: Renesas Technology Corp. uPD720201 USB 3.0 Host Controller [1912:0014] (rev 03)

So I added the device IDs to my vfio.conf file:
Code:
options vfio-pci ids=1912:0012,1912:0013,1912:0014

When I go into my VM's hardware menu in the main UI, I can only see that 42:00 entry as selectable/detected. I have played with different combination of ROM-bar, all functions, etc on that passthrough options menu.

Sometimes flash drives show up fine in the VM, but most of the time, they do not. External hard drives (the reason I installed this card) have almost no chance of ever appearing in the VM.

Proxmox seems to think it all worked fine: when I plug in a USB hard drive and it's not showing up to the Windows VM, I go back to the PVE hardware settings for the VM. Try adding a USB device: I thought maybe if it's not being passed through, I could see it here as a selectable option under "Use USB Vendor/Device ID" but it doesn't show up. So at some level, Proxmox thinks it's been passed through and is no longer available as an option. When the card (42:00) is removed from the hardware selection menu of the VM, I can select the hard drive, as now Proxmox is the one working with the PCIe card. But this is not what I am trying to do as my solution every time I plug something in to that card.

Does this sound like a junk card, or is it a junk config? It was a budget choice (FebSmart I think) I got for under $20 last year.
 
Last edited:
I noticed that I can view an external hard drive, which is plugged in to the PCIe card, in Disk Management (the built in Windows one). It is Disk 1 in the snapshot below.

Screen Shot 2022-03-07 at 7.52.09 PM.png

However it's not mounting, despite being a perfectly valid FAT or NTFS volume that I can use on other machines. Right clicking has all grayed-out options, except for 'delete volume.' What gives? The card is capable of powering this drive... it uses a mini USB connector, and I have used other drives with this card before that need more power. I have 5 drives acting the same way, so it's not a quirk with this HDD.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!