Received: by 2002:a05:7412:37c9:b0:e2:908c:2ebd with SMTP id jz9csp2885641rdb; Fri, 22 Sep 2023 10:58:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHtE9VZ3Bub9UfVtHkvogtNHc1J1O8/H/ppfl4tXWq3Q95gW+r/5+YJHbrlB4jqUuPac+to X-Received: by 2002:a17:90b:89:b0:268:3ea0:7160 with SMTP id bb9-20020a17090b008900b002683ea07160mr502208pjb.0.1695405538890; Fri, 22 Sep 2023 10:58:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695405538; cv=none; d=google.com; s=arc-20160816; b=ieTIkRqCsmpawmyCNEzCxPe1+6fbN9cQv8UG7/WMeenY8OF/9Ac0OQSD3z0Fs/6Np2 SJtzDCiAdUdhixUufCZfl/yYspd6FSWc3xorzvNqFdh670UOYgSWmWU4j3P+8GjSG3Gq 1592wr7a2+607ZXW17YKi8eGKhCjx/gja9Hh+nsuRcjDav26qUMNbcmMgn0zMl/ftApP YgjAFmgJVgX+R+l+DY2/B4neldJua4riqi6RY2ehbnhCEcA3m/GaiE3dvLamUlA7SFah uV5U1XXfdZhyXjoha3u36XykwtFaMCY/ng77rDrUpv6rtBXzwu6YeleUQiQQA+d54TUA 5WxQ== 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; bh=P9lo6NrtT7bVqMoFP5TYebIw4AWc4lUSCngfC5n9hv0=; fh=sYUhk/DgUml7e9ynfs6HDtW1TpJJlcZnSAEqedSM5mg=; b=EyaqWmgkZ2ldCDJQ8tY/iLKaFq7NXeZSOriXmemxHJmpEZSO39xNLvkZJyk+TOJ69l I4/u+4jvJB36I62PFlxjSUZmwheVySD16bbvuC6goju0MqKjTaKcIKe/KGaP8VfYUahb mxqO2nV/cq32/vUf2HMhWLvCAbwgMIxtHRAxGRcOXRk+X/C8Fl+fh/WHTJewS/wniEeu +HMoAlk8mOowjv63MzELIDlD9fDMdWmFkfN8IPH5vtsfgxEjT3U5vtuSwfdci21n44ry R1ka1pk4Lm0t/qXaruE+MC8IHSUuNhkchIGyAeBmtCg2uX4xarHaCFv3aZgXUUzozV0s NjKw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=C3Rb0QSc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Return-Path: Received: from morse.vger.email (morse.vger.email. [23.128.96.31]) by mx.google.com with ESMTPS id cv21-20020a17090afd1500b0026ce877b4cbsi6218766pjb.151.2023.09.22.10.58.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Sep 2023 10:58:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 as permitted sender) client-ip=23.128.96.31; Authentication-Results: mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=C3Rb0QSc; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.31 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 (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id D436481DA5E2; Fri, 22 Sep 2023 07:29:22 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230029AbjIVO3G (ORCPT + 99 others); Fri, 22 Sep 2023 10:29:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49818 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229800AbjIVO3D (ORCPT ); Fri, 22 Sep 2023 10:29:03 -0400 Received: from mx0b-001ae601.pphosted.com (mx0b-001ae601.pphosted.com [67.231.152.168]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5E296180 for ; Fri, 22 Sep 2023 07:28:56 -0700 (PDT) Received: from pps.filterd (m0077474.ppops.net [127.0.0.1]) by mx0b-001ae601.pphosted.com (8.17.1.22/8.17.1.22) with ESMTP id 38ME9ncC026380; Fri, 22 Sep 2023 09:28:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h= from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding:content-type; s=PODMain02222019; bh=P 9lo6NrtT7bVqMoFP5TYebIw4AWc4lUSCngfC5n9hv0=; b=C3Rb0QScSzVl/qDjO fc41mqDhuTc4ELuU1yXb3m0px5+Pi9vVHBj25znr6IVQi0Zsp3UvNGRQmevn4Ya2 0wzQwkgQL9JAoXPUqi1wDJTyD2kZ0KarChH8PYLFUc7OnEeh/vBkVr/9ndEMSpFn VN00Wu628VI1zfZEuFu7KhQUJup7Ks6F/dJEobPlYmeXCMrdNHLSmuqdXh+JKULX iurOMZey6OkSNp612N/0MX1Ke5RfslqcdxWQtgRnfWMcNt1ln2gJSymuwyA1zLWl ASf1Ew8y40+xB8LrsoysEROKnIrzN7b6fFxADnr9aN7s/5h0OzzZbx7hdSPLqbru PSM8w== Received: from ediex02.ad.cirrus.com ([84.19.233.68]) by mx0b-001ae601.pphosted.com (PPS) with ESMTPS id 3t8tt7h2pv-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 22 Sep 2023 09:28:29 -0500 (CDT) 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.37; Fri, 22 Sep 2023 15:28:28 +0100 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.37 via Frontend Transport; Fri, 22 Sep 2023 15:28:28 +0100 Received: from sbinding-cirrus-dsktp2.ad.cirrus.com (unknown [198.90.238.135]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id B79683561; Fri, 22 Sep 2023 14:28:27 +0000 (UTC) From: Stefan Binding To: Mark Brown , Jaroslav Kysela , "Takashi Iwai" CC: , , , Stefan Binding Subject: [PATCH v1 0/2] ALSA: cs35l41: prevent old firmwares using unsupported commands Date: Fri, 22 Sep 2023 15:28:16 +0100 Message-ID: <20230922142818.2021103-1-sbinding@opensource.cirrus.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: IFvwBFG7EHdNpFDfh6PwYPNjvliZgZ-r X-Proofpoint-ORIG-GUID: IFvwBFG7EHdNpFDfh6PwYPNjvliZgZ-r X-Proofpoint-Spam-Reason: safe X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Fri, 22 Sep 2023 07:29:22 -0700 (PDT) Some systems use older firmware which does not support newer commands which are used to enable external boost. For those systems, we can workaround this by writing the registers directly. We can use the firmware version, stored inside cs_dsp, to determine whether or not the command is supported. To achieve this, it requires a cleanup in the api, to pass the cs_dsp struct into the function. We can also remove the redundant boolean firmware_running from the HDA driver, and use the equivalent state inside cs_dsp. This chain is based on Mark's branch, since the api change was made to the function in sound/soc/codecs/cs35l41-lib.c. Stefan Binding (2): ALSA: hda: cs35l41: Remove unnecessary boolean state variable firmware_running ALSA: cs35l41: Fix for old systems which do not support command include/sound/cs35l41.h | 2 +- sound/pci/hda/cs35l41_hda.c | 28 ++++++++++++---------------- sound/pci/hda/cs35l41_hda.h | 1 - sound/soc/codecs/cs35l41-lib.c | 6 ++++-- sound/soc/codecs/cs35l41.c | 4 ++-- 5 files changed, 19 insertions(+), 22 deletions(-) -- 2.34.1