Re: [PATCH v2 00/37] ALSA: Add MIDI 2.0 support

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

 



On Wed, 28 Jun 2023 13:32:12 +0200,
Symbolic Debugger wrote:
> 
> Thanks for the notes. I read the (USB) spec again page 27/28.  (well multiple times) and as I understood 1 endpoint has 1 or more multiple  Group Terminal Blocks for which GTB each has  1 to 16 groups (group = in/out or bi =  similar to one or two midi cables/ports)  per terminal block  The spec I have is from May 5th, 2020. i wonder how the driver get the Function Block information function blocks are not mentioned in the USB spec. Is there a a newer USB spec? if yes, it may make no sense to develop a device now if the descriptors and USB functions calls changed. Page 28 still refers to MIDI -CI protocol negotiation which already has been removed.  It's a bit confusing. Would have been better to first release the updated USB spec before releasing the updated MIDI specs.

Basically a UMP EP can have up to 16 groups, and GTB indicates which
groups out of those can be managed together.  And for the old USB MIDI
2.0 spec, groups in multiple GTBs have to be unique; i.e. if GTB#1
contains the group#1, the group#1 can't be found in another GTBs.

OTOH, the new UMP 1.1 spec allows the shared groups by multiple
Function Blocks.  For explicitly disallowing this new (rather
confusing) behavior, "static block" flag was added in the FB info.
When this bit is set, the FB is fixed and doesn't overlap, so that
it's more or less compatible with GTB.

Note that Function Block is a new thing that was defined in UMP 1.1
spec.  Naturally it didn't exist in the old USB MIDI 2.0 spec of
year 2020.  But, the concept of Function Block (and implementation) is
rather about UMP, and it's independent from the transport layer; that
is, USB MIDI 2.0 spec still applies as is, and won't be updated soon,
AFAIK.  It's a matter of the driver which information is used as the
primary source: FB or GTB.  The device should provide both info, in
somehow compatible ways.


Takashi



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux