Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp3133647pxj; Mon, 17 May 2021 18:40:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyYlZC1RONQQZKbd/kvz3GzNOjXdl/Mqh5iLb1m3n/iPTo6Rn/tEczQDnLZxr3YKB9MYtJg X-Received: by 2002:a02:3505:: with SMTP id k5mr2849798jaa.123.1621302017329; Mon, 17 May 2021 18:40:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621302017; cv=none; d=google.com; s=arc-20160816; b=wruym72bj/Hg9s0fiTxaqFslxdrRB95SzChJ8X0cEPm6IUTg1lE2rAUrCVLUum/wkz j0qbrxThI/BUcJzENRhgJZ+n+wVAuXbT9K0pmyC8EjhkmdAU1AEyF/DYUb6z6Xqs5jXM cH1zVaUyPIt2460sNacSATWV4na+dVuScoGTW3RdquhdjVcxhZyAvYOqrHwKJMkWk7p2 2DyY2YoE9C9EheQ++q3cUnzOnLyujBmdGPyhyuzcSdIUhdnNXbic1tXVFUBI0PECo+AY YLToJA8ygTcx7EHQLPgMNG47ndXD2H1pxsaeQhm8Yfuy+aCfmlZ97CrBWYrmNB9fWSIC gBrw== 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 :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=MhHaQ5xoJLmyDEapvdcbH8RFoYTKCrHcn77qCEG0m7A=; b=N2p+mxIU45xANlujWNfyUCZd6pWc3WGfHHMrdaPdheilLfXzv5cSW+sjQ5qq1wIKGd mXKeQ1EuljIpn1bNniKEBxTyUaWXMt8VoMq9KXxEdeI5xrIGH4I2XqFGqP9lmO2wnstz DSF8jGUebDe+S27jsli704Ku8Tbk3i0GUxlfKBnYbkYPkkeVXQnwAQtYyI7ngfihlcpI 4l0zW/LAdIs/1xAO56w47yaC6ytAlVkrX/Abw2c981hAQQ12tMOQj9VK9Dn6NQ3I9HkE 6BSbZxVm8zzlKTs8zyvDix9wzkI5TrSCWcU62xIhGKyfo5h8rwfumKnOMi150g7PJS47 PZeQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=BZgEht+C; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m3si1960304ilj.111.2021.05.17.18.39.56; Mon, 17 May 2021 18:40:17 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=BZgEht+C; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240873AbhEQOfV (ORCPT + 99 others); Mon, 17 May 2021 10:35:21 -0400 Received: from mail.kernel.org ([198.145.29.99]:40160 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240102AbhEQOaC (ORCPT ); Mon, 17 May 2021 10:30:02 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id A6F10617C9; Mon, 17 May 2021 14:15:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1621260909; bh=F+pne/Hjxiv7x9JXuhGkN38R9E5g7VxohpNgBfzPr/A=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=BZgEht+CKcp+1CoqA1uzj6Dhc26PiSQMsqIHKwSSTZ3hNWCJSbtRJms0BhBRYqxvD 6ooyVQHs6Kgz/Qf9yL2nHGYtYMD0/5YUjaViccg6cHuotmLXHs02yYNYPqym9fC9ng YM1z6qcnva85Z+3xJ29KiJwnkJEHB0z1kJKB8z5A= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Takashi Sakamoto , Takashi Iwai , Sasha Levin Subject: [PATCH 5.11 032/329] ALSA: bebob: enable to deliver MIDI messages for multiple ports Date: Mon, 17 May 2021 15:59:03 +0200 Message-Id: <20210517140303.126927386@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210517140302.043055203@linuxfoundation.org> References: <20210517140302.043055203@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Takashi Sakamoto [ Upstream commit d2b6f15bc18ac8fbce25398290774c21f5b2cd44 ] Current implementation of bebob driver doesn't correctly handle the case that the device has multiple MIDI ports. The cause is the number of MIDI conformant data channels is passed to AM824 data block processing layer. This commit fixes the bug. Signed-off-by: Takashi Sakamoto Link: https://lore.kernel.org/r/20210321032831.340278-4-o-takashi@sakamocchi.jp Signed-off-by: Takashi Iwai Signed-off-by: Sasha Levin --- sound/firewire/bebob/bebob_stream.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/sound/firewire/bebob/bebob_stream.c b/sound/firewire/bebob/bebob_stream.c index bbae04793c50..c18017e0a3d9 100644 --- a/sound/firewire/bebob/bebob_stream.c +++ b/sound/firewire/bebob/bebob_stream.c @@ -517,20 +517,22 @@ int snd_bebob_stream_init_duplex(struct snd_bebob *bebob) static int keep_resources(struct snd_bebob *bebob, struct amdtp_stream *stream, unsigned int rate, unsigned int index) { - struct snd_bebob_stream_formation *formation; + unsigned int pcm_channels; + unsigned int midi_ports; struct cmp_connection *conn; int err; if (stream == &bebob->tx_stream) { - formation = bebob->tx_stream_formations + index; + pcm_channels = bebob->tx_stream_formations[index].pcm; + midi_ports = bebob->midi_input_ports; conn = &bebob->out_conn; } else { - formation = bebob->rx_stream_formations + index; + pcm_channels = bebob->rx_stream_formations[index].pcm; + midi_ports = bebob->midi_output_ports; conn = &bebob->in_conn; } - err = amdtp_am824_set_parameters(stream, rate, formation->pcm, - formation->midi, false); + err = amdtp_am824_set_parameters(stream, rate, pcm_channels, midi_ports, false); if (err < 0) return err; -- 2.30.2