On 09/16/2011 08:22 PM, Steve Calfee wrote:
Hi,
Hi Steve,
To literally make a gadget that can emulate a hub (where it could present port 1 as function x, port 2 as function y etc) would require special hardware. The (bus speed) translations and (ack/nak) timings are speced very tightly for hubs (see chapter 11 of the spec). Each function would have its own usb bus address - otherwise one gadget could not nak while another transfered data. Each bus address would have to meet the spec in responding to all signaling.
That is something I haven't figured out. So the plan was to expose each gadget as an individual port with its own descriptors. The device number is indeed a problem that can be hardly solved. The Host sets the address of the device it talks to and the hub routes it properly. This is someting we can't emulate. Hmm. So it boils down to an efficient way of providing multiple interface descriptors without adding a lot of code each time?
Regards, Steve
Sebastian -- 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