Re: [PATCH] usb: add new usb gadget for ACM and mass storage

From: Sebastian Andrzej Siewior
Date: Fri Sep 16 2011 - 14:55:20 EST


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-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/