Message ID | 20230213145008.1215849-2-sbinding@opensource.cirrus.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp2388158wrn; Mon, 13 Feb 2023 06:54:17 -0800 (PST) X-Google-Smtp-Source: AK7set8pGX6B4dz16z5uaAwXMp6d1xgVnXT3EM9wX4jjm1f0fM5xZomBaT872OIXW5SUfAa6Wjwe X-Received: by 2002:a05:6a20:7f92:b0:bc:9007:e53 with SMTP id d18-20020a056a207f9200b000bc90070e53mr32716267pzj.0.1676300057073; Mon, 13 Feb 2023 06:54:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1676300057; cv=none; d=google.com; s=arc-20160816; b=S30Hrt+i7v8dyb0Si4HGr36UGjCh6pznZ/YMqD/mBMXIh315LRcThe6MCEgnXj/irf mpCQYY9oYRYour9G64qdqjH7V9iS0O0kMJgp5Otx7odJ4ChBXOOF1sjIa1YiJnFtEHSW iWU4l432emdp+gQLGMg0EMFrN1ry/4A8jsjMfWa3IUpBsQmguWnYSuHCQyjVFoXA/v5S QJefMoik5Z7BEjZSuY99pFIsQ4+F+HpPxLfujXK+2Mi4qyXpRJ0SxdJPAond3Iy2pGMh amcu3jzer4PX8wYHLv48dlynsqq5iDKCsPYeD0zoQileV/jWQp/nAujmXvjay3KukKxI HaEw== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=JIw8mwY5Md9J5BihoIWcs2nfJGbKKEYCYk7xpXo8uDM=; b=uOliBbMLmu6LdNeS9X8vqVjG8ENeuv/2AkS6+Wo5sdL4GIxfipfyGwdrelXmdVDLA5 mrZJk18ARqpkad7wQo/JQOrSpLKWftNCJfCooCqIuOHbJwHdaICJafotX1l4a2YmaYpF aD517ToZhC2ZpCiVQFQErmiHIy1t/X9L0msGgm7ZxAtHClkXyC0oJYYSftq1B2SotoXN ETqZ91RIZSM8AYOWTLKSX0LHm+GuV0eHljUcst0u2nX5IG5+mAxxdMAMIbsPH/U0gVCf h92I9V4ecP6d/eMa1DzXeItrLatK316mA62KzuLfR2O5YBJKCqUt85V4PbrIQMYcukBh CREQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=KwtavNN8; 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=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q4-20020a17090a9f4400b00233d4df537asi5648290pjv.158.2023.02.13.06.54.04; Mon, 13 Feb 2023 06:54:17 -0800 (PST) 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=@cirrus.com header.s=PODMain02222019 header.b=KwtavNN8; 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=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230480AbjBMOuk (ORCPT <rfc822;tebrre53rla2o@gmail.com> + 99 others); Mon, 13 Feb 2023 09:50:40 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43556 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230423AbjBMOuc (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Mon, 13 Feb 2023 09:50:32 -0500 Received: from mx0b-001ae601.pphosted.com (mx0a-001ae601.pphosted.com [67.231.149.25]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 55B731BAFE for <linux-kernel@vger.kernel.org>; Mon, 13 Feb 2023 06:50:29 -0800 (PST) Received: from pps.filterd (m0077473.ppops.net [127.0.0.1]) by mx0a-001ae601.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 31D5UX5D028354; Mon, 13 Feb 2023 08:50:13 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=PODMain02222019; bh=JIw8mwY5Md9J5BihoIWcs2nfJGbKKEYCYk7xpXo8uDM=; b=KwtavNN8opSlhFVCAxvQt7gDRvMENHJyrOOr5yVcbih+xawgGpVKnU/BRoHaOgzm42Yq /vAuv8wCz7MtEFz3PmDiv4Qs2tIi+uLH6PyTQcADOXz3MHg00F1Ke2bYS91YyFP27cB/ SDxx1hrHiF7pyl+j/+5ODoR8gMSNBzIE+8xzAJwMPO9Svj5Lq3D5mzJTuRCqQPTv23bD +GSDlaFno32Eut1ibghvGGtg+tErifXPGHNpdRuV4wuvarBppJPt9ONLNOrM50U87qAL Y6xU3VGsTuPrqoSe2snzM2qfsvPatInsJbTHPwmblIGJv+PTTM0ng2M9mcNnEkE2TAZr dg== Received: from ediex02.ad.cirrus.com ([84.19.233.68]) by mx0a-001ae601.pphosted.com (PPS) with ESMTPS id 3np9a72amh-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 13 Feb 2023 08:50:13 -0600 Received: from ediex02.ad.cirrus.com (198.61.84.81) by ediex02.ad.cirrus.com (198.61.84.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.21; Mon, 13 Feb 2023 08:50:11 -0600 Received: from ediswmail.ad.cirrus.com (198.61.86.93) by anon-ediex02.ad.cirrus.com (198.61.84.81) with Microsoft SMTP Server id 15.2.1118.21 via Frontend Transport; Mon, 13 Feb 2023 08:50:11 -0600 Received: from sbinding-cirrus-dsktp2.ad.cirrus.com (unknown [198.90.202.160]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id D7C0411AA; Mon, 13 Feb 2023 14:50:10 +0000 (UTC) From: Stefan Binding <sbinding@opensource.cirrus.com> To: Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com> CC: <alsa-devel@alsa-project.org>, <linux-kernel@vger.kernel.org>, <patches@opensource.cirrus.com>, Vitaly Rodionov <vitalyr@opensource.cirrus.com>, Stefan Binding <sbinding@opensource.cirrus.com> Subject: [PATCH v2 1/3] ALSA: hda: cs35l41: Correct error condition handling Date: Mon, 13 Feb 2023 14:50:06 +0000 Message-ID: <20230213145008.1215849-2-sbinding@opensource.cirrus.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230213145008.1215849-1-sbinding@opensource.cirrus.com> References: <20230213145008.1215849-1-sbinding@opensource.cirrus.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: Gg-lYgEfW_18MPAlBlaKj0GT02Ieh2fr X-Proofpoint-ORIG-GUID: Gg-lYgEfW_18MPAlBlaKj0GT02Ieh2fr X-Proofpoint-Spam-Reason: safe X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_PASS 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1757728008471541925?= X-GMAIL-MSGID: =?utf-8?q?1757728008471541925?= |
Series |
Fixes and Improvements for CS35L41 HDA
|
|
Commit Message
Stefan Binding
Feb. 13, 2023, 2:50 p.m. UTC
From: Vitaly Rodionov <vitalyr@opensource.cirrus.com> Function cs_dsp_coeff_write_ctrl() can return 3 possible values: 0 - no change, 1 - value has changed and -1 - error, so positive value is not an error. Fixes: 7406bdbc4fb8 ("ASoC: wm_adsp: Return whether changed when writing controls") Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com> Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> --- sound/pci/hda/hda_cs_dsp_ctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Comments
On 13/2/23 14:50, Stefan Binding wrote: > From: Vitaly Rodionov <vitalyr@opensource.cirrus.com> > > Function cs_dsp_coeff_write_ctrl() can return 3 possible values: > 0 - no change, 1 - value has changed and -1 - error, so positive value > is not an error. > Fixes: 7406bdbc4fb8 ("ASoC: wm_adsp: Return whether changed when writing controls") > > Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com> > Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> > --- > sound/pci/hda/hda_cs_dsp_ctl.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/sound/pci/hda/hda_cs_dsp_ctl.c b/sound/pci/hda/hda_cs_dsp_ctl.c > index 5433f6227ac9..463ca06036bf 100644 > --- a/sound/pci/hda/hda_cs_dsp_ctl.c > +++ b/sound/pci/hda/hda_cs_dsp_ctl.c > @@ -218,10 +218,10 @@ int hda_cs_dsp_write_ctl(struct cs_dsp *dsp, const char *name, int type, > cs_ctl = cs_dsp_get_ctl(dsp, name, type, alg); > ret = cs_dsp_coeff_write_ctrl(cs_ctl, 0, buf, len); > mutex_unlock(&dsp->pwr_lock); > - if (ret) > + if (ret < 0) > return ret; > > - if (cs_ctl->flags & WMFW_CTL_FLAG_SYS) > + if (ret == 0 || (cs_ctl->flags & WMFW_CTL_FLAG_SYS)) > return 0; > > ctl = cs_ctl->priv; Hi Takashi Could you queue this patch as a bugfix for 6.2 please? The cs_dsp patch to return 1 for changed has gone into 6.2 but we missed that this hda_cs_dsp code would break.
On Sun, 26 Feb 2023 12:16:43 +0100, Richard Fitzgerald wrote: > > On 13/2/23 14:50, Stefan Binding wrote: > > From: Vitaly Rodionov <vitalyr@opensource.cirrus.com> > > > > Function cs_dsp_coeff_write_ctrl() can return 3 possible values: > > 0 - no change, 1 - value has changed and -1 - error, so positive value > > is not an error. > > Fixes: 7406bdbc4fb8 ("ASoC: wm_adsp: Return whether changed when writing controls") > > > > Signed-off-by: Vitaly Rodionov <vitalyr@opensource.cirrus.com> > > Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com> > > --- > > sound/pci/hda/hda_cs_dsp_ctl.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/sound/pci/hda/hda_cs_dsp_ctl.c b/sound/pci/hda/hda_cs_dsp_ctl.c > > index 5433f6227ac9..463ca06036bf 100644 > > --- a/sound/pci/hda/hda_cs_dsp_ctl.c > > +++ b/sound/pci/hda/hda_cs_dsp_ctl.c > > @@ -218,10 +218,10 @@ int hda_cs_dsp_write_ctl(struct cs_dsp *dsp, const char *name, int type, > > cs_ctl = cs_dsp_get_ctl(dsp, name, type, alg); > > ret = cs_dsp_coeff_write_ctrl(cs_ctl, 0, buf, len); > > mutex_unlock(&dsp->pwr_lock); > > - if (ret) > > + if (ret < 0) > > return ret; > > - if (cs_ctl->flags & WMFW_CTL_FLAG_SYS) > > + if (ret == 0 || (cs_ctl->flags & WMFW_CTL_FLAG_SYS)) > > return 0; > > ctl = cs_ctl->priv; > > Hi Takashi > > Could you queue this patch as a bugfix for 6.2 please? > The cs_dsp patch to return 1 for changed has gone into 6.2 > but we missed that this hda_cs_dsp code would break. Could you just request the cherry-pick of the necessary fix commits via stable@vger.kernel.org (with Cc to Greg / Sasha)? I've been still traveling in this week, so it's better for you doing that by yourself. thanks, Takashi
diff --git a/sound/pci/hda/hda_cs_dsp_ctl.c b/sound/pci/hda/hda_cs_dsp_ctl.c index 5433f6227ac9..463ca06036bf 100644 --- a/sound/pci/hda/hda_cs_dsp_ctl.c +++ b/sound/pci/hda/hda_cs_dsp_ctl.c @@ -218,10 +218,10 @@ int hda_cs_dsp_write_ctl(struct cs_dsp *dsp, const char *name, int type, cs_ctl = cs_dsp_get_ctl(dsp, name, type, alg); ret = cs_dsp_coeff_write_ctrl(cs_ctl, 0, buf, len); mutex_unlock(&dsp->pwr_lock); - if (ret) + if (ret < 0) return ret; - if (cs_ctl->flags & WMFW_CTL_FLAG_SYS) + if (ret == 0 || (cs_ctl->flags & WMFW_CTL_FLAG_SYS)) return 0; ctl = cs_ctl->priv;