Hi,

> For handle_combined_data, yes, as usb_ep_combine_input_packets can
> cause multiple packets to get submitted, since if a combined packet
> ends with a packet, which does not have its short_not_ok flag set,
> another packet can be safely pipelined after it. This is not
> useful for usb mass storage, but very usefull for usb serial
> port converters.

Ah, I see.  You can have a queue with -- say -- 16 packets which will
get combined into 4 groups with 4 packets each -> 4 callbacks.

I think handle_combined_data() should get USBCombinedPacket passed
instead of USBPacket.  It is cleaner API-wise.  Likewise for the other
usb_combined_* functions.

Allowing to call usb_ep_combine_input_packets on any endpoint (except
iso which is a special case anyway) would be good too I think, then it
is possible for usb drivers to operate on USBCombinedPackets everywhere.

BTW:  I think USBPacketGroup would be a better name for USBCombinedPacket.

cheers,
  Gerd


Reply via email to