Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp5213329rwd; Mon, 12 Jun 2023 01:28:54 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ60bEk3OyuUAMV79emYMcAuE6TwI11tANwZDMduVNyhwXfS9R4poQGMLXtcaBKA9Rc1Hk0i X-Received: by 2002:a17:90a:2ec5:b0:24e:2e86:5465 with SMTP id h5-20020a17090a2ec500b0024e2e865465mr7369124pjs.31.1686558533924; Mon, 12 Jun 2023 01:28:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1686558533; cv=none; d=google.com; s=arc-20160816; b=J/+wCIaXH89WVOKfCBNgqkrbmxKHoXM70KYOpe+8zjMuRo2bTaIl2rEN9l4lJBPgeg FtJhJ6WOSo3H4ur6lRYiJHZDVS0AB4oxpN0103ZrcG80Mq6cKqshkLF2jf7oJHCi6P+H TdIvKyeDa0Emr0nKDLvZX5zAUUoQzg/QMr18Edd2FqSPzIiK1Ms40jOwKEdPiwY+6jRR bsJSR8lFZxj1anOiB/iOK5iAqf40ORrPcb4EvK//0DN/nfNjPu1EodpPeg6A2+2qRn3t 1tuNXKbpzdKtra7rsdrUo+Z2V0m9vuuP923id0yU0CDJJNG9XrsQIbLr68nOJlZ7zu0+ N+iw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature:dkim-signature; bh=d4onWRD0uQuxv/zo2IFQ1pl6oFXHj09eFtoJOf6sS80=; b=ZITkULTZ8I2xSWpVvL2Dh6t9vuy4IM/L/fxkknjvyrj8f1PdM+ol3zqH7wKgBedwZM TMfrPkCvw0YdpykUHffYFaT3F4RxphNP/ndU+wRMnpwSxCk5HLIAfaH+XI26oTuaGY7C Rxp3UsVxsGivSHgQXBb4L0DZNXCi2rF8k7hxHCUjrcOYc/TsuPZNakLMND0YYA8aTnQU c5L7ymIJ73z7VSgw3oJwsdQ7bjshMcXSyLfjMDMYw0PNWkzCLMcmuwcCgW1VuEy/7SGk Yts9yLNbe77MsqM/cE9mgKR2AYiQXwpEWYiMYn22TQoHGkU3yEGTxC9U3cK0OL18f2KV zSBA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=n7u9OjPm; dkim=neutral (no key) header.i=@suse.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id me8-20020a17090b17c800b0024bda568513si3377998pjb.123.2023.06.12.01.28.42; Mon, 12 Jun 2023 01:28:53 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=n7u9OjPm; dkim=neutral (no key) header.i=@suse.de; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229825AbjFLILr (ORCPT + 99 others); Mon, 12 Jun 2023 04:11:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48790 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229663AbjFLILl (ORCPT ); Mon, 12 Jun 2023 04:11:41 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 029B7B5 for ; Mon, 12 Jun 2023 01:11:15 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id CD181224FC; Mon, 12 Jun 2023 08:11:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1686557465; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=d4onWRD0uQuxv/zo2IFQ1pl6oFXHj09eFtoJOf6sS80=; b=n7u9OjPmGs/Bv8ehuXy2XMkJaYHnQyId+PK+wbByCTrD1SI16l1hHDVMULLZYKeTFU3VAo WkY9+zjFruE/05M7K5AttngM0OZoajkGNyvWdUYlI/n0o0hNpkGOTQy9tgGs2OnAanhxEZ HemlVJPhbNnX9VH5pWlM9AGbBeDNRpQ= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1686557465; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=d4onWRD0uQuxv/zo2IFQ1pl6oFXHj09eFtoJOf6sS80=; b=AHaqYtKlpRexc1JbJ+uYQZL8CJUBIHvBQA0UAtA6qseSzELgEjNJ3+Qz36MiujcMXmjRRW dYoRR77dZF+x5WDw== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id ADBB1138EC; Mon, 12 Jun 2023 08:11:05 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id GEZkKRnThmSLcAAAMHmgww (envelope-from ); Mon, 12 Jun 2023 08:11:05 +0000 From: Takashi Iwai To: alsa-devel@alsa-project.org Cc: linux-kernel@vger.kernel.org Subject: [PATCH 00/10] ALSA: Catch up MIDI 2.0 updates for UMP 1.1 Date: Mon, 12 Jun 2023 10:10:44 +0200 Message-Id: <20230612081054.17200-1-tiwai@suse.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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