Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp855883pxb; Wed, 6 Apr 2022 02:07:28 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyfnMqAAVCutGNc5RsFjDSrFDNncHVAy8U0F8QaCY4dar2Vy+pbr5kSCuDfu/BfpdxDIb51 X-Received: by 2002:a63:fd53:0:b0:386:66d:b40c with SMTP id m19-20020a63fd53000000b00386066db40cmr6278892pgj.266.1649236047919; Wed, 06 Apr 2022 02:07:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1649236047; cv=none; d=google.com; s=arc-20160816; b=kCOgUn+d0nmKSRxH/DwY4FMuayy/YG3YDrzbz/OowI9RqYBuGFhktc1kPcvDXii2Cw iXkYpJ7oXoAxu3/8dEzPM0ptlaFrtGkJOJLutsCIQICo7V+j2xxEbEvPOzX6KH29TS+P gWeDQ285DFdhJM4M6aKIoMhOhNcfWXTQ/90gLB/Afu1CYTn5M5GIDw/u7HgzggTuMOV+ nTKiakgZZ3nMOphFe92AJYR5YP7V5YQ+Ti2gLU5NI0kXrvpQyEFx+7EjpIJMTN368Zj6 6HD3eUUy6C3FBNEgaVdc37uvACngsJMSsF5SpHlkHjeULihdigMxxZTzqk3feUvjIeZJ biqQ== 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=ZJUCHnXSrdphohQhXI9tFDsMiCYn22rYvD+wAfcCP6w=; b=dsfvOmJt1Xk2mVraL+8tDPdqRlzzgcV7YG8OpN8bwo9ySfyQjKbeaimbCRl+3ByBMK AKaUybiV5aQ/ikG5jjAg8NopBIDgp6diIcltHi793uSfB4g7F1Sj+i9bZNpe+14wRIG1 QO2lj6RAW8EXyCuQsxpMtDUbaZm/p7qYBbSHsXXJatsJeu8U7nPBd2NDyor/olOjw0FJ LmVvVu9H6xSy875iAmmao6m4OUFoerNFCQOwRvKyOWRychyseglutpkzIOsp1kf+zbQ6 jov6Lt+FKowYNzIuS5iZss1ryXckx+/IVFGzNqgV+FrBevHbtRvNdmieI+U80UzvLUIu wIwA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="b/o7ZQ2O"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1: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 lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id q14-20020a17090311ce00b00155d894798fsi16234755plh.362.2022.04.06.02.07.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 06 Apr 2022 02:07:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b="b/o7ZQ2O"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1: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: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id ED2BF4F6832; Wed, 6 Apr 2022 00:25:01 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344305AbiDEUOA (ORCPT + 99 others); Tue, 5 Apr 2022 16:14:00 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44800 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1349103AbiDEKuO (ORCPT ); Tue, 5 Apr 2022 06:50:14 -0400 Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DACA29D0DA; Tue, 5 Apr 2022 03:27:39 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 817B8B81C8A; Tue, 5 Apr 2022 10:27:38 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id C2A2AC385A2; Tue, 5 Apr 2022 10:27:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1649154457; bh=jJ0TtuEEywyViDv3IsnSOZkDwY9Ap0CtXdsjRq+E8iY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=b/o7ZQ2OAqKazCWOe343GrkqNP6vtu6djcXVgLwmZbDha6p/UbIT4iIgY541PwozK f+GuRh7zJTlQdIxSpD2bvhwWIDlNWnmjQYakGgJ481s7boErfbSxOHUEO+kCrYVVxW c3xlCXCUI1ZJlVFiN9kyPXlzjsngVDiBcy3pNUeA= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= , Cezary Rojewski , Pierre-Louis Bossart , Mark Brown Subject: [PATCH 5.10 586/599] ASoC: topology: Allow TLV control to be either read or write Date: Tue, 5 Apr 2022 09:34:40 +0200 Message-Id: <20220405070316.280008747@linuxfoundation.org> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220405070258.802373272@linuxfoundation.org> References: <20220405070258.802373272@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no 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 From: Amadeusz Sławiński commit feb00b736af64875560f371fe7f58b0b7f239046 upstream. There is no reason to force readwrite access on TLV controls. It can be either read, write or both. This is further evidenced in code where it performs following checks: if ((k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ) && !sbe->get) return -EINVAL; if ((k->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE) && !sbe->put) return -EINVAL; Fixes: 1a3232d2f61d ("ASoC: topology: Add support for TLV bytes controls") Signed-off-by: Amadeusz Sławiński Reviewed-by: Cezary Rojewski Reviewed-by: Pierre-Louis Bossart Link: https://lore.kernel.org/r/20220112170030.569712-3-amadeuszx.slawinski@linux.intel.com Signed-off-by: Mark Brown Signed-off-by: Greg Kroah-Hartman --- sound/soc/soc-topology.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/sound/soc/soc-topology.c +++ b/sound/soc/soc-topology.c @@ -578,7 +578,8 @@ static int soc_tplg_kcontrol_bind_io(str if (le32_to_cpu(hdr->ops.info) == SND_SOC_TPLG_CTL_BYTES && k->iface & SNDRV_CTL_ELEM_IFACE_MIXER - && k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE + && (k->access & SNDRV_CTL_ELEM_ACCESS_TLV_READ + || k->access & SNDRV_CTL_ELEM_ACCESS_TLV_WRITE) && k->access & SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK) { struct soc_bytes_ext *sbe; struct snd_soc_tplg_bytes_control *be;