USB passthrough to Monitor with USB Hub


Kich902

Recommended Posts

7 hours ago, Kich902 said:

can 1 passthrough one usb controller

This is the critical part of the question. IF your motherboard has multiple controllers that can be passed through separately, so that your boot USB is on a controller that is NOT passed, or if you pass a separate USB controller PCIE card, then yes, you can attach hubs to that controller to increase the number of ports available on that controller.

 

From the way your question is worded, I'm not sure if you are confusing ports vs controllers. Typically each controller has multiple USB ports that it controls, many motherboards only have a single controller that runs all the ports on the board, and you can't pass through the same controller that owns the port with the USB boot stick.

Link to comment
22 hours ago, jonathanm said:

This is the critical part of the question. IF your motherboard has multiple controllers that can be passed through separately, so that your boot USB is on a controller that is NOT passed, or if you pass a separate USB controller PCIE card, then yes, you can attach hubs to that controller to increase the number of ports available on that controller.

 

From the way your question is worded, I'm not sure if you are confusing ports vs controllers. Typically each controller has multiple USB ports that it controls, many motherboards only have a single controller that runs all the ports on the board, and you can't pass through the same controller that owns the port with the USB boot stick.

I'm talking about the controllers. Looking at Spaceinvader's video on the 6.9 beta there was an updated on how Unraid grouped the PCIe devices and IOMMU groups. I believe by this may be possible depending on the motherboard as one can pass a whole controller as Unraid already disables passing of the one holding the Unraid boot flash drive.

Link to comment
  • 5 months later...

So i got to test this out 

On 10/20/2020 at 12:59 PM, Kich902 said:

Hi All,

 

I'm curios about these monitors with usb hubs in them like the Dell Ultrasharp U2417H. This may be a noob question but can 1 passthrough one usb controller to the screen then use the usb ports on it for mouse, keyboard and external storage devices. Would this work?🤔


 

To answer myself: so I got to test this out and yes it does work: passthrough a usb controller, attached the usb in(upstream) on the monitor to one of the ports on the PC then connect the peripherals to the out(downstream) ports on the monitor. They all work work, mouse, keyboard, usb hubs and all!😁 Only loss is the other unused ports on the controller. However, saw a method to pass particular ports:

Given how technical this method is, I just may perhaps maybe try it out🤔

Link to comment
43 minutes ago, Kich902 said:

passes through the whole controller, same thing as doing so in the system devices

My plugin uses Virsh to attach and detach devices using BUS and DEV IDs, its doesn't pass through controllers with vfio.

 

Example of the JSON used is as below.

 

cat /tmp/libvirthotplugusbbybusMint2.xml 
<hostdev mode='subsystem' type='usb'>
        <source>
        <address bus='2' device='10' />
        </source>
        </hostdev>

Link to comment
3 minutes ago, SimonF said:

My plugin uses Virsh to attach and detach devices using BUS and DEV IDs, its doesn't pass through controllers with vfio.

 

Example of the JSON used is as below.

 

cat /tmp/libvirthotplugusbbybusMint2.xml 
<hostdev mode='subsystem' type='usb'>
        <source>
        <address bus='2' device='10' />
        </source>
        </hostdev>

Got it. What i'm actually looking for is to passthrough an individual usb port to VM. What i'm trying to do is build a 2 user rig in 1 and passthrough all needed devices including usb such that should the user need usb ports they can use the ones on the monitor. Issue is your plugin doesn't list the empty usb ports on the monitor unless there's a device connected to them & of which doesn't work with a usb hub.

 

I don't know if u follow?

Link to comment

/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 1: Dev 7, If 0, Class=Hub, Driver=hub/2p, 480M
        |__ Port 2: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 4, If 2, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 5: Dev 5, If 0, Class=Mass Storage, Driver=usb-storage, 480M
 

How would i go about port mapping? I'm new to this☺️

Link to comment
8 hours ago, Kich902 said:

Yap! That works, but doesn't do so with hubs😒. Saw u mentioned that on an earlier post, any fix on that? If it did it'd be SOOOOOO neat😁

QEMU doesnt support passing through hubs. But if you plug a device into each port on the screen hub you should be able to create a mapping for each to a VM.

 

Will look to add a hub mapping option/Topology View in a future release.

Link to comment
2 hours ago, SimonF said:

QEMU doesnt support passing through hubs. But if you plug a device into each port on the screen hub you should be able to create a mapping for each to a VM.

 

Will look to add a hub mapping option/Topology View in a future release.

Yap,seems that's the solution: a matter of 1+1^n. Guess it'll do for now. You should've done the hub thing by the time i'll get to implementing this in a real case use. Otherwise great plugin sir, u have my vote😁

Link to comment
19 minutes ago, Kich902 said:

Yap,seems that's the solution: a matter of 1+1^n. Guess it'll do for now. You should've done the hub thing by the time i'll get to implementing this in a real case use. Otherwise great plugin sir, u have my vote😁

Can you provide a list usb and screen print just so I can see want the Screen hub looks like?

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.