From patchwork Sun Mar 21 03:28:28 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Takashi Sakamoto X-Patchwork-Id: 12152869 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-11.0 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, RDNS_NONE,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (unknown [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 03C21C433C1 for ; Sun, 21 Mar 2021 03:31:24 +0000 (UTC) Received: from alsa0.perex.cz (alsa0.perex.cz [77.48.224.243]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id ED2C56195F for ; Sun, 21 Mar 2021 03:31:15 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org ED2C56195F Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=sakamocchi.jp Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=alsa-devel-bounces@alsa-project.org Received: from alsa1.perex.cz (alsa1.perex.cz [207.180.221.201]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa0.perex.cz (Postfix) with ESMTPS id 862F7167C; Sun, 21 Mar 2021 04:30:24 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa0.perex.cz 862F7167C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=alsa-project.org; s=default; t=1616297474; bh=419lE4nAk419f/x+uIIXxdj7xeS7l/VEEkBejc/y9QA=; h=From:To:Subject:Date:Cc:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=ZGm6W1AZqR1l2O+oz7XLuQCuSJa9YhhSEvHFSh+w2x5rOkZoXd8V0BkPGtKCqe0ND sFkenL2MEPa7wlXKRMfr4r+wrOyBTb6BaxKCy/iTAkJdopmfdgrDFJ0J7Istkpw61B JRDbsvNo21Lfv/xe5GHNUmm1LLW6gby2GaWG5Pro= Received: from alsa1.perex.cz (localhost.localdomain [127.0.0.1]) by alsa1.perex.cz (Postfix) with ESMTP id 5A3EBF802A0; Sun, 21 Mar 2021 04:29:58 +0100 (CET) Received: by alsa1.perex.cz (Postfix, from userid 50401) id 315ABF80257; Sun, 21 Mar 2021 04:29:12 +0100 (CET) Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id 42B7EF80118 for ; Sun, 21 Mar 2021 04:28:48 +0100 (CET) DKIM-Filter: OpenDKIM Filter v2.11.0 alsa1.perex.cz 42B7EF80118 Authentication-Results: alsa1.perex.cz; dkim=pass (2048-bit key) header.d=sakamocchi.jp header.i=@sakamocchi.jp header.b="wTn0L6sC"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="mdcZ/9Y3" Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.west.internal (Postfix) with ESMTP id D53111841; Sat, 20 Mar 2021 23:28:36 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Sat, 20 Mar 2021 23:28:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sakamocchi.jp; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; s=fm1; bh=5XnE2W69Ko+I1qLA3vDQKI5jY2 797aw0KxiXx0x05Qk=; b=wTn0L6sCZdDBYannqRorwD6dwwQop4aHKIK4U5nwoJ vYzGOVV7AxcenLoX2NQLSpTbgUYBIFeFyvI2HuX5BEyIYC97vqkQgukEXNy4T8pF o4meZZxZLCffUNQc0Q2xLzJKiWBBmo1MYryALKnUXbkuvwTdDqzDIVDCbhXkYuCn XvlQvzpHyP4gq1Xi6sY1EZ1+/RtvHGgFgtE1i/s271fTgTfVkX3GpoixzPrUKZu1 wEX/lyhLwEp+2trU453zvPetu9qB/Op1ESvvMKHfO31u3Ke1Kjt/dyt5YdXadqxI 4ygO7bh3XYMAknVXws9F8dhYCL/Pw/9wgFvz/zwWBfjA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :message-id:mime-version:subject:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=5XnE2W69Ko+I1qLA3 vDQKI5jY2797aw0KxiXx0x05Qk=; b=mdcZ/9Y36pe02+eRR3g1i8NGnPjdYPkAh XmreGvyxePn7wL92ZDYjgbXBq+7PKj+oGgctu3VrjROKr5ULb+SiAEoakb7LdUsL o7aXa854a7Z6+pVrSQaSTJ1SEXrpWyoqvF6ExweyECuPtpPVbwQk7perWx5ungz2 5HbkYYupPHsHAEW72LsKWQCGZcHVfUgNSXSCcrHBjgsXQvYdc/qcbKFBbhaRKSlu JZbhvqQ6vYByEBHAan6Cw/ArGKGo2iM8UTkFRlTmC5RBav4AU/77d/O8grMR+F60 qDQXhVvJ0ReluJrgFwQFPPh7q0OUlGnJdlPSKIZPCt6C4t+23Pvhg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduledrudeguddgieduucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgggfestdekredtre dttdenucfhrhhomhepvfgrkhgrshhhihcuufgrkhgrmhhothhouceoohdqthgrkhgrshhh ihesshgrkhgrmhhotggthhhirdhjpheqnecuggftrfgrthhtvghrnhepudejteelhfdttd ekgfdtueeilefhgfetjeejheekgeevuddvveegieehueeukeejnecukfhppedugedrfedr ieehrddujeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrh homhepohdqthgrkhgrshhhihesshgrkhgrmhhotggthhhirdhjph X-ME-Proxy: Received: from workstation.flets-east.jp (ae065175.dynamic.ppp.asahi-net.or.jp [14.3.65.175]) by mail.messagingengine.com (Postfix) with ESMTPA id 6BF4E240409; Sat, 20 Mar 2021 23:28:34 -0400 (EDT) From: Takashi Sakamoto To: tiwai@suse.de Subject: [PATCH 0/3] ALSA: bebob: enable MIDI message transmission for multiple ports Date: Sun, 21 Mar 2021 12:28:28 +0900 Message-Id: <20210321032831.340278-1-o-takashi@sakamocchi.jp> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Cc: alsa-devel@alsa-project.org, clemens@ladisch.de X-BeenThere: alsa-devel@alsa-project.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: "Alsa-devel mailing list for ALSA developers - http://www.alsa-project.org" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" Hi, Although below models supported by ALSA bebob driver have multiple MIDI ports, the driver just adds one pair of MIDI ports for ALSA Rawmidi interface: * M-Audio ProjectMix I/O * ESI Quatafire 610 The cause comes from two bugs: * The driver registers the number of MIDI conformant data channels into AM824 data block processing layer, instead of the number of MIDI ports. * For Quatafire, the driver counts plugs with MIDI type, however the number of physical MIDI ports is expressed in the number of channels on the plugs. This patchset enables MIDI message transmission for multiple ports. Takashi Sakamoto (3): ALSA: bebob: code refactoring for stream format detection ALSA: bebob: detect the number of available MIDI ports ALSA: bebob: enable to deliver MIDI messages for multiple ports sound/firewire/bebob/bebob.h | 2 + sound/firewire/bebob/bebob_command.c | 36 ++++++ sound/firewire/bebob/bebob_stream.c | 163 ++++++++++++++------------- 3 files changed, 120 insertions(+), 81 deletions(-)