usbip in terms of gadgets?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

while trying to strip the usbip drivers of everything that 
could be done elsewhere, I started to play with the idea of 
replacing vhci with dummy-hcd and gadget(fs).  

There are some limitations I am hitting early on:

- dummy-hcd and gadgetfs support a single gadget device
at a time. To implement vhci, I would need to create more
than one gadget device (actually up to 16).

- gadgetfs seems to support only one interface per gadget,

The basic idea behind this experiment is that the core 
function of vhci is very similar to that of dummy-hcd root 
hub and gadgets except devices are proxied to a physical USB
device elsewhere and not implemented in the kernel.

The gadget API seems to provide most of what vhci would need.
vhci could be implemented as a userspace daemon doing all the
TCP I/O, protocol (un)packing, etc while driving the device(s)
using gadgetfs. If this works out, the vhci kernel driver 
could eventually be replaced entirely by a userspace daemon.

This is still only a rough idea from someone who is fairly
new to gadgets and I don't even have a working prototype for
a single device with single interface yet.

But while I work my way into that, I wanted to ask for your
thoughts on the idea in principle and if is in-line with the
dummy-hcd/gadget design or indeed stretching it too far.

Do you think it makes sense to extend dummy-hcd and gadgetfs
to support multiple gadgets and then multiple interfaces per
gadget in gadgetfs? Have there already been any discussions 
towards that you could point me to?

Thanks! Looking forward to your comments,

	Max
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux