[PATCH 00/10] ALSA: Catch up MIDI 2.0 updates for UMP 1.1

From: Takashi Iwai
Date: Mon Jun 12 2023 - 04:11:49 EST


Hi,

as the updated MIDI 2.0 spec has been published freshly [*], this is a
catch up to add the support for new specs, especially UMP v1.1
features, on Linux kernel.

The new UMP v1.1 introduced the concept of Function Blocks (FB), which
is a kind of superset of USB MIDI 2.0 Group Terminal Blocks (GTB).
The patch set adds the support for FB as the primary information
source while keeping the parse of GTB as fallback. Also UMP v1.1
supports the groupless messages, the protocol switch, static FBs, and
other new fundamental features, and those are supported as well.


Takashi

[*] https://www.midi.org/midi-articles/details-about-midi-2-0-midi-ci-profiles-and-property-exchange

===

Takashi Iwai (10):
ALSA: ump: Add more attributes to UMP EP and FB info
ALSA: ump: Support UMP Endpoint and Function Block parsing
ALSA: usb-audio: Parse UMP Endpoint and Function Blocks at first
ALSA: usb-audio: Add midi2_ump_probe option
ALSA: seq: ump: Handle groupless messages
ALSA: seq: ump: Handle FB info update
ALSA: seq: ump: Notify port changes to system port
ALSA: seq: ump: Notify UMP protocol change to sequencer
ALSA: ump: Add info flag bit for static blocks
ALSA: docs: Update MIDI 2.0 documentation for UMP 1.1 enhancement

Documentation/sound/designs/midi-2.0.rst | 39 +-
include/sound/ump.h | 89 +++++
include/sound/ump_msg.h | 225 +++++++++++
include/uapi/sound/asequencer.h | 5 +-
include/uapi/sound/asound.h | 21 +-
sound/core/seq/seq_system.c | 1 +
sound/core/seq/seq_ump_client.c | 79 +++-
sound/core/seq/seq_ump_convert.c | 3 +
sound/core/ump.c | 470 +++++++++++++++++++++++
sound/usb/midi2.c | 42 +-
10 files changed, 962 insertions(+), 12 deletions(-)

--
2.35.3